Bezpečnostná architektúra: Kompletný technický základ

Vaultaire nespolieha na jediný algoritmus ani jeden chytrý trik. Používa vrstvenú kryptografickú architektúru, kde každá súčasť má špecifickú úlohu a zlyhanie jednej vrstvy neohrozuje ostatné. Tu je popísaná každá šifra, protokol a rozhodnutie v návrhu, ktoré stojí medzi vašimi súkromnými dátami a zvyškom sveta.

Používa Vaultaire AES-256-GCM pre overené šifrovanie medzi indexmi trezorov, zabalenými kľúčmi, hlavičkami súborov, obsahom, miniatúrami a metadátami. PBKDF2-HMAC-SHA512 odvodzuje kľúč lokálneho trezoru zo vzoru a celého zariadenia Keychain soľ. Tento kľúč trezora obalí samostatný náhodný 256-bitový hlavný kľúč, ktorý vykonáva šifrovanie súboru CryptoKit v procese aplikácie.

Kryptografický základ

Vaultaire používa niekoľko kryptografických mechanizmov pracujúcich v zhode, z ktorých každý je vybraný pre konkrétnu prácu. PBKDF2 zmení ľudské poverenie na trezor alebo kľúč na obnovenie. AES-256-GCM chráni indexy, obaly, metadáta, miniatúry a obsah súborov. Náhodný hlavný kľúč oddeľuje dlhodobé šifrovanie súborov od premenlivého vzoru. Keychain a iOS Ochrana údajov chráni záznamy o soli a obnove viazanej na zariadenie, keď je zariadenie uzamknuté. Žiadny dešifrovací kľúč držaný poskytovateľom neposkytuje vývojárovi rutinný prístup k čistému textu trezoru.

Toto nie je zložitosť sama o sebe. Každá vrstva rieši iný útočný povrch. AES-256-GCM kombinuje dôvernosť s autentifikáciou, takže modifikovaný šifrovaný text zlyhá pri overení. PBKDF2 zvyšuje náklady na testovanie každého vzoru alebo frázy. Náhodný hlavný kľúč znamená, že zmena vzoru môže prebaliť jeden kľúč namiesto opätovného šifrovania každého súboru. Keychain ochranu údajov stráži miestne záznamy soli a obnovy, zatiaľ čo aplikácia stále uznáva, že k symetrickému šifrovaniu dochádza v pamäti procesu.

Tieto vrstvy spolu tvoria hĺbkovú architektúru obrany, ale nie všetky sú nezávislými bariérami. Uhádnutý vzor možno skontrolovať podľa indexového súboru a AES-GCM overenie a napadnuté odomknuté zariadenie môže v procese aplikácie sledovať kľúče alebo čistý text. Architektúra preto závisí od poverovacej entropie, PBKDF2 náklady, iOS ochranu zariadenia a správne zaobchádzanie s overeným šifrovaním, ako aj silu samotného AES.

Obrana do hĺbky

Predstavte si hierarchiu Vaultaire ako súbor vnorených uzamknutých kontajnerov. Vzor odvodený kľúč od trezoru otvorí overený index. Index uvoľní zabalené náhodné hlavný kľúč. Tento hlavný kľúč chráni súbory a metadáta. PBKDF2, AES-GCM, Keychaina iOS Ochrana údajov prispieva rôznymi vlastnosťami, ale nárok na bezpečnosť je len taký silný ako celý reťazec.

AES-256-GCM: Šifrovanie súborov

Každá fotografia, video a dokument uložený vo Vaultaire je šifrovaný pomocou AES-256-GCM — Advanced Encryption Standard s 256-bitovým kľúčom Režim Galois/Counter. Vaultaire tiež používa AES-GCM pre indexy trezorov, hlavičky súborov, miniatúry a obálky kľúčov. Algoritmus a veľkosť kľúča sú štandardizované; Bezpečnosť Vaultaire stále závisí od jednorazovej manipulácie, správy kľúčov, sily poverenia a správnosti implementácie.

Číslo “256” v AES-256 označuje dĺžku kľúča v bitoch. 256-bitový kľúč má 2256 možných hodnôt. Pre predstavu: v pozorovateľnom vesmíre je približne 1080 atómov. Keby každý atóm bol superpočítač testujúci miliardu kľúčov za sekundu a bežal od Veľkého tresku, preskúmali by menej ako bilióntinu bilióntin percenta priestoru kľúčov. AES-256 nebude prelomený hrubou silou. Nie dnes. Nie v tomto storočí. Nie skôr, než zhasnú hviezdy.

Prečo záleží na režime GCM

AES je bloková šifra: šifruje dáta v 128-bitových blokoch. “Režim” určuje, ako sú tieto bloky kombinované. GCM (Galois/Counter Mode) poskytuje dve veci, ktoré jednoduchšie režimy ako CBC neposkytujú: paralelizované šifrovanie a zabudovanú autentifikáciu.

Časť autentifikácie je kritická. GCM generuje kryptografickú značku pre každý šifrovaný súbor. Táto značka funguje ako pečať proti manipulácii. Ak je modifikovaný jediný bit šifrového textu, či už zákerným aktérom alebo poškodeným sektorom disku, autentifikačná značka nebude zodpovedať a dešifrovanie zlyhá. Nezískate poškodené dáta. Dostanete jasný signál, že je niečo zlé. Táto vlastnosť sa nazýva autentifikované šifrovanie a zabraňuje celej triede útokov, kde protivník modifikuje šifrované dáta na manipuláciu dešifrovaného výstupu.

PBKDF2: Odvádzanie kľúčov

Vaultaire odvodzuje rôzne kľúče pre rôzne úlohy. Vzor a celé zariadenie Keychain soľné krmivo PBKDF2-HMAC-SHA512 pre 600 000 iterácií na vytvorenie lokálneho kľúča trezora. Odvodenie deterministického vzoru vytvára samostatný kľúč zálohy cloudu. Normalizovaná obnovovacia fráza prechádza cez 800 000 PBKDF2 iterácií na vytvorenie kľúča pre obálku obnovy. Žiadna z týchto derivácií nepremení ľudské poverenie na 256 bitov entropie len preto, že výstup je dlhý 256 bitov.

Ako PBKDF2 chráni váš vzor

Hlavná myšlienka PBKDF2 je premyslená práca. Preberá serializovaný vzor alebo normalizovanú frázu a beží ich stovky tisíc HMAC-SHA512 iterácií. Legitímny používateľ zaplatí túto cenu raz počas pokusu o odomknutie alebo obnovenie. Útočník to platí za každého kandidáta, hoci skutočnú mieru hádania určujú paralelné možnosti hardvéru a implementácie.

Konfiguruje sa Vaultaire PBKDF2 so 600 000 iteráciami pre kľúče odvodené zo vzoru. To robí každý odhad drahším, ale zodpovedný odhad útoku musí uvádzať nameraný čas na kandidáta a hardvérové ​​predpoklady. Pri presne 1 ms na kandidáta trvá 1 000 000 000 sériových odhadov približne 11,6 dňa, nie rokov. 256-bitový výsledok nerozširuje entropiu predvídateľného vzoru.

Lokálne odvodenie vzoru používa jednu kryptograficky náhodnú soľ pre zariadenie, uloženú ako WhenUnlockedThisDeviceOnly Keychain položka. Soľ nie je tajná a zdieľajú ju trezory na tomto zariadení. Zabraňuje tomu, aby sa tabuľka vytvorená pre jedno zariadenie aplikovala priamo na iné zariadenie s inou soľou, ale nenúti útočníka začať odznova pre každý trezor na rovnakom zariadení.

256-bitový
Dĺžka šifrovacieho kľúča
6
Kryptografických vrstiev
0
Kľúčov uložených na serveroch

AES-256-GCM: Ochrana metadát

Šifrovanie obsahu súborov nestačí. Názvy súborov, dátumy vytvorenia, rozmery miniatúr a štruktúra trezoru sú metadáta, a metadáta môžu byť rovnako odhaľujúce ako samotné dáta. Súbor s názvom “danove-priznanie-2025.pdf” útočníkovi presne prezradí, čo je vnútri, aj keď je obsah šifrovaný. Časová pečiatka ukazuje, kedy ste trezor používali. Veľkosť miniatúry prezradí, či je niečo fotografia alebo video.

Vaultaire chráni tieto metadáta pomocou AES-256-GCM, nie ChaCha20. Názvy súborov a MIME typy sú zakódované do zašifrovaných hlavičiek súborov. Šifrovaný index úschovne obsahuje záznamy o súboroch, dátumy, informácie o veľkosti, rozloženie úložiska a zabalený hlavný kľúč. Údaje miniatúr sú tiež šifrované náhodným hlavným kľúčom.

Prečo overené šifrovanie pre metadáta?

Metadáta si vyžadujú integritu aj dôvernosť. AES-GCM vytvára autentifikačnú značku pre každú zašifrovanú hodnotu, takže Vaultaire môže odmietnuť upravenú hlavičku, index, miniatúru alebo obálku namiesto prijatia čistého textu kontrolovaného útočníkom. Návrh zámerne používa jednu konštrukciu overeného šifrovania naprieč týmito formátmi úložiska namiesto toho, aby požadoval kryptografickú rozmanitosť, ktorú implementácia neposkytuje.

Tá istá šifra neznamená, že ten istý kľúč alebo nonce sa znova použije naslepo. Kľúč trezoru chráni index a obalí náhodný hlavný kľúč; hlavný kľúč chráni materiál súboru. CryptoKit vytvára overené zapečatené boxy s čerstvými nonce, zatiaľ čo streamovací formát Vaultaire odvodzuje zreteľný nonce pre každý objednaný kus. Príslušné záruky pochádzajú z oddelenia kľúčov, disciplíny nonce a autentifikácie, nie z druhej šifry metadát.

Architektúra nulových znalostí

Tu stojí za to položiť otázku ohľadom akejkoľvek bezpečnostnej aplikácie: čo sa stane, ak je spoločnosť za ňou hacknutá, predvolaná na súd alebo sa jednoducho obrátí?

U väčšiny aplikácií je odpoveď nepríjemná. Držia vaše dáta, vaše kľúče alebo oboje. Súdny príkaz ich prinúti ich odovzdať. Únik dát ich odhalí. Nepoctivý zamestnanec k nim pristúpi. Bezpečnosť aplikácie je len tak silná ako prevádzková bezpečnosť spoločnosti, a história ukazuje, že spoločnosti sú pravidelne prelomené.

Vaultaire neprevádzkuje účet alebo službu úložiska, ktoré prijíma váš vzor, tajnú frázu, dešifrovacie kľúče alebo čitateľný obsah trezoru. Šifrovanie a dešifrovanie prebieha v procese aplikácie na vašom zariadení. Kedy iCloud zálohovanie je povolené, aplikácia odošle overený šifrový text do vášho súkromia CloudKit databázy, a nie do služby úschovne riadenej Vaultaire.

Čo architektúra nulových znalostí v praxi znamená

Ak orgán činný v trestnom konaní predloží Vaultaire predvolanie požadujúce holý text trezoru, spoločnosť nedrží vzor, frázu na obnovenie, kľúč trezora, záložný kľúč alebo hlavný kľúč potrebný na jeho dešifrovanie. Zašifrované iCloud záznamy naživo v používateľskom prostredí CloudKit súkromná databáza. Na zariadení sa však obnovovací materiál uchováva v zašifrovanom formáte Keychain databáza a symetrické kľúče existujú v pamäti aplikácie CryptoKit zašifruje alebo dešifruje otvorený trezor.

Táto hranica poskytovateľa je architektonickou vlastnosťou, nie prísľubom, že každá časť klientskeho prostredia je mimo modelu dôvery. Vaultaire nemá dešifrovací kľúč na strane servera, ktorý môže odovzdať na rutinnú obnovu trezoru. Dodávaná aplikácia, iOS, odomknuté zariadenie a kryptografická implementácia môžu stále spracovávať čitateľné údaje a musia byť podľa toho dôveryhodné.

Nedôverovať nikomu zámerne

Hranica poskytovateľa Vaultaire odstraňuje dešifrovací kľúč v držbe spoločnosti z normálneho dizajnu. To znižuje to, čo môže odhaliť porušenie samotného Vaultaire. Neodstraňuje potrebu dôverovať odoslanému klientovi, iOS, stav zariadenia alebo implementácia zdokumentovanej hierarchie kľúčov. Tieto hranice by sa mali hodnotiť oddelene a nemali by sa zrútiť do absolútneho prísľubu.

Keychain a Hranica procesu aplikácie

od spoločnosti Apple Secure Enclave môže chrániť podporované súkromné kľúče a podieľa sa na častiach architektúry zabezpečenia platformy, ale jeho verejné API neprijímajú svojvoľné PBKDF2- odvodený symetrický kľúč a vykonať Vaultaire's AES-GCM operácie so súbormi vo vnútri koprocesora. Vaultaire teda nepopisuje svoju šifru trezoru ako Secure Enclave AES.

Vaultaire používa obyčajné iOS Keychain položky generického hesla pre náhodnú soľ zariadenia, šifrovanú databázu obnovy a náhodný kľúč chrániaci túto databázu. Tieto položky používajú triedu dostupnosti WhenUnlockedThisDeviceOnly. Keychain a Data Protection vytvárajú zmysluplnú hranicu zariadenia, najmä keď je telefón uzamknutý, ale táto architektúra sa líši od neexportovateľnej architektúry. Secure Enclave kľúč.

Keď nakreslíte vzor, CommonCrypto odvodzuje kľúč trezora v procese aplikácie. CryptoKit a Vaultaire's CryptoEngine potom v tomto procese použijú bajty symetrického kľúča na overenie a dešifrovanie indexu, rozbalenie hlavného kľúča a spracovanie súborov. Aplikácia vymaže aktívny stav, keď sa uzamkne, ale dostatočne privilegovaný útočník, ktorý sleduje odomknutú reláciu, má inú príležitosť ako skúšajúci, ktorý drží iba šifrovaný text na uzamknutom zariadení.

Jailbreaknutý alebo inak kompromitovaný operačný systém sa môže zamerať na vstup vzoru, pamäť aplikácie, dešifrované náhľady, exporty alebo obrazovku. Vaultaire odporúča aktuálny, non-jailbreaknutý iPhone pretože dizajn sa spolieha na iOS procesná izolácia, Keychaina Ochrana údajov. Netvrdí, že root kompromis ponecháva symetrické kľúče otvoreného trezoru nedostupné.

Inicializačné vektory na súbor

Keď zašifrujete dva identické súbory rovnakým kľúčom, naivná implementácia by vytvorila identický šifrový text. To je problém. Útočník, ktorý vidí dva identické šifrované bloby, vie bez dešifrovania čohokoľvek, že dva pôvodné súbory sú rovnaké. V trezore plnom fotografií môže takýto typ analýzy vzorov odhaliť informácie aj napriek šifrovaniu.

Vaultaire zabraňuje deterministickému šifrovému textu tým, že pre každý z nich vygeneruje novú kryptografickú nonce AES-256-GCM operácia tesnenia. Hlavičky súborov a obsah súborov sú zapečatené oddelene a veľké súbory používajú overený formát streamovania s náhodným základným nonce a odlišným nonce pre každý objednaný blok. Dve kópie tej istej fotografie preto nevytvárajú rovnakú šifrovanú reprezentáciu.

Nonce sú uložené so šifrovým textom a nie sú tajné; ich bezpečnostnou požiadavkou je jedinečnosť pod daným kľúčom. Vaultaire požaduje 96-bitové nonce od kryptografického náhodného generátora Apple na jednorazové šifrovanie a zaznamenáva základné nonce v hlavičke streamovania. Riziko kolízie sa riadi počtom šifrovaní pod jedným kľúčom, takže implementácia generuje novú hodnotu, a nie prezentovať 96-bitovú veľkosť ako fixnú hodnotu jedna v 2.96 doživotná záruka.

Šifrovací pipeline
Váš vzor
Vstup mriežky 5×5
PBKDF2
KDF s vysokou iteráciou
Kľúč od trezoru
Index + obal na kľúče
Náhodný hlavný kľúč
AES-GCM súbory + metadáta

Správa pamäte: Vymazanie stavu aktívneho kľúča

Bežnou chybou bezpečnostného softvéru je ponechanie citlivých dát v pamäti dlhšie, než je potrebné. Šifrovacie kľúče, odvodené heslá a dešifrované dáta môžu v RAM pretrvávať dlho potom, čo ich aplikácia prestala používať. Forenzné nástroje môžu vypísať pamäť zariadenia a hľadať tieto zvyšky, technika známa ako útok studeným štartom alebo analýza výpisu pamäte.

Vaultaire obmedzuje, ako dlho zostane k dispozícii aktívny stav kľúča a dešifrované údaje používateľského rozhrania. Keď sa aplikácia uzamkne alebo sa relácia preruší, jej kód nasleduje niekoľko ciest čistenia:

  • Aktívny stav trezoru je zrušený. Aplikácia odstráni svoju aktuálnu reláciu kľúča trezora a pred prezentáciou obsahu trezoru vyžaduje ďalšie odomknutie.
  • Obaly kľúčov vyčistia vlastnené vyrovnávacie pamäte. Zabezpečené bajtové kontajnery Vaultaire prepíšu vyrovnávacie pamäte, ktoré vlastnia, keď sú tieto kontajnery uvoľnené.
  • Stav hlavného kľúča vo vyrovnávacej pamäti je neplatný. Dešifrovaný hlavný kľúč uchovávaný pre otvorený index sa zahodí na príslušných cestách uzamknutia a obnovenia vyrovnávacej pamäte.
  • Dešifrované vyrovnávacie pamäte používateľského rozhrania sa vymažú tam, kde ich kontroluje Vaultaire. Čistenie miniatúr a ukážok znižuje zvyškový stav aplikácie bez nároku na kontrolu nad každou kópiou vyrobenou spoločnosťou Swift, iOSalebo iný proces.

Keď sa Vaultaire nabudúce otvorí v zamknutom stave, nakreslíte vzor a aplikácia znova odvodí kľúč trezora predtým, ako bude môcť overiť index a rozbaliť hlavný kľúč. Toto je vyčistenie relácie, nie tvrdenie, že každá kópia prechodnej pamäte dostala preukázateľné viacprechodové vymazanie alebo že a Secure Enclave kľúčový odkaz bol zničený. Zrážka spôsobí iOS obnoviť proces, ale čistiaci kód sa nemôže spustiť po každom náhlom ukončení.

Často kladené otázky

Je AES-256 skutočne neprekonateľný?

AES-256 je štandardizovaná, dôkladne analyzovaná bloková šifra. Žiadny praktický útok na správne implementované AES-256-GCM s náhodným 256-bitovým kľúčom je verejne známy, ale to neznamená, že celý trezor je nerozbitný. Entropia poverenia, PBKDF2 náklady, spracovanie nonce, úschova kľúčov, obnova, stav zariadenia a chyby implementácie zostávajú cestami útoku.

Prečo sa na odvádzanie kľúčov používa PBKDF2?

Používa Vaultaire PBKDF2-HMAC-SHA512 cez CommonCrypto: 600 000 opakovaní pre vzory a 800 000 pre obnovovacie frázy. Odvodenie lokálneho vzoru používa jednu náhodnú soľ uloženú v celom zariadení Keychain. PBKDF2 zvyšuje cenu každého odhadu, ale nepridáva do vzoru entropiu, takže čas útoku závisí od sily poverenia, meranej rýchlosti hardvéru a paralelizmu.

Aké dáta Vaultaire odosiela na svoje servery?

Žiadne. Vaultaire nemá servery, ktoré by prijímali vaše dáta. Ak povolíte zálohu iCloud, vaše šifrované dáta sú uložené vo vašom osobnom účte iCloud: šifrované pred opustením vášho zariadenia kľúčmi, ktoré Apple nevlastní. Spoločnosť Vaultaire nikdy neprijíma, nespracúva ani neukladá žiadne používateľské dáta, šifrované ani inak.

Môže jailbreaknutý iPhone kompromitovať môj trezor?

Útek z väzenia podstatne oslabuje hranicu zariadenia. Vaultaire's AES-GCM operácie prebiehajúce v procese aplikácie cez CryptoKit, takže bajty symetrického kľúča existujú v pamäti aplikácie, kým je otvorený trezor. Kompromis na koreňovej úrovni sa môže zamerať na vstup, pamäť, snímky obrazovky alebo dešifrovaný výstup. Keychain a Data Protection stále pridávajú bariéry, keď je zariadenie uzamknuté, ale Vaultaire netvrdí, že jeho kľúče AES zostávajú vo vnútri izolované Secure Enclave.

Ako sa šifrujú metadáta?

Vaultaire nepoužíva ChaCha20 pre metadáta trezora. názvy súborov, MIME typy, časové pečiatky, údaje miniatúr, štruktúra trezoru a zabalený hlavný kľúč sú chránené v rámci AES-256-GCM overený šifrový text. Použitie jednej overenej konštrukcie zaisťuje konzistentnosť kontrol dôvernosti a integrity v celom formáte úložiska.

Čo sa stane s mojimi kľúčmi, ak aplikácia spadne?

iOS obnoví ukončený proces a ďalšie spustenie vyžaduje nové odomknutie predtým, ako Vaultaire obnoví aktívny stav kľúča. Vaultaire nevytvára rozsah relácie Secure Enclave Referencie AES. Zatiaľ čo jeho obaly kľúčov vyčistia svoje vyrovnávacie pamäte na dealokácii a zamknú cesty prerušia aktívny stav, Swift a iOS neospravedlňujú záruku, že každá prechodná kópia bola pred zlyhaním prepísaná.

Prezrite si základ v akcii

Overené šifrovanie, vrstvené kľúče, drahé odvodenie a žiadny kľúč úschovne v držbe poskytovateľa. Stiahnite si Vaultaire a použite tu opísanú architektúru s jasne uvedenými hranicami zariadení a poverení.

Stiahnuť Vaultaire zadarmo