Šifrovanie vzorom: Ako nakreslený tvar chráni vaše súbory
Prstom nakreslíte vzor. PBKDF2 zmení toto gesto na kľúč trezora, ktorý odomkne samostatný náhodný kľúč, ktorý chráni vaše súbory AES-256-GCM. Žiadne pole pre heslo, žiadny krátky PIN. Len váš vzor a zámerne vrstvená hierarchia kľúčov.
Vaultaire serializuje tvar nakreslený na mriežke 5×5 a spracováva ho pomocou PBKDF2-HMAC-SHA512, 600 000 iteráciami a soľou pre celé zariadenie uloženou v iOS Keychain. 256-bitový výsledok je kľúč trezora: zašifruje index trezoru a rozbalí samostatný náhodný hlavný kľúč, ktorý AES-256-GCM používa pre obsah súboru a metadáta.
Čo je šifrovanie vzorom?
Väčšina archívnych aplikácií sa skrýva za PINom alebo heslom. Zadáte štyri číslice a fotografie sa zobrazia. Znie to bezpečne, však?
Tu je problém: štvormestný PIN má presne 10 000 možných kombinácií. Počítač ich môže vyskúšať všetky za menej ako sekundu. Šesť číslic? Milión kombinácií. Pre moderný hardvér stále triviálne rýchle. Dokonca osemznakové heslo, ak používa len malé písmená, ponúka asi 200 miliárd možností. To znie ako veľa, kým sa nedozvíte, že štandardný notebook dokáže testovať miliardy hashov hesiel za sekundu.
Šifrovanie vzorov má zásadne odlišný prístup. Namiesto zadávania znakov do poľa nakreslíte geometrický tvar cez mriežku bodiek. Špecifická cesta, ktorú sledujete – ktorých bodov sa dotknete, v akom poradí a akou geometriou – sa stane vstupom do funkcie odvodenia kľúča založenej na hesle. Výsledok nie je len kontrolovaný rozhraním: musí odomknúť overený zašifrovaný index a náhodný hlavný kľúč v ňom.
Na rozdiele záleží. Keď do niektorých aplikácií zadáte kód PIN, aplikácia iba skontroluje, či ste zadali správne číslo. Ak ste tak urobili, otvorí sa, aj keď súbory môžu byť chránené hlavne kontrolou prístupu. Vaultaire namiesto toho vloží nakreslený vzor do PBKDF2 na odvodenie 256-bitového kľúča trezora. Tento kľúč musí overiť a dešifrovať index trezoru, aby mohol rozbaliť náhodný hlavný kľúč použitý pre súbory. Nerozpoznaný vzor sa zobrazí ako prázdny trezor, ale overovanie AES-GCM stále rozlišuje správny kľúč od nesprávneho.
Trezor na báze PINu je ako zamknuté dvere: vylomte zámok a vojdete dnu. Šifrovanie vzorom je ako trezor, kde kombinácia je kov, z ktorého je trezor vyrobený. Zlá kombinácia a žiadny trezor tu nie je, len náhodný odpad.
Ako to funguje krok za krokom
Tu je popísané, čo sa deje od okamihu, keď sa váš prst dotkne obrazovky, do chvíle, keď sa vaše súbory stanú nečitateľnými pre všetkých ostatných.
Krok 1: Nakreslíte vzor
Vaultaire predstavuje mriežku bodov 5×5. Nakreslíte súvislú cestu spájajúcu aspoň 6 bodiek s aspoň jednou zmenou smeru. Aplikácia presne zaznamenáva, ktoré bodky ste navštívili a v akom poradí. Táto sekvencia je váš vzor.
Na rozdiel od mriežok 3 × 3 bežne používaných na uzamknutých obrazovkách Androidu používa Vaultaire mriežku 5 × 5. Toto nie je kozmetická voľba. Dvadsaťpäť polôh umožňuje oveľa viac ciest, križovaní, preskočení a zmien smeru ako deväť polôh. Väčší teoretický priestor pomáha, ale skutočná bezpečnosť stále závisí od nepredvídateľnosti cesty, ktorú si vyberiete. Známe písmeno alebo jednoduchý tvar zostáva uhádnuteľný, aj keď mriežka môže vyjadrovať miliardy alternatív.
Krok 2: Vzor odvodí kľúč trezora
Váš nakreslený vzor sa serializuje spolu s veľkosťou mriežky a vstupuje do PBKDF2 s HMAC-SHA512, 600 000 iteráciami a náhodnou soľou spoločnou pre celé zariadenie. Soľ je netajná hodnota uložená v iOS Keychain ako položka WhenUnlockedThisDeviceOnly. Viaže miestne odvodenie na zariadenie, nie je jedinečná pre každý trezor a nepridáva entropiu vzoru zvolenému človekom. Kryptografická analýza preto musí počítať s tým, že skúmajúci môže získať šifrované súbory aj soľ.
Proces odvodenia kľúča je zámerne drahý. PBKDF2 beží 600 000 HMAC-SHA512 iterácií pre každý kandidátsky vzor, čím zvyšuje náklady útoku hádaním. Tým sa vzor s nízkou entropiou nezmení na 256-bitové zabezpečenie a čas útoku závisí od hardvéru útočníka. Jeho účel je užší a merateľný: urobiť každý odhad podstatne drahším ako jednoduchý hash.
Krok 3: Vaše súbory sú zašifrované
Pri prvom vytvorení trezoru Vaultaire vygeneruje náhodný 256-bitový hlavný kľúč. Kľúč trezora odvodený zo vzoru zašifruje index a zabalí tento hlavný kľúč; nešifruje každý súbor priamo. Hlavný kľúč sa používa s AES-256-GCM pre hlavičky súborov, obsah, miniatúry a súvisiace metadáta. Nové hodnoty nonce zaisťujú, že opakovaný otvorený text nevytvára opakovaný šifrovaný text pod rovnakým kľúčom.
Režim GCM pridáva dôležitú vrstvu: autentifikáciu. Nielen premiešava vaše dáta, ale tiež generuje značku, ktorá detekuje akékoľvek manipulácie. Ak je modifikovaný jediný bit zašifrovaného súboru, dešifrovanie zlyhá. Nikto nemôže manipulovať s vašimi súbormi bez toho, aby ste o tom vedeli.
Krok 4: Aktívny stav kľúča sa odstráni
Keď sa Vaultaire zamkne, vymaže svoj aktívny trezor a stav hlavného kľúča a pred opätovným zobrazením súborov vyžaduje ďalšiu ceremóniu odomknutia. Kým je trezor otvorený, tieto bajty symetrického kľúča nevyhnutne existujú v procese aplikácie, aby CryptoKit mohol vykonávať operácie AES-GCM. Vaultaire tiež uchováva informácie o obnove, vrátane vzoru a obálky na obnovenie šifrovanej frázou, v databáze šifrovanej pomocou AES-GCM, ktorá je uložená v iOS Keychain. To sa podstatne líši od tvrdenia, že vzor a každá kópia kľúča nie sú nikde uložené.
Matematika za tým (v bežnej reči)
Nepotrebujete titul z informatiky, aby ste pochopili, prečo to funguje. Bezpečnosť sa zúži na tri čísla: koľko vzorov je možných, ako dlho trvá každý pokus a koľko pokusov môže útočník urobiť.
Entropia: miera nepredvídateľnosti
Entropia je odborné slovo pre „ako ťažko sa to dá uhádnuť“. Hod mincou má 1 bit entropie (dva výsledky). Štvormiestny PIN má asi 13 bitov entropie (10 000 výsledkov). Dobre zvolený vzor na mriežke 5×5, ktorý spája 8 alebo viac bodov, môže prekročiť 30 bitov entropie, teda viac než miliardu možných vzorov.
Entropia vzoru určuje strop pre útok hádaním. PBKDF2 nedokáže vytvoriť entropiu, ktorú gesto neobsahuje, dokáže však výrazne predražiť overenie každého kandidáta.
Odvodenie kľúča: drahé pokusy
PBKDF2 vezme serializovaný vzor a vykoná 600 000 kôl HMAC-SHA512. Odhady útoku musia vychádzať z nameraných nákladov na hardvéri, ktorý hádanie vykonáva: pri presne 1 ms na úplného kandidáta by 1 000 000 000 kandidátov trvalo 1 000 000 s, teda asi 11,6 dňa, na 1 pracovníkovi. Pomalšie namerané náklady na kandidáta tento čas predĺžia; paralelný hardvér ho skráti. 256-bitová dĺžka výstupu nemení veľkosť priestoru vzorov, ktorý treba prehľadať.
Soľ pre celé zariadenie je uložená v Kľúčenke a nie je navrhnutá ako tajná. Kľúčenka a ochrana údajov v iOS môžu pri zaistení zariadenia sťažiť jej získanie, kryptografická analýza však musí predpokladať, že skúmajúci, ktorý získa šifrované súbory, môže získať aj soľ. Soľ bráni predvýpočtom naprieč zariadeniami; nenahrádza silný vzor.
AES-256: verejný, dôkladne preskúmaný štandard
AES-256 je silná štandardná šifra, ktorú NIST publikoval ako FIPS 197. „256“ označuje dĺžku kľúča v bitoch. 256-bitový kľúč má 2256 možných hodnôt, príliš veľa na útok hrubou silou. Útočník preto útočí na vzor, a práve preto ho Vaultaire naťahuje pomocou 600 000 iterácií PBKDF2.
Bezpečnosť AES-256 nezávisí od utajenia algoritmu. Celý systém však nechráni len priestor kľúča AES: praktickú hranicu hádania určuje entropia vzoru, pracovný faktor PBKDF2 a ochrana soli zariadenia a šifrovaného úložiska. Keď sa odomkne správny náhodný hlavný kľúč, AES-256-GCM poskytuje silné overené šifrovanie.
Čo by musel útok prekonať
Pozrime sa na hlavné spôsoby, akými by sa niekto mohol pokúsiť dostať k vašim šifrovaným súborom, čo Vaultaire robí, aby ich predražil, a kde zostávajú hranice.
Hrubá sila: skúšanie každého vzoru
PBKDF2 zaťaží každého kandidáta na vzor 600 000 iteráciami HMAC-SHA512. Je to významná obrana, nie však sľub pevného počtu rokov: výsledok závisí od voľby vzoru, nameranej rýchlosti odvodenia, paralelizmu a od toho, či skúmajúci získal soľ zariadenia. Dlhšie a menej predvídateľné ťahy sú dôležité, pretože PBKDF2 zvyšuje cenu pokusu, no novú entropiu nevytvára.
Útok šmuhami: čítanie vašej obrazovky
Na mriežke 3×3 môžu šmuhy na displeji výrazne zúžiť okruh možných vzorov. Na mriežke 5×5 šmuhy prezradia, ktorých bodov ste sa dotkli, nie však poradie, smer ani spojenia medzi nimi. Kombinatorická explózia robí tento prístup nepraktickým.
Pozorovanie cez plece: sledovanie, ako kreslíte
Vzory nakreslené rýchlo na malom displeji telefónu sa pozorovaním zapamätajú veľmi ťažko, najmä na mriežke 5×5. Výskum ukazuje, že pozorovatelia zložité vzory zopakujú oveľa ťažšie, než keď započujú nahlas vyslovený PIN alebo heslo.
Zaistenie zariadenia: vziať váš telefón
Ak vám niekto vezme telefón, obsah súborov a indexy Vaultaire zostávajú šifrovaným textom AES-GCM, kým nie sú k dispozícii potrebné kľúče. Aplikácia neukladá bežný záznam na overenie hesla, overovanie offline to však neodstraňuje. Názov každého šifrovaného indexu trezoru obsahuje skrátený hash kľúča trezoru a overené dešifrovanie AES-GCM pre kandidátsky kľúč tiež buď uspeje, alebo zlyhá. Ochrana zariadenia a sila vzoru preto zostávajú súčasťou modelu hrozieb.
Na otestovanie pokusu voči overenému šifrovanému textu nie je potrebný samostatný hash hesla. Značky AES-GCM vo Vaultaire dávajú výsledok úspech alebo neúspech s vysokou istotou a názov indexového súboru poskytuje lacnejšiu predbežnú kontrolu. Obranou je cena a nepredvídateľnosť prístupového údaju a ochrana miestneho materiálu v iOS, nie absencia overovacieho orákula.
Voľba silného vzoru
Šifrovanie je len také silné ako vzor, ktorý si zvolíte. Takto maximalizujete bezpečnosť s minimálnou námahou.
Čo robí vzor silným
- Použite viac bodov. Spojte aspoň 8 z 25 dostupných bodov. Každý ďalší bod znásobí počet možných vzorov.
- Krížte vlastnú dráhu. Vzory, ktoré sa vracajú, preskakujú body alebo nečakane menia smer, sa z pamäti alebo pozorovaním zopakujú oveľa ťažšie.
- Vyhnite sa zrejmým tvarom. Písmená (L, Z, S), jednoduché geometrické tvary (štvorce, trojuholníky) a rovné čiary útočník skúsi ako prvé.
- Využite celú mriežku. Vzory, ktoré zostanú v jednom rohu alebo pri jednom okraji, plytvajú dostupnou entropiou. Rozložte ich.
Čomu sa vyhnúť
- Vzorom s minimálnou dĺžkou. Vaultaire vyžaduje aspoň 6 bodov a jednu zmenu smeru, splnenie minima však dráhu nerobí nepredvídateľnou. Ak si výsledok dokážete spoľahlivo zapamätať, využite väčšiu časť mriežky a zmeňte smer viackrát.
- Jednoduchým geometrickým tvarom. Tvar L, cik-cak alebo rovná uhlopriečka sú vzorovým ekvivalentom „password123“.
- Začínaniu zakaždým v rovnakom rohu. Výskum zámkov vzorom v Androide ukazuje, že väčšina ľudí začína v ľavom hornom bode. Útočníci to vedia.
Ideálny stred
Vzor, ktorý spája 8 až 12 bodov a niekoľkokrát zmení smer, sa uhádne ťažšie a pritom si ho vďaka svalovej pamäti ľahko zapamätáte. Nemusíte sa ho učiť naspamäť ako heslo: pohyb si pamätá vaša ruka, rovnako ako si pamätá váš podpis.
Prečo sa môžete cítiť bezpečne
Šifrovanie vzorom vo Vaultaire nie je len krajšia klávesnica na PIN. Gesto spracuje skutočná funkcia na odvodenie kľúča a musí odomknúť overené šifrované údaje. Jeho sila stále závisí od gesta, ktoré si zvolíte, preto Vaultaire kombinuje väčšiu mriežku s vysokým pracovným faktorom PBKDF2 namiesto toho, aby 256-bitovú dĺžku výstupu vydával za 256 bitov ľudského tajomstva.
Váš vzor ani miestny kľúč trezoru sa do Vaultaire neposielajú. Kým je záloha zapnutá, čo je predvolené, samostatný záložný kľúč odvodený zo vzoru šifruje záznamy v CloudKite a šifrovaný manifest obnovy umožňuje fráze na obnovenie obnoviť kľúče trezoru a zálohy. Vaultaire nedrží kľúč poskytovateľa, ktorý by tieto záznamy dešifroval, zariadenie a prístupové údaje na obnovu však zostávajú z hľadiska bezpečnosti kritickými časťami návrhu.
Nakreslíte tvar. Ten tvar chráni vaše súbory. O zvyšok sa postará matematika.
Často kladené otázky
Čo sa stane, ak zabudnem vzor?
Keď vytvoríte trezor, Vaultaire vygeneruje vlastnú frázu na obnovenie z deviatich slov. PBKDF2 z tejto frázy odvodí obnovovací kľúč, ktorý otvorí zašifrovanú obálku obsahujúcu kľúč trezora. Ak stratíte vzor aj frázu na obnovenie, Vaultaire nemá žiadny kľúč na strane servera, ktorý by mohol trezor obnoviť.
Je vzor naozaj bezpečnejší ako heslo?
Dobre zvolený vzor na mriežke 5×5 môže dosiahnuť alebo prekonať entropiu typického hesla. Výhodou je použiteľnosť: ľudia volia slabé heslá, pretože silné sa ťažko pamätajú. Vzory využívajú svalovú pamäť, takže používanie zložitého vzoru je prirodzené bez vedomého memorovania.
Môže niekto urobiť snímku obrazovky alebo nahrávku môjho vzoru?
Vaultaire aplikuje na mriežku vzorov podľa možností ochranu obrazovky a reaguje, keď iOS hlási aktívne snímanie obrazovky. iOS neposkytuje verejný príznak zabezpečenej obrazovky pre ľubovoľný obsah aplikácie, takže tieto ovládacie prvky znižujú náhodné zachytenie, ale nemôžu zaručiť, že bude zablokovaná každá metóda snímania.
Aký šifrovací algoritmus Vaultaire používa?
Vaultaire používa PBKDF2-HMAC-SHA512 so 600 000 iteráciami na odvodenie kľúča trezora zo vzoru a zo soli v Keychain spoločnej pre celé zariadenie. Tento kľúč trezora zašifruje index trezoru a zabalí náhodný 256-bitový hlavný kľúč. AES-256-GCM pod hlavným kľúčom chráni obsah súboru, hlavičky, metadáta a miniatúry pomocou overeného šifrovania.
Je vzor uložený v mojom zariadení?
Vaultaire ukladá údaje na obnovu vrátane vzoru v AES-GCM šifrovanej databáze obnovy chránenej iOS Keychain. Vzor sa neposiela Vaultaire ani neukladá do súborov v otvorenom texte. Kým je trezor otvorený, bajty kľúča existujú v procese aplikácie; uzamknutie zahodí aktívny stav kľúča bez tvrdenia, že Swift a iOS preukázateľne prepíšu každú dočasnú kópiu.
Môže Vaultaire pristupovať k mojim zašifrovaným súborom?
Vaultaire neprevádzkuje službu, ktorá prijíma váš vzor, frázu na obnovenie, dešifrovacie kľúče alebo čitateľný obsah trezoru. Zašifrované iCloud zálohy zostávajú vo vašej súkromnej databáze CloudKit. Táto hranica poskytovateľa nechráni otvorený trezor pred kompromitovanou zostavou aplikácie, operačným systémom alebo zariadením.
Vyskúšajte šifrovanie vzorom
Nakreslite prvý vzor a zistite, aké je to mať súbory skutočne chránené.
Stiahnuť Vaultaire zadarmo