Uvjerljivo nijekanje u aplikacijama: Što je to i zašto je važno

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 poricanje u enkripciji svojstvo je pohrane koje korisniku omogućuje otkrivanje jednog skupa podataka bez ostavljanja strukturnog artefakta koji dokazuje postojanje drugog skupa podataka. Tvrdnja mora navesti svoj model prijetnje: statična slika ispravno podstavljene šifrirane trgovine razlikuje se od živog, kompromitiranog uređaja, metapodataka usluge u oblaku ili kopija koje se čuvaju negdje drugdje. Ovo je više od značajke skrivanja. Ovisi o šifriranju, izgledu, podlozi i operativnom dizajnu koji rade zajedno.

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 poricanje znači da nešto možete vjerodostojno poreći. U kriptografiji pohrane korisni cilj je uži: ispitivač kriptirane pohrane ne bi trebao moći razlikovati skriveni sadržaj od neiskorištenog podstavljenog prostora unutar navedenog modela prijetnje. Nijedna aplikacija ne može proširiti to obećanje na već otvoreni trezor, snimljeni unos, vanjske kopije ili svaki oblik ugrožavanja uređaja.

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:

  1. Alternativne vjerodajnice otkrivaju samo vlastiti skup podataka. Sustav ne drži zasebnu oznaku mamac koja identificira jednu vjerodajnicu kao kamuflažu. Nevažeće vjerodajnice mogu biti neuspješne, ali ta neuspjeh ne smije otkriti postoji li neotkriveni skup podataka.

  2. 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.

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

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

  5. Š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
Skriva alternativnu pohranu u statičnoj slici Ne Da, unutar navedenog modela prijetnji pohrane
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

Na graničnom prijelazu ispitivač može pregledati uređaj i zatražiti vjerodajnicu. Ako dizajn doista omogućuje poricanje na razini pohrane, jedna vjerodajnica može otkriti bezopasni skup podataka dok statičnoj slici nedostaje strukturni marker koji razlikuje skriveni sadržaj od podloge. Vaultaireov trenutni raspored s jednom indeksnom datotekom po trezoru ne pruža to jamstvo ispitivaču s pristupom spremniku aplikacije.

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 vještinama mogao bi pokušati izvući podatke iz ukradenog telefona. Ispravno podstavljena pohrana koja se može odbiti ima za cilj prikriti koliko skupova podataka zauzima skup, iako ukupna dodjela, stanje uređaja, sigurnosne kopije i operativni tragovi i dalje pripadaju modelu prijetnji. Vaultaire trenutno šifrira sadržaj, ali izlaže jedan prebrojivi lokalni indeks po konfiguriranom trezoru.

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.

Što Vaultaire implementira danas

Vaultaire implementira pristup odvojen uzorcima i normalno sučelje bez vidljivog popisa trezora. Ta svojstva pomažu tijekom uobičajene upotrebe aplikacije, ali ne ispunjavaju sve zahtjeve na gornjem popisu za poricanje autentičnosti.

Konfigurirani uzorci otvaraju zasebne šifrirane trezore. PBKDF2 izvodi ključ trezora iz uzorka i soli za cijeli uređaj. Konfigurirani ključ provjerava autentičnost svog šifriranog indeksa i odmotava nasumični glavni ključ. Nekonfigurirani uzorak prikazuje prazno stanje umjesto poruke "netočan uzorak".

Lokalni format je nabrojiv. Vaultaire pohranjuje jedan vault_index_<fingerprint>.bin datoteka po trezoru. Otisak prsta ne otkriva uzorak ili naziv trezora, ali netko s pristupom spremniku aplikacije može prebrojati datoteke indeksa. AES-GCM provjera autentičnosti i deterministički naziv datoteke također pružaju izvanmrežni test za kandidatske ključeve trezora.

Lokalna pohrana nije stalne veličine. Sadržaj datoteke i metapodaci su kriptirani, a dijelovi sigurnosne kopije u oblaku koriste dopunjavanje veličine i lažne zapise. Lokalni spremnik aplikacije ne rezervira fiksni skup pravih i lažnih utora trezora, tako da ukupna pohrana i broj indeksa mogu otkriti strukturu.

Postoji stanje oporavka i prisile. Vaultaire čuva informacije o oporavku u AES-GCM šifrirano Keychain baza podataka. Način prisile uklanja lokalne indekse i mapiranja oporavka za trezore bez prisile i izolira taj uređaj od sinkronizacije. Ne briše sigurnosne kopije u oblaku, kopije na ravnopravnim uređajima ili svaki dijeljeni šifrirani blob, a vrijeme dovršetka ovisi o obavljenom lokalnom poslu.

Vaultaire stoga pruža segmentaciju sučelja i šifriranu pohranu, a ne informacijsko-teorijski dokaz da dodatni trezor ne postoji. Budući katalog fiksnog kapaciteta s pravim i lažnim utorima koji se ne razlikuju bit će potreban za skrivanje lokalnog broja trezora iz izvanmrežne snimke spremnika aplikacije.

Kako procjenjivati tvrdnje o nijekanju

Ako aplikacija tvrdi da ima uvjerljivo nijekanje, pitajte:

  1. Ima li aplikacija preklopku „mamac način rada"? Ako da, radi se o kozmetici. Forenzički stručnjak će pronaći preklopku.
  2. Ima li aplikacija popis trezora ili bazu podataka? Ako da, postojanje trezora se može dokazati.
  3. Mogu li se nagađanja provjeriti izvan mreže? Autentificirani šifrirani tekst može potvrditi valjanost ključa kandidata bez zasebnog raspršivanja lozinke. Pitajte što ograničava troškove pogađanja i nudi li izgled pohrane jeftiniji otisak ključa.
  4. Mijenja li se korištenje pohrane s brojem trezora? Ako da, analiza diska može procijeniti broj trezora.
  5. 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?

Ispitivač koji dobije Vaultaireov spremnik aplikacije može otkriti šifriranu pohranu i prebrojati vault_index_*.bin datoteke. Datoteke ne otkrivaju nazive trezora ili sadržaj otvorenog teksta, ali njihov broj otkriva broj lokalnih šifriranih indeksa. Sadašnji dizajn stoga skriva trezore od normalne navigacije, a ne od svake forenzičke inspekcije skladišta.

Funkcionira li uvjerljivo nijekanje protiv odlučnog državnog aktera?

AES-256-GCM pruža snažnu granicu enkripcije sadržaja kada su ključevi, nonce i implementacija ispravni. To ne čini Vaultaireov trenutni raspored pohrane nemogućim ispitivaču nacionalne države: lokalni indeksni broj ostaje vidljiv, a živi kompromis može ciljati uzorke, ključeve, preglede ili izvoze dok je trezor otvoren. Trenutna značajka odvaja ono što se različiti uzorci otvaraju u sučelju; ne obećava da odlučan ispitivač ne može dokazati postojanje dodatnih lokalnih indeksa.

Koja je razlika između uvjerljivog nijekanja i skrivenih trezora?

Skriveni trezori su trezori koji nisu vidljivi u uobičajenom sučelju aplikacije. Snažno kriptografsko poricanje zasebno je svojstvo da se skriveni podaci ne mogu razlikovati od neiskorištene podstavljene pohrane. Vaultaire trenutno nudi prvu nekretninu. Njegov format jedne indeksne datoteke po trezoru ne pruža drugu u odnosu na ispitivača s pristupom spremniku aplikacije.

Može li se uvjerljivo nijekanje koristiti s cloud sigurnosnim kopijama?

Vaultaire piše kriptirane sigurnosne kopije manifesta i podstavljene kriptirane dijelove datoteka u korisnikovu privatnu CloudKit baza podataka. Nasumični nazivi zapisa, jednoobrazni tipovi zapisa, popunjavanje dijelova od 10 MB i lažni zapisi smanjuju izravno otkrivanje sadržaja. Broj zapisa, ukupni volumen, vrijeme i obrasci ažuriranja ostaju vidljivi metapodaci usluge, tako da sigurnosna kopija u oblaku ne stvara pohranu konstantne veličine, informacije teoretski zanijekanu.

Zaključak

Snažno poricanje pohrane ima za cilj spriječiti ispitivača da razlikuje skrivene podatke od podstavljenog slobodnog prostora u statičkoj šifriranoj pohrani. Većina aplikacija koje zahtijevaju ovu značajku nudi kozmetičke načine rada s vidljivim konfiguracijskim zastavicama. Ispunjavanje jače definicije zahtijeva precizan model prijetnji, nebrojivi registar trezora, neotkrivajuće konfiguracijske zastavice, stabilno punjenje i šifrirane zapise koji ne otkrivaju koji su utori stvarni.

Vaultaire koristi konfigurirane uzorke za odvajanje šifriranih trezora i čuva nazive i sadržaj trezora izvan zaključanog sučelja. Trenutačni raspored pohrane još uvijek izlaže šifrirani broj indeksa pregledu spremnika aplikacije. Tretirajte to kao prikrivanje na razini sučelja potpomognuto provjerenom enkripcijom, a ne kao dokaz da ne postoji dodatni trezor.