Hva et nullkunnskapsbevis gjør
Vanligvis betyr å bevise noe å vise bevisene: å skrive inn et passord eller overlevere et ID-kort. Det kan avsløre mer enn den andre personen trenger å vite.
Et nullkunnskapsbevis er en kryptografisk metode som endrer dette. En person, beviseren, demonstrerer en presis påstand for en annen, verifikatoren, uten å avsløre hemmeligheten som ble brukt for å gjøre påstanden sann. Verifikatoren lærer svaret de trenger – for eksempel at du oppfyller et alderskrav – men ikke fødselsdagen din, adressen din eller dokumentnummeret ditt.
Det er ikke et vagt løfte om personvern. Et bevis må utformes for én nøyaktig påstand, og gode design gjør juks overveldende usannsynlig.
Huleeksemplet
Se for deg en hule med to stier som møtes bak en låst dør. Døren åpnes bare med et hemmelig ord. Du sier du vet det, men du vil ikke si det høyt.
Du går inn via én av stiene mens vennen din venter utenfor. Vennen din roper deretter ut hvilken sti de vil at du skal komme tilbake via. Hvis du kjenner ordet, kan du åpne døren inne i hulen og komme tilbake via begge stiene. Hvis du bare gjetter, har du bare femti prosent sjanse til å komme ut på den siden vennen ba om.
Gjenta testen mange ganger med et nytt, uforutsigbart valg hver gang. Ti vellykkede runder gir en bløffer bare rundt én sjanse av 1 000 til å ha flaks. Vennen din får sterke bevis for at du kjenner ordet, men hører det aldri selv.
Fra hulehistorie til ekte programvare
Ekte bevis bruker matematikk i stedet for en hule, men personvernmålet er det samme. De kan vise at en transaksjon følger reglene uten å avsløre alle detaljene. De kan også la ett lite bevis stå for en stor gruppe kontroller, noe som kan gjøre enkelte systemer raskere å verifisere.
Digital legitimasjon er en annen praktisk bruk. I stedet for å laste opp en hel ID til hver tjeneste, kan en godt utformet legitimasjon kun svare på spørsmålet som stilles: "Er denne personen over 18 år?" eller "Har de denne kvalifikasjonen?"
Detaljene betyr noe. Et bevis beskytter kun informasjonen den ble bygget for å skjule. Appen rundt kan fortsatt samle inn data, identifisere deg eller gjøre et dårlig sikkerhetsvalg andre steder.
Nullkunnskapsbevis vs nullkunnskapskryptering
Uttrykket "nullkunnskap" brukes også i skylagring. Det er en annen idé. Nullkunnskapskryptering betyr at lagringsleverandøren ikke kan lese filene dine, fordi den ikke har dekrypteringsnøklene.
Et nullkunnskapsbevis svarer på et spørsmål uten å avsløre hemmeligheten bak svaret. Nullkunnskapskryptering holder lagrede filer uleselige for en leverandør. Begge kan styrke personvernet, men de er ikke det samme.
En praktisk personvernleksjon
Nullkunnskapsbevis er en nyttig påminnelse om å dele minimumsinformasjonen som trengs for en oppgave. De gjør deg ikke anonym eller sikrer alle deler av en app. En tjeneste kan fortsatt vite at du koblet til, når du gjorde det, og andre data utenfor beviset.
Sealby trenger ikke nullkunnskapsbevis, siden appen ikke har noen konto eller server som ber deg bevise noe. Filene krypteres på iPhonen din. For hverdagslig personvern er det praktiske spørsmålet enkelt: hva trenger denne tjenesten egentlig å vite – og kan den klare seg med mindre?