Xifrat per patró: Com una forma dibuixada protegeix els teus fitxers

Dibuixes un patró amb el dit. PBKDF2 converteix aquest gest en una clau de volta, que desbloqueja una clau aleatòria separada que protegeix els vostres fitxers AES-256-GCM. Sense camp de contrasenya, sense PIN curt. Només el vostre patró i una jerarquia de claus deliberadament en capes.

Vaultaire serialitza una forma dibuixada en una graella de 5×5 i la processa PBKDF2-HMAC-SHA512, 600.000 iteracions i una sal per a tot el dispositiu emmagatzemada al iOS Keychain. El resultat de 256 bits és una clau de volta: xifra l'índex de volta i desembolica la clau mestra aleatòria separada que AES-256-GCM utilitza per al contingut del fitxer i les metadades.

Què és el xifrat per patró?

La majoria d'aplicacions de caixa fort es protegeixen amb un PIN o contrasenya. Introdueixes quatre dígits i apareixen les fotos. Sembla segur, oi?

El problema: un PIN de quatre dígits té exactament 10.000 combinacions possibles. Un ordinador les pot provar totes en menys d'un segon. Sis dígits? Un milió de combinacions. Encara trivialment ràpid per a maquinari modern. Fins i tot una contrasenya de vuit caràcters, si fa servir només lletres minúscules, ofereix uns 200.000 milions de possibilitats. Sona molt fins que saps que un portàtil estàndard pot provar milers de milions de hashes de contrasenyes per segon.

El xifratge de patró té un enfocament fonamentalment diferent. En lloc d'escriure caràcters en un quadre, dibuixeu una forma geomètrica a través d'una quadrícula de punts. El camí específic que traceu (quins punts toqueu, en quin ordre, amb quina geometria) es converteix en l'entrada d'una funció de derivació de clau basada en contrasenya. El resultat no és només comprovat per la interfície: ha de desbloquejar un índex xifrat autenticat i la clau mestra aleatòria que hi ha dins.

La distinció importa. Quan introduïu un PIN en algunes aplicacions, l'aplicació només comprova si heu escrit el número correcte. Si ho feu, s'obre, tot i que els fitxers poden estar protegits principalment pel control d'accés. Vaultaire, en canvi, alimenta el patró dibuixat PBKDF2 per obtenir una clau de volta de 256 bits. Aquesta clau ha d'autenticar i desxifrar l'índex de la volta abans que pugui desembolicar la clau mestra aleatòria utilitzada als fitxers. Un patró no reconegut es presenta com una volta buida, però el subjacent AES-GCM l'autenticació encara distingeix una clau correcta d'una incorrecta.

La diferència clau

Una porta d'accés basada en PIN pot ser com una porta tancada col·locada davant d'arxius llegibles d'una altra manera. El patró de Vaultaire és més proper a la combinació d'una caixa forta: deriva la clau que obre un índex xifrat, que al seu torn allibera la clau separada que protegeix el contingut. La interfície no pot passar per alt aquesta cadena criptogràfica.

Com funciona pas a pas

Aquí s'explica el que passa des del moment que el teu dit toca la pantalla fins que els teus fitxers es tornen il·legibles per a qualsevol altre.

Pas 1: Dibuixes el patró

Vaultaire presenta una graella de punts 5×5. Dibuixeu un camí continu que connecti almenys 6 punts amb almenys dos canvis de direcció. L'aplicació registra exactament quins punts heu visitat i en quin ordre. Aquesta seqüència és el vostre patró.

Graella de patró 5×5

A diferència de les quadrícules 3×3 que s'utilitzen habitualment per a les pantalles de bloqueig d'Android, Vaultaire utilitza una quadrícula 5×5. Aquesta no és una opció cosmètica. Vint-i-cinc posicions permeten molts més camins, encreuaments, salts i canvis de direcció que nou posicions. L'espai teòric més gran ajuda, però la seguretat real encara depèn de la imprevisibilitat del camí que trieu. Una lletra familiar o una forma simple segueix sent endevinable fins i tot quan la graella pot expressar milers de milions d'alternatives.

Pas 2: El patró deriva una clau de volta

El vostre patró dibuixat es serialitza amb la mida de la quadrícula i s'hi introdueix PBKDF2 (Funció de derivació de clau basada en contrasenya 2) amb HMAC-SHA512, 600.000 iteracions i una sal aleatòria per a tot el dispositiu. La sal és un valor no secret emmagatzemat al iOS Keychain com a article WhenUnlockedThisDeviceOnly. Fa que el dispositiu de derivació local estigui vinculat; no és exclusiu de cada volta i no afegeix entropia a un patró escollit per l'home.

Flux de xifrat
El teu patró
Camí a la graella 5×5
PBKDF2 + sal
Derivació de claus
Clau de 256 bits
Única per a cada caixa
AES-256-GCM
Xifrat de fitxers

El procés de derivació de claus és deliberadament car. PBKDF2 funciona 600.000 HMAC-SHA512 iteracions per a cada patró candidat, augmentant el cost d'un atac d'endevinar. Això no converteix un patró de baixa entropia en 256 bits de seguretat i el temps d'atac depèn del maquinari de l'atacant. El seu propòsit és més estret i mesurable: fer que cada suposició sigui substancialment més car que un simple hash.

Pas 3: Els teus fitxers es xifren

Quan es crea la volta per primera vegada, Vaultaire genera una clau mestra aleatòria de 256 bits. La clau de volta derivada del patró xifra l'índex i embolcalla aquesta clau mestra; no xifra tots els fitxers directament. La clau mestra s'utilitza amb AES-256-GCM per a les capçaleres de fitxers, contingut, miniatures i metadades relacionades. Les noves noces asseguren que el text senzill repetit no produeixi text xifrat repetit amb la mateixa clau.

El mode GCM afegeix una capa important: autenticació. No només barreja les teves dades, sinó que genera una etiqueta que detecta qualsevol manipulació. Si es modifica un sol bit d'un fitxer xifrat, el desxifrat falla. Ningú pot manipular els teus fitxers sense que ho sàpigues.

Pas 4: S'elimina l'estat actiu de la clau

Quan Vaultaire bloqueja, esborra la seva volta activa i l'estat de la clau mestra i requereix una altra cerimònia de desbloqueig abans de tornar a mostrar els fitxers. Mentre la volta està oberta, aquests bytes de clau simètrica necessàriament existeixen al procés de l'aplicació CryptoKit pot actuar AES-GCM operacions. Vaultaire també guarda la informació de recuperació, inclòs el patró i el sobre de recuperació xifrat amb frases, dins d'un AES-GCM base de dades xifrada emmagatzemada al iOS Keychain. Això és materialment diferent d'afirmar que el patró i totes les còpies clau no s'emmagatzemen enlloc.

Les matemàtiques (en paraules normals)

No cal tenir una titulació en informàtica per entendre per què funciona. La seguretat depèn de tres números: quants patrons són possibles, quant temps triga cada intent i quants intents pot fer un atacant.

2256
Espai de claus AES
5×5
Mida de la graella
Milers de milions
Patrons possibles

Entropia: mesura de la imprevisibilitat

Entropia és una altra paraula per a “com de difícil és d'endevinar.” Llançar una moneda té 1 bit d'entropia. Un PIN de quatre dígits té uns 13 bits d'entropia. Un patró ben triat en una graella 5×5 connectant 8 o més punts pot superar els 30 bits d'entropia, és a dir, més de mil milions de patrons possibles.

Derivació de claus: intents costosos

PBKDF2 pren el patró serialitzat i executa 600.000 rondes de HMAC-SHA512. Les estimacions d'atac han d'utilitzar un cost mesurat al maquinari que fa l'endevinació: amb exactament 1 ms per candidat complet, 1.000.000.000 de candidats trigarien 1.000.000 s, o uns 11,6 dies, a 1 treballador. Un cost candidat mesurat més lent augmenta aquest temps; el maquinari paral·lel el redueix. La longitud de sortida de 256 bits no canvia la mida de l'espai de cerca de patrons.

AES-256: l'estàndard en el qual confien els governs

AES-256 és l'estàndard de xifrat que fa servir el govern dels EUA per a informació classificada. Una clau de 256 bits té 2256 valors possibles, un nombre tan gran que fins i tot si cada àtom de l'univers observable fos un ordinador i cada ordinador provés un bilió de claus per segon, trencar-lo no es produiria abans de la mort tèrmica de l'univers. La seguretat d'AES-256 no depèn del secret. L'algoritme és públic. La seguretat depèn únicament de la clau.

Per què ningú ho trenca

Considerem les principals maneres en què algú podria intentar accedir als vostres fitxers xifrats, què fa Vaultaire per augmentar el cost i on romanen els límits.

Força bruta: provar cada patró

PBKDF2 fa que cada candidat de patró pagui 600.000 HMAC-SHA512 iteracions. Aquesta és una defensa significativa, però no una promesa d'un nombre fix d'anys: el resultat depèn de l'elecció del patró, la velocitat de derivació mesurada, el paral·lelisme i si l'examinador ha recuperat la sal del dispositiu. Els camins més llargs i menys previsibles importen perquè PBKDF2 augmenta el cost de les suposicions en lloc de crear una nova entropia.

Atac per empremtes: llegir la pantalla

En una graella 3×3, les empremtes a la pantalla poden reduir significativament els patrons possibles. En una graella 5×5, el patró d'empremtes revela quins punts s'han tocat però no l'ordre, la direcció ni les connexions entre ells. L'explosió combinatòria fa que aquest enfocament sigui poc pràctic.

Confiscació del dispositiu: prendre el teu telèfon

Si algú agafa el vostre telèfon, el contingut i els índexs dels fitxers de Vaultaire es mantenen AES-GCM text xifrat fins que les claus necessàries estiguin disponibles. L'aplicació no emmagatzema un registre de verificador de contrasenya convencional, però això no elimina la verificació fora de línia. El nom de fitxer de cada índex de volta xifrat conté un hash truncat de la clau de volta i AES-GCM el desxifrat autenticat també té èxit o falla per a una clau candidata. Per tant, la protecció del dispositiu i la força del patró segueixen sent part del model d'amenaça.

Sense oracle de verificació

No cal un hash de contrasenya independent per provar una conjectura amb un text xifrat autenticat. de Vaultaire AES-GCM les etiquetes proporcionen un resultat d'èxit o fracàs d'alta confiança, i el nom del fitxer d'índex proporciona una comprovació preliminar més barata. La defensa és el cost i la imprevisibilitat de la credencial plus iOS protecció del material local, no l'absència d'un oracle de verificació.

Triar un patró fort

El xifrat és tan fort com el teu patró. Aquí tens com maximitzar la seguretat amb el mínim esforç.

Què fa un patró fort

  • Usa més punts. Connecta almenys 8 dels 25 punts disponibles. Cada punt addicional multiplica el nombre de patrons possibles.
  • Creua el teu propi camí. Els patrons que tornen enrere, salten punts o canvien de direcció de manera inesperada son molt més difícils de reproduir de memòria o observació.
  • Evita formes òbvies. Lletres, figures geomètriques simples i línies rectes son les primeres coses que provaria un atacant.
  • Usa tota la graella. Els patrons que queden a un cantó malbaraten l'entropia disponible. Escampa't.

Què evitar

  • Patrons de longitud mínima. Vaultaire requereix almenys 6 punts i dos canvis de direcció, però complir el mínim no fa que un camí sigui impredictible. Utilitzeu més de la graella quan pugueu recordar el resultat de manera fiable.
  • Formes geomètriques simples. Una forma en L, una línia en ziga-zaga o una diagonal recta son l'equivalent en patró de la contrasenya “contrasenya123”.
  • Sempre começar des del mateix cantó. La investigació sobre patrons d'Android mostra que la majoria de gent comença des del punt superior esquerre. Els atacants ho saben.

Preguntes freqüents

Què passa si oblido el patró?

Quan creeu una volta, Vaultaire genera una frase de recuperació personalitzada que conté 9 paraules separades. PBKDF2 deriva una clau de recuperació d'aquesta frase, que obre un sobre xifrat que conté la clau de la caixa forta. Si perds tant el patró com la frase de recuperació, Vaultaire no té cap clau del servidor que pugui restaurar la volta.

Un patró és realment més segur que una contrasenya?

Un patró ben triat en una graella 5×5 pot assolir o superar l'entropia d'una contrasenya típica. L'avantatge és la usabilitat: la gent tria contrasenyes febles perquè les fortes són difícils de recordar. Els patrons aprofiten la memòria muscular, de manera que usar un patró complex resulta natural sense memorització conscient.

Pot algú fer una captura de pantalla o enregistrar el meu patró?

Vaultaire aplica un escut de captura de pantalla del millor esforç a la quadrícula del patró i reacciona quan iOS informa de la captura de pantalla activa. iOS no proporciona una marca pública de pantalla segura per al contingut d'aplicacions arbitrari, de manera que aquests controls redueixen la captura accidental, però no poden garantir que tots els mètodes de captura estiguin bloquejats.

Quin algoritme de xifrat fa servir Vaultaire?

Vaultaire utilitza PBKDF2-HMAC-SHA512 amb 600.000 iteracions per derivar una clau de volta del patró i una clau per a tot el dispositiu Keychain sal. Aquesta clau de volta xifra l'índex de volta i embolcalla una clau mestra aleatòria de 256 bits. AES-256-GCM sota la clau mestra protegeix el contingut del fitxer, les capçaleres, les metadades i les miniatures amb un xifratge autenticat.

El patró s'emmagatzema al dispositiu?

Vaultaire emmagatzema informació de recuperació, inclòs el patró, dins d'un AES-GCM base de dades de recuperació xifrada conservada al iOS Keychain. El patró no s'envia a Vaultaire ni s'emmagatzema en fitxers de text sense format. Mentre una volta està oberta, hi ha bytes clau al procés de l'aplicació; el bloqueig deixa caure l'estat clau actiu de Vaultaire.

Pot Vaultaire accedir als meus fitxers xifrats?

Vaultaire no gestiona cap servei que rebi el vostre patró, frase de recuperació, claus de desxifrat o contingut de volta llegible. Encriptat iCloud les còpies de seguretat romanen a la vostra privada CloudKit base de dades. Aquest límit del proveïdor no protegeix una volta oberta d'una compilació d'aplicacions, un sistema operatiu o un dispositiu compromesos.

Veu-ho en acció

Descarrega Vaultaire i dibuixa el teu primer patró en menys d'un minut.

Descarregar Vaultaire gratuïtament