Cryptile

Arhitectura de securitate Cryptile, strat cu strat

Actualizat

Cryptile criptează fiecare fișier, miniatură și index cu AES-256-GCM, folosind chei generate pe telefonul dumneavoastră din modelul pe care îl desenați. Nu există cont și nici server, iar dezvoltatorul nu deține niciodată chei.

Descărcați Cryptile din App Store

Rezumatul simplu se găsește pe pagina de securitate.

Ce trebuie să știu?

  • Modelul dumneavoastră este sursa fiecărei chei. Fără el, nu se stochează nimic care să poată fi citit.
  • Dimensiunile și numărul de seifuri sunt estompate. Fișierele sunt completate (padding), iar sloturile momeală ascund câte seifuri există.
  • Puteți verifica singur. Nucleul de criptare este publicat pentru audit (cod sursă disponibil), împreună cu un model de amenințări și vectori de test: github.com/jasonbrelsford/cryptile-core.

Cum devine un model o cheie?

  1. Modelul este scris ca dimensiunea grilei, urmată de celulele atinse, în ordine.
  2. Este combinat cu un secret de dispozitiv de 32 de octeți, păstrat în Keychain-ul iPhone-ului, doar pentru acest dispozitiv.
  3. PBKDF2-HMAC-SHA512 rulează de 600.000 de ori peste rezultat. Fiecare încercare costă tot atâta muncă de calcul.
  4. HKDF-SHA256 împarte rezultatul într-o cheie de căutare și o cheie de învelire.
  5. Cheia de căutare dă numele fișierului index al seifului. Cheia de învelire îl deschide.

În interiorul indexului se află cheia principală aleatorie de 256 de biți a seifului. HKDF derivă din ea subchei separate pentru fișiere, miniaturi și index. Nicio cheie nu este folosită în două scopuri.

Cum sunt criptate fișierele?

Elementele mici, precum miniaturile și indexul, sunt sigilate dintr-o dată cu AES-256-GCM și un nonce aleatoriu.

Fișierele mari folosesc un format STREAM, în blocuri de 1 MB. Fiecare bloc are propriul nonce și își înregistrează poziția și dacă este ultimul. Dacă blocurile sunt tăiate, reordonate sau schimbate între ele, decriptarea eșuează.

GCM autentifică și fiecare antet, astfel încât un fișier modificat este respins, nu afișat.

Cum sunt ascunse dimensiunile și numărul de seifuri?

Fiecare bloc mic de date și fiecare bloc final de fișier sunt completate până la un multiplu de 64 KiB. Cine copiază fișierele vede dimensiuni aproximative, nu exacte.

Nu există nicio listă de seifuri. Aplicația păstrează cel puțin 8 sloturi în formă de index, reale și momeală, și reînnoiește aleatoriu sloturile momeală la fiecare scriere. Un model care nu corespunde niciunui slot deschide un seif gol.

Cum funcționează recuperarea?

Fiecare seif primește o frază de recuperare din 9 cuvinte, adică 96 de biți de aleatoriu. Aceasta deschide o copie de recuperare separată a seifului, sigilată cu o cheie generată din frază.

Copia de rezervă iCloud reflectă fișierele criptate exact așa cum sunt. Secretul de dispozitiv nu este inclus în ea în mod implicit, deci o copie de rezervă singură nu poate fi folosită pentru a ghici modele.

Ce este criptat și ce nu?

Criptate: fotografii, videoclipuri, fișiere, notițe, miniaturi, nume, dosare, favorite, text recunoscut și locațiile fotografiilor. Fișierul mic care ține evidența sloturilor momeală și a contoarelor planului gratuit este sigilat cu o cheie a dispozitivului.

Necriptate de Cryptile:

  • Setările. Timpul de blocare automată, ordinea de sortare și comutatorul de copie de rezervă nu conțin secrete.
  • Elementele partajate care așteaptă să fie adăugate. Ele rămân sub protecția fișierelor din iOS până când deschideți un seif.
  • Dimensiunea totală a containerului și momentele scrierilor. Un seif de 10 GB nu arată ca unul de 10 MB.
  • Tot ce exportați. O copie salvată în Fotografii sau în Fișiere se află în afara seifului.

Împotriva a ce protejează?

  • Cineva care copiază fișierele aplicației fără Keychain-ul dumneavoastră. Obține text criptat și nu poate încerca modele.
  • Apple sau o breșă la Apple. iCloud conține text criptat, nu chei.
  • Modificarea. Datele schimbate sau reordonate nu mai pot fi decriptate.
  • Noi. Nu avem server și nu deținem chei, deci nu putem reseta accesul.

Împotriva a ce nu protejează?

  • Modelele scurte. Un model este mai slab decât o frază de acces. Cine are fișierele și Keychain-ul dumneavoastră poate sparge în câteva minute, pe un GPU, un model de 6 celule pe o grilă 4×4. Folosiți 8 celule sau mai multe.
  • Programele malware de pe un telefon deblocat. Codul care citește memoria cât timp un seif este deschis depășește puterea oricărei aplicații.
  • Cineva care vă urmărește desenând. Desenați într-un loc în care nimeni nu vă vede mâna.
  • Pierderea telefonului și a frazei. Seiful este pierdut. Nu există resetare.

Modelul panică din Plus distruge secretul de dispozitiv, așa că niciun seif de pe telefon nu se deschide până la restaurare.

Descărcați Cryptile din App Store