Hjem
Gloseliste
Zero-knowledge proofs

Zero-knowledge proofs

Avanceret

Zero-knowledge proofs, undertiden også kaldet en zk-protokol, er en verifikationsmetode, der finder sted mellem en beviser og en verifikator. I et system med zero-knowledge proofs er beviseren i stand til at bevise over for verifikatoren, at denne har kendskab til en bestemt oplysning (f.eks. løsningen på en matematisk ligning) uden at afsløre selve oplysningen. Disse bevissystemer kan bruges af moderne kryptografer til at give et højere niveau af beskyttelse af personlige oplysninger og sikkerhed.

Konceptet med zero-knowledge proofs blev første gang beskrevet i 1985 i en MIT-afhandling udgivet af Shafi Goldwasser og Silvio Micali. De påviste, at det var muligt at bevise nogle egenskaber ved et tal uden at afsløre tallet eller andre oplysninger om det. I afhandlingen blev der også introduceret den matematisk betydningsfulde opdagelse, at interaktioner mellem en beviser og en verifikator kan reducere den mængde information, der er nødvendig for at bevise et givent teorem. 

Et zk-bevis skal opfylde to grundlæggende krav, som kaldes fuldstændighed og soliditet. Fuldstændighed henviser til beviserens evne til at påvise kendskab til de relevante oplysninger med en høj grad af sandsynlighed for nøjagtighed. For at beviset skal være solidt, skal verifikatoren kunne afgøre pålideligt, om beviseren faktisk er i besiddelse af oplysningerne eller ej. Endelig skal beviset, for at være zero-knowledge, opnå både fuldstændighed og soliditet, uden at de pågældende oplysninger nogensinde bliver kommunikeret mellem beviser og verifikator.

Zero-knowledge proofs anvendes for det meste til anvendelsesområder, hvor beskyttelse af personlige oplysninger og sikkerhed er afgørende. Godkendelsessystemer kan f.eks. anvende zero-knowledge proofs til at verificere legitimationsoplysninger eller identiteter uden direkte at afsløre dem. Som et simpelt eksempel kan det bruges til at verificere, at en person har en adgangskode til et computersystem, uden at det er nødvendigt at oplyse, hvad adgangskoden er. 

En fremtrædende anvendelse af zero-knowledge proofs findes i verden af kryptovaluta- og blockchain-teknologi. Ved hjælp af en type bevis kendt som zero-knowledge Succinct Non-interactive Argument of Knowledge (zk-SNARK) kan kryptovalutaer, der fokuserer på beskyttelse af personlige oplysninger såsom Zcash, tilbyde blockchain-transaktioner med øget grad af beskyttelse af personlige oplysninger til deres brugere. Ethereum arbejder også med zk-SNARK-beviser siden Byzantium-opdateringen i 2017.