Verohodné popření v aplikacích: Co to je a proč na tom záleží
Verohodné popření znamená, že existenci skrytých dat nelze prokázat.
Věrohodné popření v šifrování je vlastnost úložiště, která uživateli umožňuje odhalit jednu datovou sadu, aniž by zanechal strukturální artefakt, který dokazuje, že existuje jiná datová sada. Nárok musí pojmenovat svůj model ohrožení: statický obraz řádně vyplněného šifrovaného úložiště se liší od živého, kompromitovaného zařízení, metadat cloudové služby nebo kopií uchovávaných jinde. To je více než jen skrývání funkce. Závisí to na šifrování, rozložení, odsazení a operačním designu, které spolupracují.
Tento průvodce vysvětluje, jak verohodné popření v aplikacích funguje, jaký je rozdíl mezi skutečnou kryptografickou popíratelností a kosmetickými decoy režimy, reálné scénáře, kde na tom záleží, a jak hodnotit tvrzení o popíratelnosti.
Co verohodné popření v šifrování znamená
V běžném jazyce věrohodné popření znamená, že můžete něco věrohodně popřít. V kryptografii úložiště je užitečný cíl užší: zkoušející šifrovaného úložiště by neměl být schopen rozlišit skrytý obsah od nevyužitého polstrovaného prostoru v rámci uvedeného modelu hrozby. Žádná aplikace nemůže rozšířit tento slib na již otevřený trezor, zaznamenaný vstup, externí kopie nebo jakoukoli formu kompromisu zařízení.
Tento koncept vznikl v oblasti šifrování disků. TrueCrypt (a jeho nástupce VeraCrypt) zavedl skrytý svazek: šifrovaný svazek uvnitř jiného šifrovaného svazku. Jedno heslo odhalí vnější svazek s nevinným obsahem. Jiné heslo odhalí vnitřní skrytý svazek s citlivými soubory. Forenzní expert nemůže zjistit, zda skrytý svazek existuje, protože nevyužité místo ve vnějším svazku je vyplněno náhodnými daty nerozeznatelný od šifrovaných dat.
Pro aplikace verohodné popření znamená, že různé přihlašovací údaje (hesla, PINy, vzory) otevírají různé datové sady a neexistují žádná metadata, registr, konfigurační příznak ani strukturální artefakt, který by odhalil existenci dalších datových sad.
Skutečná popíratelnost vs. kosmetický decoy režim
Tohle je zásadní rozdíl, který většina aplikací špatně řeší.
Kosmetický decoy režim (ne skutečná popíratelnost)
Mnoho trezorových aplikací nabízí funkci "decoy" nebo "falešný PIN". Nastavíte sekundární PIN, který otevře oddělený prostor s jinými fotografiemi. Problém: tyto aplikace typicky ukládají boolean příznak, databázový záznam nebo konfigurační soubor, který říká, že decoy režim existuje a je nakonfigurován.
Forenzní expert, který aplikaci rozumí, tento příznak najde. Nalezení nakonfigurovaného decoy režimu dokazuje, že skrytá data existují. Popíratelnost je kosmetická -- funguje proti povrchnímu zvědavci, ale selže při forenzním zkoumání.
Znaky kosmetické popíratelnosti:
- Aplikace má v nastavení přepínač "decoy režim"
- Konfigurační soubor ukládá, zda je decoy režim zapnutý
- Databázová tabulka obsahuje seznam ID trezorů s indikátory typu (primární/decoy)
- Struktura úložiště aplikace se změní, když je decoy režim zapnutý
- Odinstalování a přeinstalování aplikace odhalí jiné chování, pokud byl decoy režim nakonfigurován
Skutečná kryptografická popíratelnost
Skutečná popíratelnost je architekturní vlastnost, ne přepínač funkce. Šifrované úložiště musí být navrženo tak, aby:
Alternativní přihlašovací údaje odhalují pouze vlastní datovou sadu. Systém neuchovává samostatnou návnadu, která identifikuje jedno pověření jako kamufláž. Neplatné přihlašovací údaje mohou selhat, ale toto selhání nesmí odhalit, zda existuje nezveřejněná datová sada.
Neexistoval žádný registr trezorů. Aplikace nemůže vypočítat, kolik trezorů existuje. Neexistuje počet, index ani seznam ID trezorů. Forenzní expert zkoumající úložiště aplikace najde nediferencovaný pool šifrovaných dat.
Žádné konfigurační příznaky neodhalují skryté trezory. Neexistuje žádný boolean, databázový záznam ani soubor předvoleb, který by ukazoval, zda existují další trezory.
Úložiště je vyplněno výplňovými daty. Celková využitá kapacita úložiště se nemění podle počtu trezorů ani souborů. Bez výplně by expert mohl odhadnout počet trezorů z celkového objemu šifrovaných dat v porovnání s viditelným obsahem.
Šifrovaná data jsou k nerozeznání od náhodného šumu. Neexistují hranice souborů, záhlaví ani strukturální markery, které by odhalily, kde data jednoho trezoru končí a začínají data druhého.
| Vlastnost | Kosmetický decoy | Skutečná popíratelnost |
|---|---|---|
| Oddělená data na přihlašovací údaj | Ano | Ano |
| Žádný registr trezorů | Ne (databáze sleduje trezory) | Ano |
| Žádné konfigurační příznaky | Ne (decoy přepínač je uložen) | Ano |
| Výplňová data v úložišti | Zřídka | Ano |
| Skryje alternativní úložiště ve statickém obrazu | Ne | Ano, v rámci uvedeného modelu ohrožení úložiště |
| Architektura vs. funkce | Přepínač funkce | Architekturní vlastnost |
Reálné scénáře, kde na tom záleží
Verohodné popření není teoretická záležitost. Řeší dokumentované, opakující se reálné situace.
Hraniční přechody
Na hraničním přechodu může zkoušející zkontrolovat zařízení a požádat o pověření. Pokud návrh skutečně poskytuje popření na úrovni úložiště, jeden pověření může odhalit neškodnou sadu dat, zatímco statický obrázek postrádá strukturální značku, která odlišuje skrytý obsah od vycpávky. Současné uspořádání Vaultaire s jedním indexem-souborem-na-úložiště tuto záruku neposkytuje zkoušejícímu s přístupem ke kontejneru aplikace.
Domácí násilí a nátlakové vztahy
Někdo v násilném vztahu může potřebovat ukládat důkazy (fotografie zranění, výhružné zprávy, právní dokumenty) na zařízení, které agresor sleduje. Pokud agresor požaduje přístup k trezoru, uživatel může otevřít trezor s necitlivým obsahem. Bez skutečné popíratelnosti by příznak "decoy režimu" v konfiguraci aplikace odhalil existenci skrytého obsahu.
Krádež zařízení
Zloděj s technickými dovednostmi se může pokusit získat data z ukradeného telefonu. Účelem řádně vycpaného popíratelného úložiště je skrýt, kolik datových sad zabírá fond, ačkoli celková alokace, stav zařízení, zálohy a provozní trasování stále patří do modelu hrozeb. Vaultaire aktuálně šifruje obsah, ale zpřístupňuje jeden spočítatelný místní index na nakonfigurovaný vault.
Právní a novinářská ochrana
Novináři chránící zdroje, právníci chránící klientské spisy a aktivisté v autoritářských režimech čelí situacím, kdy lze obsah zařízení vynutit. Skutečná popíratelnost poskytuje věrohodnou obranu proti zabavení dat.
Co dnes Vaultaire implementuje
Vaultaire implementuje vzorově oddělený přístup a normální rozhraní bez viditelného seznamu úschoven. Tyto vlastnosti pomáhají při běžném používání aplikace, ale nesplňují všechny požadavky ve výše uvedeném kontrolním seznamu pro popření skutečného stavu.
Nakonfigurované vzory otevírají samostatné šifrované vaulty. PBKDF2 odvozuje klíč trezoru ze vzoru a soli pro celé zařízení. Nakonfigurovaný klíč ověří svůj zašifrovaný index a rozbalí náhodný hlavní klíč. Nekonfigurovaný vzor zobrazuje spíše prázdný stav než zprávu „nesprávný vzor“.
Místní formát je vyčíslitelný. Vaultaire jeden ukládá vault_index_<fingerprint>.bin soubor na trezor. Otisk prstu neodhalí vzor nebo název úložiště, ale někdo s přístupem ke kontejneru aplikace může indexové soubory spočítat. AES-GCM autentizace a deterministický název souboru také poskytují offline test pro kandidátské klíče úschovny.
Místní úložiště nemá konstantní velikost. Obsah souboru a metadata jsou zašifrovány a bloky cloudové zálohy používají výplň velikosti a záznamy návnady. Kontejner místní aplikace nevyhrazuje pevný fond skutečných a fiktivních slotů trezoru, takže celkový počet úložiště a indexů může odhalit strukturu.
Existuje stav zotavení a nátlaku. Vaultaire uchovává informace o obnově v AES-GCM zašifrované Keychain databáze. Nátlakový režim odstraní místní indexy a mapování obnovy pro nenátlakové trezory a izoluje toto zařízení od synchronizace. Nevymaže cloudové zálohy, kopie na peer zařízeních ani každý sdílený šifrovaný objekt blob a doba dokončení závisí na provedené místní práci.
Vaultaire proto poskytuje rozčlenění rozhraní a šifrované úložiště, nikoli informačně teoretický důkaz, že žádný další vault neexistuje. Budoucí katalog s pevnou kapacitou s nerozeznatelnými skutečnými a fiktivními sloty by byl nutný ke skrytí místního počtu úschoven před offline snímkem kontejneru aplikací.
Jak hodnotit tvrzení o popíratelnosti
Pokud aplikace tvrdí, že má verohodné popření, zeptejte se:
- Má aplikace přepínač "decoy režim"? Pokud ano, jde o kosmetiku. Forenzní expert přepínač najde.
- Má aplikace seznam trezorů nebo databázi? Pokud ano, existenci trezorů lze prokázat.
- Lze odhady ověřit offline? Ověřený šifrovaný text může ověřit kandidátský klíč bez samostatného hash hesla. Zeptejte se, co omezuje odhadované náklady a zda rozložení úložiště nabízí levnější otisk klíče.
- Mění se spotřeba úložiště s počtem trezorů? Pokud ano, analýza disku může odhadnout počet trezorů.
- Dokáže aplikace vypočítat trezory? Pokud aplikace umí zobrazit seznam vašich trezorů, tento seznam existuje v zařízení a je objevitelný.
Nejčastější otázky
Je verohodné popření legální?
Používání šifrování s verohodným popřením je legální ve většině demokratických zemí. Neexistuje žádný zákon zakazující mít v zařízení šifrovaná data, jejichž existenci nelze prokázat. V některých jurisdikcích mohou orgány vyžadovat sdělení šifrovacích klíčů (například UK podle zákona RIPA nebo Austrálie podle zákona Assistance and Access Act). Právní otázka, zda lze vynucovat sdělení klíče k datům, jejichž existence nelze prokázat, zůstává otevřená a stále se vyvíjí.
Dokážou forenzní nástroje odhalit verohodné popření?
Zkoušející, který získá kontejner aplikace Vaultaire, může detekovat šifrované úložiště a počet vault_index_*.bin soubory. Soubory nezveřejňují názvy vaultů ani obsah prostého textu, ale jejich počet odhaluje počet místních zašifrovaných indexů. Současný návrh tedy skrývá trezory před běžnou navigací, nikoli před každou inspekcí forenzního úložiště.
Funguje verohodné popření proti odhodlanému státnímu aktérovi?
AES-256-GCM poskytuje silnou hranici šifrování obsahu, když jsou klíče, nonces a implementace v pořádku. To neznamená, že současné rozložení úložiště Vaultaire bude pro státního zkoušejícího popřeno: počet místních indexů zůstává viditelný a živý kompromis může cílit na vzory, klíče, náhledy nebo exporty, když je trezor otevřený. Aktuální funkce odděluje, jaké různé vzory se otevírají v rozhraní; neslibuje, že odhodlaný zkoušející nemůže prokázat existenci dalších lokálních indexů.
Jaký je rozdíl mezi verohodným popřením a skrytými trezory?
Skryté trezory jsou trezory, které nejsou viditelné v běžném rozhraní aplikace. Silná kryptografická popření je samostatnou vlastností, která spočívá v tom, že skrytá data nelze odlišit od nepoužívaného polstrovaného úložiště. Vaultaire aktuálně poskytuje první nemovitost. Jeho formát jednoho indexového souboru na trezor neposkytuje druhý proti zkoušejícímu s přístupem ke kontejneru aplikace.
Lze verohodné popření používat s cloudovými zálohami?
Vaultaire zapisuje zašifrované manifesty zálohy a vycpané zašifrované části souborů do soukromí uživatele CloudKit databáze. Náhodné názvy záznamů, jednotné typy záznamů, 10 MB chunk padding a klamné záznamy snižují přímé odhalení obsahu. Počet záznamů, celkový objem, načasování a vzory aktualizací zůstávají viditelnými metadaty služby, takže zálohování v cloudu nevytváří úložiště konstantní velikosti, které lze teoreticky popírat.
Závěr
Silné odepření úložiště má za cíl zabránit zkoušejícímu rozlišovat skrytá data od polstrovaného volného místa ve statickém šifrovaném úložišti. Většina aplikací, které si tuto funkci nárokují, nabízí kosmetické režimy návnady se zjistitelnými konfiguračními příznaky. Splnění silnější definice vyžaduje přesný model hrozby, žádný počitatelný registr trezorů, žádné odhalující konfigurační příznaky, stabilní výplň a šifrované záznamy, které neodhalují, které sloty jsou skutečné.
Vaultaire používá nakonfigurované vzory k oddělení šifrovaných vaultů a udržuje názvy a obsah vaultů mimo uzamčené rozhraní. Jeho aktuální rozložení úložiště stále vystavuje počet zašifrovaných indexů kontrole kontejnerů aplikací. Považujte to za utajení na úrovni rozhraní podporované ověřeným šifrováním, nikoli jako důkaz, že neexistuje žádný další trezor.