Die Sicherheitsarchitektur von Cryptile, Schicht für Schicht
Cryptile verschlüsselt jede Datei, jedes Vorschaubild und jeden Index mit AES-256-GCM, mit Schlüsseln, die auf Ihrem Telefon aus dem gezeichneten Muster entstehen. Es gibt kein Konto und keinen Server, und der Entwickler hält nie Schlüssel.
Die einfache Zusammenfassung steht auf der Sicherheitsseite.
Was sollte ich wissen?
- Ihr Muster ist die Quelle jedes Schlüssels. Ohne es wird nichts Lesbares gespeichert.
- Größen und Tresoranzahl werden verschleiert. Dateien werden aufgefüllt, und Köder-Plätze verbergen, wie viele Tresore es gibt.
- Sie können es prüfen. Der Verschlüsselungskern ist veröffentlicht, sodass ihn jeder prüfen kann (Source-available-Lizenz, Quelltext einsehbar), mit Bedrohungsmodell und Testvektoren: github.com/jasonbrelsford/cryptile-core.
Wie wird aus einem Muster ein Schlüssel?
- Das Muster wird als Rastergröße geschrieben, gefolgt von den berührten Punkten in ihrer Reihenfolge.
- Es wird mit einem 32-Byte-Gerätegeheimnis gemischt, das im Schlüsselbund des iPhone nur für dieses Gerät liegt.
- PBKDF2-HMAC-SHA512 läuft 600.000-mal darüber. Jeder Rateversuch kostet so viel Arbeit.
- HKDF-SHA256 teilt das Ergebnis in einen Suchschlüssel und einen Hüllschlüssel.
- Der Suchschlüssel benennt die Indexdatei des Tresors. Der Hüllschlüssel öffnet sie.
Im Index liegt der zufällige 256-Bit-Hauptschlüssel des Tresors. HKDF leitet daraus getrennte Unterschlüssel für Dateien, Vorschaubilder und den Index ab. Kein Schlüssel wird für zwei Zwecke verwendet.
Wie werden Dateien verschlüsselt?
Kleine Objekte wie Vorschaubilder und der Index werden in einem Stück mit AES-256-GCM und einer zufälligen Nonce versiegelt.
Große Dateien nutzen ein STREAM-Format in Blöcken von 1 MB. Jeder Block hat seine eigene Nonce und hält seine Position fest und ob er der letzte ist. Werden Blöcke abgeschnitten, umsortiert oder vertauscht, schlägt die Entschlüsselung fehl.
GCM authentifiziert außerdem jeden Header, daher wird eine veränderte Datei abgelehnt statt angezeigt.
Wie werden Größen und Tresoranzahl verborgen?
Jedes kleine Objekt und jeder letzte Block einer Datei wird auf ein Vielfaches von 64 KiB aufgefüllt. Wer kopiert, sieht ungefähre Größen, keine genauen.
Es gibt keine Tresorliste. Die App hält mindestens 8 Plätze in Indexform bereit, echte und Köder, und erneuert die Köder bei jedem Schreibvorgang zufällig. Ein Muster, das keinen Platz benennt, öffnet einen leeren Tresor.
Wie funktioniert die Wiederherstellung?
Jeder Tresor erhält eine Wiederherstellungsphrase mit 9 Wörtern, das sind 96 Bit Zufall. Sie öffnet eine separate Wiederherstellungskopie des Tresors, versiegelt unter einem Schlüssel, der aus der Phrase entsteht.
Das iCloud-Backup spiegelt die verschlüsselten Dateien unverändert. Das Gerätegeheimnis ist standardmäßig nicht darin, daher lassen sich mit einem Backup allein keine Muster durchprobieren.
Was ist verschlüsselt und was nicht?
Verschlüsselt: Fotos, Videos, Dateien, Notizen, Vorschaubilder, Namen, Ordner, Favoriten, erkannter Text und Fotostandorte. Die kleine Datei, die Köder und die Zähler des kostenlosen Tarifs verwaltet, ist mit einem Geräteschlüssel versiegelt.
Nicht von Cryptile verschlüsselt:
- Einstellungen. Die Zeit der automatischen Sperre, die Sortierung und der Backup-Schalter enthalten keine Geheimnisse.
- Geteilte Objekte, die auf das Hinzufügen warten. Sie liegen unter dem Dateischutz von iOS, bis Sie einen Tresor öffnen.
- Die Gesamtgröße des Containers und die Schreibzeiten. Ein Tresor mit 10 GB sieht nicht wie einer mit 10 MB aus.
- Alles, was Sie exportieren. Eine in Fotos oder Dateien gesicherte Kopie liegt außerhalb des Tresors.
Wovor schützt das?
- Jemanden, der die Dateien der App ohne Ihren Schlüsselbund kopiert. Er erhält Chiffretext und kann keine Muster durchprobieren.
- Apple oder ein Datenleck bei Apple. iCloud enthält Chiffretext und keine Schlüssel.
- Manipulation. Veränderte oder umsortierte Daten lassen sich nicht entschlüsseln.
- Uns. Wir betreiben keinen Server und halten keine Schlüssel, daher können wir den Zugang nicht zurücksetzen.
Wovor schützt das nicht?
- Kurze Muster. Ein Muster ist schwächer als eine Passphrase. Mit Ihren Dateien und Ihrem Schlüsselbund ist ein Muster aus 6 Punkten auf einem 4×4-Raster auf einer GPU in Minuten geknackt. Nutzen Sie 8 oder mehr Punkte.
- Schadsoftware auf einem entsperrten Telefon. Code, der den Speicher liest, während ein Tresor offen ist, liegt außerhalb der Reichweite jeder App.
- Jemanden, der Ihnen beim Zeichnen zusieht. Zeichnen Sie dort, wo niemand Ihre Hand sehen kann.
- Den Verlust von Telefon und Phrase. Der Tresor ist weg. Es gibt kein Zurücksetzen.
Das Panikmuster in Plus zerstört das Gerätegeheimnis, sodass sich kein Tresor auf dem Telefon mehr öffnet, bis er wiederhergestellt ist.