Frage

Ich schreibe eine Anwendung, die Informationen von am xml plist im Bündel beim Start liest. Die Informationen in dem plist wurden durch viele Tage Arbeit zusammengestellt, und ich möchte, um sicherzustellen, dass sie nicht von einer anderen Partei nach der Verteilung leicht aus dem App-Bundle extrahiert werden. Gibt es eine Möglichkeit xml plists zu sichern oder zu verschlüsseln, dass man innerhalb der App Bundle enthält?

Jede Hilfe wäre sehr geschätzt bitte.

War es hilfreich?

Lösung

Es gibt keine integrierte Verschlüsselungsfunktion in plist. Viele Menschen behandelt die Kompression als Verschlüsselung.

Hier ist, was ich tun würde,

  1. Make-up einen Verschlüsselungsschlüssel.
  2. schreibt ein kleines Programm, um den plist in eine binäre Datei mit SecKeyEncrypt() zu verschlüsseln.
  3. Legen Sie die Binärdatei im Bündel.
  4. In der App, versteckt den Schlüssel irgendwo. Zum Beispiel speichern sie als Stücke, so dass es nicht leicht ist, von einer Sicherung zu finden.
  5. Wenn Sie die App beim Start, die Binärdatei aus Bündel lesen, entschlüsseln sie mit SecKeyDecrypt() mit dem Schlüssel und speichern Sie die unverschlüsselt im Speicher.
  6. Der Klartext ist der plist und laden Sie den plist aus dem Speicher.

Dies wird immer noch als Verschleierung, weil Schlüssel in Ihrem Bündel vorhanden sind, aber es wird schwer genug sein, die meist Gelegenheits-Hacker abzuschrecken.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top