Što čini dokaz bez znanja
Obično nešto dokazati znači pokazati dokaze: upisati lozinku ili predati osobnu iskaznicu. To može otkriti više nego što druga osoba treba znati.
Dokaz bez znanja je kriptografska metoda koja to mijenja. Jedna osoba, dokazivač, pokazuje preciznu tvrdnju drugoj, verifikatoru, bez otkrivanja tajne korištene da bi se ta tvrdnja učinila istinitom. Verifikator saznaje odgovor koji mu je potreban – primjerice, da ispunjavate dobne uvjete – ali ne i vaš rođendan, adresu ili broj dokumenta.
To nije nejasno obećanje privatnosti. Dokaz mora biti osmišljen za jednu točnu tvrdnju, a dobar dizajn čini varanje iznimno malo vjerojatnim.
Primjer špilje
Zamislite špilju s dva puta koji se sastaju iza zaključanih vrata. Vrata se otvaraju samo tajnom riječju. Kažete da to znate, ali ne želite to reći naglas.
Ulazite bilo kojom stazom dok vas prijatelj čeka vani. Vaš prijatelj tada proziva put kojim želi da se vratite. Ako znate riječ, možete otvoriti vrata unutar špilje i vratiti se bilo kojom stazom. Ako pogađate, imate samo 50-50 šanse da budete na traženoj strani.
Ponovite test mnogo puta sa svježim, nepredvidivim izborom. Deset uspješnih rundi ostavlja bleferu oko jedan prema 1000 šanse da mu se posreći. Vaš prijatelj dobiva jake dokaze da znate tu riječ, ali je nikada ne čujete.
Od špiljske priče do pravog softvera
Pravi dokazi koriste se matematikom, a ne špiljom, ali cilj privatnosti je isti. Oni mogu pokazati da transakcija slijedi pravila bez izlaganja svih njezinih detalja. Također mogu dopustiti da jedan mali dokaz služi kao zamjena za veliku seriju provjera, što može ubrzati provjeru nekih sustava.
Digitalne vjerodajnice još su jedna praktična upotreba. Umjesto prijenosa cijelog ID-a na svaku uslugu, dobro osmišljena vjerodajnica mogla bi odgovoriti samo na postavljeno pitanje: "Je li ova osoba starija od 18 godina?" ili "Ima li ovu kvalifikaciju?"
Detalji su važni. Dokaz štiti samo one informacije za čije je skrivanje osmišljen. Okolna aplikacija i dalje može prikupljati podatke, identificirati vas ili negdje drugdje napraviti loš sigurnosni izbor.
Dokaz bez znanja u odnosu na enkripciju bez znanja
Izraz 'nulto znanje' također se koristi u pohrani podataka u oblaku. To je druga ideja. Enkripcija bez znanja znači da davatelj pohrane ne može čitati vaše datoteke jer nema ključeve za dešifriranje.
Dokaz bez znanja odgovara na pitanje bez otkrivanja tajne iza odgovora. Enkripcija bez znanja čuva pohranjene datoteke nečitljivima za pružatelja usluga. Oba mogu poboljšati privatnost, ali nisu zamjenjivi.
Praktična lekcija o privatnosti
Dokazi bez znanja su koristan podsjetnik da za zadatak podijelite samo nužne informacije. Ne čine vas anonimnima niti štite svaki dio aplikacije. Usluga i dalje može znati da ste se povezali, kada ste to učinili, i druge podatke izvan dokaza.
Sealby ne treba dokaze bez znanja jer nema račun ili poslužitelj koji od vas traži da nešto dokažete. Datoteke su šifrirane na vašem iPhoneu. Za svakodnevnu privatnost, praktično pitanje je jednostavno: što ova usluga zapravo treba znati — i može li raditi s manje?