Uvjerljivo nijekanje u aplikacijama: Što je to i zašto je važno
Uvjerljivo nijekanje znači da se postojanje skrivenih podataka ne može dokazati.
Uvjerljivo nijekanje u šifriranju je osobina koja korisniku omogućuje uvjerljivo nijekanje postojanja određenih šifriranih podataka. Šifrirano pohranište izgleda kao da sadrži samo podatke koje se korisnik odlučio otkriti. Forenzički stručnjak, osoba koja vrši pritisak niti itko s fizičkim pristupom uređaju ne može dokazati postojanje dodatnih skrivenih podataka. Nije to funkcija skrivanja. To je matematička osobina samog šifriranja.
Ovaj vodič objašnjava kako uvjerljivo nijekanje u aplikacijama funkcionira, koja je razlika između pravog kriptografskog nijekanja i kozmetičkih mamac načina rada, stvarni scenariji u kojima je to važno i kako procjenjivati tvrdnje o nijekanju.
Što uvjerljivo nijekanje u šifriranju znači
U svakodnevnom jeziku uvjerljivo nijekanje znači da se nešto može uvjerljivo poricati. U kriptografiji znači da se postojanje skrivenih podataka ne može dokazati, čak ni od strane stručnjaka s neograničenim vremenom i forenzičkim alatima.
Ovaj koncept nastao je u području šifriranja diska. TrueCrypt (i njegov nasljednik VeraCrypt) uveo je skriveni svezak: šifrirani svezak unutar drugog šifriranog sveska. Jedna lozinka otkriva vanjski svezak s nevinim sadržajem. Druga lozinka otkriva unutarnji skriveni svezak s osjetljivim datotekama. Forenzički stručnjak ne može utvrditi postoji li skriveni svezak jer je neiskorišteni prostor u vanjskom svezku ispunjen nasumičnim podacima nerazlučivim od šifriranih podataka.
Za aplikacije uvjerljivo nijekanje znači da različite vjerodajnice (lozinke, PIN-ovi, uzorci) otvaraju različite skupove podataka i ne postoje metapodaci, registar, konfiguracijska zastavica niti strukturalni artefakt koji bi otkrio postojanje dodatnih skupova podataka.
Pravo nijekanje vs. kozmetički mamac način rada
Ovo je ključna razlika koju većina aplikacija pogrešno rješava.
Kozmetički mamac način rada (nije pravo nijekanje)
Mnoge trezor aplikacije nude funkciju „mamca" ili „lažnog PIN-a". Postavite sekundarni PIN koji otvara zasebni prostor s drugim fotografijama. Problem: te aplikacije tipično pohranjuju booleovu zastavicu, zapis baze podataka ili konfiguracijsku datoteku koja kaže da mamac način rada postoji i konfiguriran je.
Forenzički stručnjak koji razumije aplikaciju pronaći će tu zastavicu. Pronalazak konfiguriranog mamac načina rada dokazuje da skriveni podaci postoje. Nijekanje je kozmetičko — funkcionira protiv površnog znatiželjnika, ali ne uspijeva pod forenzičkim ispitivanjem.
Znakovi kozmetičnog nijekanja:
- Aplikacija ima preklopku „mamac način rada" u postavkama
- Konfiguracijska datoteka pohranjuje je li mamac način rada uključen
- Tablica baze podataka sadrži popis ID-ova trezora s indikatorima vrste (primarna/mamac)
- Struktura pohrane aplikacije se mijenja kada je mamac način rada uključen
- Deinstaliranje i reinstaliranje aplikacije otkriva drugačije ponašanje ako je mamac način rada bio konfiguriran
Pravo kriptografsko nijekanje
Pravo nijekanje je arhitekturna osobina, ne preklopka funkcije. Šifrirano pohranište mora biti dizajnirano tako da:
Svaka vjerodajnica otvara valjani skup podataka. Ne postoji pogreška „pogrešna lozinka" za vjerodajnice koje otvaraju skrivene trezore. Svaka valjana kombinacija uzorka/lozinke stvara ključ koji dešifrira nešto smisleno.
Ne postoji registar trezora. Aplikacija ne može izračunati koliko trezora postoji. Ne postoji broj, indeks niti popis ID-ova trezora. Forenzički stručnjak koji ispituje pohranu aplikacije pronalazi nediferencirani skup šifriranih podataka.
Nikakve konfiguracijske zastavice ne otkrivaju skrivene trezore. Ne postoji booleova vrijednost, zapis baze podataka niti datoteka preferencija koja bi naznačavala postoje li dodatni trezori.
Pohrana je ispunjena ispunjavajućim podacima. Ukupni iskorišteni kapacitet pohrane ne mijenja se prema broju trezora niti datoteka. Bez ispune stručnjak bi mogao procijeniti broj trezora iz ukupnog volumena šifriranih podataka u usporedbi s vidljivim sadržajem.
Šifrirani podaci nerazlučivi su od nasumičnog šuma. Ne postoje granice datoteka, zaglavlja niti strukturalni markeri koji bi otkrivali gdje podaci jednog trezora završavaju i počinju podaci drugog.
| Osobina | Kozmetički mamac | Pravo nijekanje |
|---|---|---|
| Zasebni podaci po vjerodajnici | Da | Da |
| Nema registra trezora | Ne (baza podataka prati trezore) | Da |
| Nema konfiguracijskih zastavica | Ne (mamac preklopka je pohranjena) | Da |
| Ispunjavajući podaci u pohrani | Rijetko | Da |
| Izdrži forenzičko ispitivanje | Ne | Da |
| Arhitektura vs. funkcija | Preklopka funkcije | Arhitekturna osobina |
Stvarni scenariji u kojima je to važno
Uvjerljivo nijekanje nije teoretska stvar. Rješava dokumentirane, ponavljajuće stvarne situacije.
Granični prijelazi
U Sjedinjenim Državama Carinska i granična zaštita (CBP) može zakonski zahtijevati pristup uređaju na granicama. Sudovi su odlučili da granični agenti mogu zahtijevati lozinke za pregled uređaja. U ovom scenariju korisnik s pravim uvjerljivim nijekanjem može dati uzorak ili lozinku koja otvara trezor s nevinim sadržajem. Stručnjak ne može dokazati da postoje dodatni trezori.
Nasilje u obitelji i prisila u vezama
Osoba u nasilnoj vezi možda treba pohraniti dokaze (fotografije ozljeda, prijetnje, pravne dokumente) na uređaju koji agresor nadzire. Ako agresor zahtijeva pristup trezoru, korisnik može otvoriti trezor s neosjetljivim sadržajem. Bez pravog nijekanja „mamac način rada" zastavica u konfiguraciji aplikacije bi otkrila postojanje skrivenog sadržaja.
Krađa uređaja
Lopov s tehničkim znanjem može pokušati ekstrahirati podatke s ukradenog telefona. Uz pravo nijekanje skup šifriranih podataka ne otkriva ništa o broju trezora, njihovom sadržaju niti svrsi.
Pravna i novinarska zaštita
Novinari koji štite izvore, odvjetnici koji štite spise klijenata i aktivisti u autoritarnim režimima suočavaju se sa situacijama u kojima se sadržaj uređaja može iznuditi. Pravo nijekanje pruža uvjerljivu obranu protiv oduzimanja podataka.
Kako Vaultaire implementira uvjerljivo nijekanje
Vaultaire postiže pravo kriptografsko uvjerljivo nijekanje kroz arhitekturni dizajn:
Svaki uzorak otvara drugi trezor. Rešetka 5x5 stvara ključ putem PBKDF2. Drugačiji uzorak stvara drugačiji ključ. Ne postoji glavni ključ, nema popisa trezora i nema načina da aplikacija izračuna postojeće trezore. Crtanje uzorka bez pridruženog trezora jednostavno otvara prazan trezorski prostor — ne postoji pogreška „pogrešan uzorak".
Nema registra trezora. Aplikacija nema bazu podataka s popisom trezora, njihovih naziva niti broja. Svi šifrirani podaci postoje u jednom nediferenciranom skupu pohrane. Forenzički stručnjak s neograničenim pristupom datotečnom sustavu uređaja pronalazi šifrirane blokove bez strukturalnih markera koji bi označavali granice trezora.
Ispunjavajući podaci u pohrani. Ukupna veličina pohrane ostaje konstantna bez obzira na broj trezora ili datoteka, čime se onemogućuje analiza korištenja diska.
Nikakve konfiguracijske zastavice. Ne postoji datoteka postavki, zapis preferencija niti zapis baze podataka koji bi otkrivao koliko trezora postoji ili je li određeni uzorak korišten.
Prisilni način rada. Korisnici mogu označiti jedan trezor kao prisilni trezor. Crtanje tog uzorka otvara trezor normalno, a u isto vrijeme tiho i nepovratno uništava kriptografske soli za sve ostale trezore. Uništavanje je neopozivo, ne ostavlja forenzički trag i traje manje od sekunde.
Kako procjenjivati tvrdnje o nijekanju
Ako aplikacija tvrdi da ima uvjerljivo nijekanje, pitajte:
- Ima li aplikacija preklopku „mamac način rada"? Ako da, radi se o kozmetici. Forenzički stručnjak će pronaći preklopku.
- Ima li aplikacija popis trezora ili bazu podataka? Ako da, postojanje trezora se može dokazati.
- Postoji li pogreška „pogrešna lozinka"? Ako da, aplikacija može razlikovati valjane i nevaljane vjerodajnice, što znači da pohranjuje nešto što verificira vjerodajnice.
- Mijenja li se korištenje pohrane s brojem trezora? Ako da, analiza diska može procijeniti broj trezora.
- Može li aplikacija izračunati trezore? Ako aplikacija može prikazati popis vaših trezora, taj popis postoji na uređaju i može se pronaći.
Često postavljana pitanja
Je li uvjerljivo nijekanje legalno?
Korištenje šifriranja s uvjerljivim nijekanjem je legalno u većini demokratskih zemalja. Ne postoji zakon koji zabranjuje imati šifrirane podatke na uređaju čije se postojanje ne može dokazati. U nekim jurisdikcijama tijela mogu zahtijevati otkrivanje ključeva šifriranja (npr. UK prema RIPA zakonu ili Australija prema zakonu Assistance and Access Act). Pravno pitanje može li se provoditi otkrivanje ključa za podatke čije se postojanje ne može dokazati ostaje otvoreno i još se razvija.
Mogu li forenzički alati otkriti uvjerljivo nijekanje?
Profesionalni forenzički alati (Cellebrite, GrayKey, Magnet AXIOM) mogu utvrditi da je Vaultaire instaliran i da šifrirani podaci postoje. Ne mogu utvrditi koliko trezora postoji, što sadrže ni postoje li dodatni trezori iza onih otkrivenih. Šifrirani podaci nerazlučivi su od nasumičnog šuma. To je verificirano dizajnom, ne samo tvrdnjom u pravilima privatnosti.
Funkcionira li uvjerljivo nijekanje protiv odlučnog državnog aktera?
Protiv kriptoanalize (probijanje šifriranja): da. AES-256 ne može probiti nijedan poznati kapacitet državnog aktera. Protiv prisile (prisiljavanja na otkrivanje uzoraka): uvjerljivo nijekanje znači da možete otkriti jedan trezor i uvjerljivo poricati postojanje ostalih. Protiv eksploatacije uređaja (korištenja zero-day za ekstrakciju podataka s uređaja koji radi): ako je uređaj otključan i trezor otvoren, dešifrirani podaci su u memoriji i teoretski dostupni. Uvjerljivo nijekanje štiti podatke u mirovanju, ne podatke pri aktivnoj upotrebi.
Koja je razlika između uvjerljivog nijekanja i skrivenih trezora?
Skriveni trezori su trezori koji nisu vidljivi u sučelju aplikacije. Uvjerljivo nijekanje je osobina da se postojanje skrivenih trezora ne može dokazati. Aplikacija može imati skrivene trezore bez uvjerljivog nijekanja ako ih registar trezora ili konfiguracijska zastavica otkrije. Vaultaire pruža oboje: trezori su standardno skriveni i njihovo postojanje je po principu nedokazivo.
Može li se uvjerljivo nijekanje koristiti s cloud sigurnosnim kopijama?
U Vaultaireu šifrirane iCloud sigurnosne kopije sadrže cijeli skup šifriranih podataka. Sigurnosna kopija je jedan šifrirani blob. Čuva uvjerljivo nijekanje jer sama sigurnosna kopija ne sadrži nikakvu strukturu na razini trezora — radi se o istom nediferenciranom šifriranom skupu kao pohrana na uređaju.
Zaključak
Uvjerljivo nijekanje u šifriranju znači da se postojanje skrivenih podataka ne može dokazati, čak ni pod forenzičkim ispitivanjem. Većina aplikacija koje tvrde tu funkciju nudi kozmetičke mamac načine rada s otkrivenim konfiguracijskim zastavicama. Pravo nijekanje zahtijeva nikakav registar trezora, nikakve konfiguracijske zastavice, ispunjavajuće podatke u pohrani i arhitekturno nerazlučive šifrirane podatke.
Vaultaire implementira pravo uvjerljivo nijekanje kao arhitekturnu osobinu: svaki uzorak otvara drugi trezor, ne postoji popis trezora, pohrana je ispunjena ispunjavajućim podacima i nijedna druga šifrirana trezor aplikacija to ne postiže.