Věrohodné popření v aplikacích: Co to je a proč na tom záleží

Věrohodné popření v aplikacích: Co to je a proč na tom záleží

Věrohodné popření znamená, že existenci skrytých dat nelze prokázat.


Věrohodné popření je v šifrování vlastnost úložiště, která uživateli dovoluje zpřístupnit jednu sadu dat, aniž by zůstala strukturální stopa dokazující existenci další sady. Tvrzení musí uvést svůj model hrozeb: statický obraz správně doplněného šifrovaného úložiště je něco jiného než živé napadené zařízení, metadata cloudové služby nebo kopie uložené jinde. Nejde jen o funkci skrývání. Závisí na tom, jak spolu fungují šifrování, rozložení dat, doplňování a provozní návrh.

Tento průvodce vysvětluje, jak věrohodné popření v aplikacích funguje, jaký je rozdíl mezi skutečnou kryptografickou popíratelností a kosmetickými režimy návnady, reálné scénáře, kde na tom záleží, a jak hodnotit tvrzení o popíratelnosti.

Co věrohodné popření v šifrování znamená

V běžné řeči věrohodné popření znamená, že něco můžete věrohodně popřít. V kryptografii úložišť je užitečný cíl užší: forenzní analytik šifrovaného úložiště by v rámci uvedeného modelu hrozeb neměl umět odlišit skrytý obsah od nevyužitého doplněného místa. Žádná aplikace nemůže tento slib rozšířit na už otevřený trezor, zaznamenaný vstup, externí kopie ani na každou formu napadení 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 věrohodné 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ý režim návnady

Tohle je zásadní rozdíl, který většina aplikací špatně řeší.

Kosmetický režim návnady (ne skutečná popíratelnost)

Mnoho trezorových aplikací nabízí funkci "návnada" 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 režim návnady existuje a je nakonfigurován.

Forenzní expert, který aplikaci rozumí, tento příznak najde. Nalezení nakonfigurovaného režimu návnady 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č "režim návnady"
  • Konfigurační soubor ukládá, zda je režim návnady zapnutý
  • Databázová tabulka obsahuje seznam ID trezorů s indikátory typu (primární/návnada)
  • Struktura úložiště aplikace se změní, když je režim návnady zapnutý
  • Odinstalování a přeinstalování aplikace odhalí jiné chování, pokud byl režim návnady 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:

  1. Alternativní přihlašovací údaje zpřístupní jen vlastní sadu dat. Systém neuchovává samostatný příznak návnady, který by jeden přihlašovací údaj označil za kamufláž. Neplatné přihlašovací údaje mohou selhat, toto selhání ale nesmí prozradit, zda existuje nezveřejněná sada dat.

  2. Neexistuje žá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.

  3. Žá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.

  4. Ú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.

  5. Š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á návnada 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 (přepínač návnady 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 hrozeb pro úložiště
Architektura vs. funkce Přepínač funkce Architekturní vlastnost

Reálné scénáře, kde na tom záleží

Věrohodné 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 úředník zařízení prohlédnout a požádat o přihlašovací údaje. Pokud návrh skutečně poskytuje popření na úrovni úložiště, jeden přihlašovací údaj může zpřístupnit neškodnou sadu dat, zatímco statickému obrazu chybí strukturální značka, která by skrytý obsah odlišila od výplně. Současné rozložení úložiště Vaultaire dovoluje forenznímu analytikovi s přístupem ke kontejneru aplikace odhadnout počet trezorů, takže tuto záruku neposkytuje.

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 "režimu návnady" v konfiguraci aplikace odhalil existenci skrytého obsahu.

Krádež zařízení

Zloděj s technickými znalostmi se může pokusit vytáhnout data z ukradeného telefonu. Správně doplněné úložiště s možností popření má skrýt, kolik sad dat zabírá společný prostor, i když celková alokace, stav zařízení, zálohy a provozní stopy stále patří do modelu hrozeb. Vaultaire dnes šifruje obsah, počet úložných arén ale stále omezuje, kolik trezorů obsahuje soubory.

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 odděluje přístup podle vzorů a běžné rozhraní nemá viditelný seznam trezorů. Tyto vlastnosti pomáhají při běžném používání aplikace, nesplňují ale všechny požadavky kontrolního seznamu skutečného popření výše.

Nastavené vzory otevírají samostatné šifrované trezory. PBKDF2 odvozuje klíč trezoru ze vzoru a soli společné pro celé zařízení. Nastavený klíč ověří svůj šifrovaný index a rozbalí náhodný hlavní klíč. Nenastavený vzor zobrazí prázdný stav, ne zprávu „nesprávný vzor“.

Místní formát stále dovoluje odhad počtu trezorů. Vaultaire ukládá pro každý trezor jeden kořenový soubor vault_index_<locator>.bin, a to ve fondu 64 nebo více souborů s krycími soubory. Stránky a úložné arény všech trezorů sdílejí jednu složku s náhodnými názvy. Názvy neprozradí vzor, název trezoru ani to, ke kterému trezoru soubor patří. Kdo má ale přístup ke kontejneru aplikace, může stále odhadnout, kolik trezorů obsahuje soubory, protože počet arén tento počet omezuje. Ověření AES-GCM a deterministický název souboru navíc umožňují offline testovat kandidátní klíče trezoru.

Místní úložiště nemá konstantní velikost. Obsah souborů a metadata jsou šifrované a bloky cloudové zálohy používají doplnění velikosti a záznamy návnady. Kořenové soubory leží ve fondu s krycími soubory a krycí arény drží počet arén v určitém pásmu, počet arén, počet stránek katalogu, časy souborů a celková velikost úložiště ale stále prozrazují strukturu.

Existuje stav obnovy a nátlaku. Vaultaire uchovává údaje pro obnovu v databázi Keychain šifrované pomocí AES-GCM. Nátlakový režim smaže indexy, stránky a úložné arény ostatních trezorů na tomto zařízení (prostým odstraněním souborů, bez přepsání), vymaže data pro obnovu a odpojí toto zařízení od synchronizace. Nesmaže cloudové zálohy ani kopie na ostatních zařízeních a doba dokončení závisí na množství místní práce.

Vaultaire proto poskytuje oddělení v rozhraní a šifrované úložiště, ne informačně teoretický důkaz, že žádný další trezor neexistuje. Úložný formát vydaný ve verzi 1.0.17 skrývá, které soubory patří ke kterému trezoru, jeho počet arén ale offline snímku kontejneru aplikace stále dává horní mez počtu trezorů.

Jak hodnotit tvrzení o popíratelnosti

Pokud aplikace tvrdí, že má věrohodné popření, zeptejte se:

  1. Má aplikace přepínač "režim návnady"? Pokud ano, jde o kosmetiku. Forenzní expert přepínač najde.
  2. Má aplikace seznam trezorů nebo databázi? Pokud ano, existenci trezorů lze prokázat.
  3. Lze pokusy ověřovat offline? Ověřený šifrovaný text umožňuje otestovat kandidátní klíč i bez samostatného hashe hesla. Zeptejte se, co omezuje cenu pokusů a zda rozložení úložiště nenabízí levnější otisk klíče.
  4. Mění se spotřeba úložiště s počtem trezorů? Pokud ano, analýza disku může odhadnout počet trezorů.
  5. 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 věrohodné popření legální?

Používání šifrování s věrohodný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 věrohodné popření?

Forenzní analytik, který získá kontejner aplikace Vaultaire, může detekovat šifrované úložiště. Kořenové soubory vault_index_*.bin leží ve fondu 64 nebo více souborů s krycími soubory a stránky i úložné arény všech trezorů sdílejí jednu složku s náhodnými názvy. Názvy souborů neukazují, ke kterému trezoru soubor patří, počet arén ale omezuje, kolik trezorů obsahuje soubory, takže analytik může stále odhadnout, kolik trezorů máte. Soubory neprozrazují názvy trezorů ani obsah v otevřené podobě. Současný návrh tedy skrývá trezory před běžnou navigací, ne před každou forenzní prohlídkou úložiště.

Funguje věrohodné popření proti odhodlanému státnímu aktérovi?

AES-256-GCM poskytuje silnou hranici šifrování obsahu, pokud jsou klíče, nonce a implementace v pořádku. Současné rozložení úložiště Vaultaire tím ale před forenzním analytikem státu popiratelné není: analytik může stále odhadnout počet místních trezorů a útok na živé zařízení může cílit na vzory, klíče, náhledy nebo exporty, dokud je trezor otevřený. Současná funkce odděluje, co různé vzory otevírají v rozhraní; neslibuje, že odhodlaný forenzní analytik nedokáže existenci dalších místních indexů prokázat.

Jaký je rozdíl mezi věrohodným popřením a skrytými trezory?

Skryté trezory jsou trezory, které nejsou vidět v běžném rozhraní aplikace. Silné kryptografické popření je samostatná vlastnost: skrytá data nelze odlišit od nevyužitého doplněného úložiště. Vaultaire dnes poskytuje první vlastnost. Jeho současný formát úložiště ale stále dovoluje forenznímu analytikovi s přístupem ke kontejneru aplikace odhadnout počet trezorů, takže druhou vlastnost neposkytuje.

Lze věrohodné popření používat s cloudovými zálohami?

Vaultaire zapisuje šifrované manifesty zálohy a šifrované části souborů doplněné na jednotnou velikost do soukromé databáze CloudKit uživatele. Náhodné názvy datových záznamů, doplnění částí na 10 MB a záznamy návnady omezují přímé prozrazení obsahu. Počet záznamů, celkový objem, časování a vzorce aktualizací zůstávají viditelnými metadaty služby, takže cloudová záloha nevytváří úložiště s konstantní velikostí, které by bylo informačně teoreticky popiratelné.

Závěr

Silné popření úložiště má forenznímu analytikovi zabránit v tom, aby ve statickém šifrovaném úložišti odlišil skrytá data od doplněného volného místa. Většina aplikací, které tuto funkci uvádějí, nabízí kosmetické režimy návnady s dohledatelnými konfiguračními příznaky. Silnější definice vyžaduje přesný model hrozeb, žádný spočitatelný registr trezorů, žádné prozrazující konfigurační příznaky, stabilní doplňování a šifrované záznamy, které neprozradí, které pozice jsou skutečné.

Vaultaire používá nastavené vzory k oddělení šifrovaných trezorů a názvy i obsah trezorů drží mimo zamčené rozhraní. Jeho současné rozložení úložiště ale při kontrole kontejneru aplikace stále dovoluje odhadnout počet trezorů. Berte to jako skrytí na úrovni rozhraní podložené ověřeným šifrováním, ne jako důkaz, že žádný další trezor neexistuje.