Hoe werkt een zero-knowledge proof? (En hoe kun je iets bewijzen zonder het te laten zien?)

Stel je wil bewijzen dat je een geheim weet – zonder dat je het geheim zelf onthult. Of dat je ouder dan 18 bent, zonder je geboortedatum te tonen. Klinkt onmogelijk? Niet met een zero-knowledge proof.

Zero-knowledge proofs (ZK-proofs) maken het mogelijk om iets te bewijzen zonder de onderliggende informatie prijs te geven. Ze spelen een steeds grotere rol in privacy, cryptografie en blockchaintechnologie.

Maar hoe werkt dat precies? En wat kun je ermee in de praktijk?


Wat is een zero-knowledge proof?

Een zero-knowledge proof is een cryptografische methode waarbij iemand (de prover) kan aantonen dat hij iets weet of bezit, zonder die informatie zelf te delen met de ander (de verifier).

Dus:

  • Je bewijst iets

  • Zonder het te laten zien

  • En zonder dat de ander iets kan kopiëren of onthouden

De ander is wél volledig overtuigd dat jouw claim klopt.


Simpel voorbeeld: de gekleurde ballen

Stel je hebt twee ballen: een rode en een groene. Ze lijken exact hetzelfde, behalve de kleur. Je vriend is kleurenblind en denkt dat ze identiek zijn.

Je wil hem bewijzen dat de ballen verschillend zijn – maar zonder te zeggen welke welke is.

Zo gaat het:

  1. Je vriend houdt zijn handen achter zijn rug en wisselt soms de ballen om, soms niet.

  2. Jij moet telkens zeggen of ze gewisseld zijn of niet.

  3. Als jij blijft raden én het altijd goed hebt, is de kans vrijwel nul dat je blufft.

  4. Maar je hebt nooit gezegd welke bal rood is – je geheim blijft geheim.

Dat is zero knowledge.


Hoe werkt het in de techniek?

In de digitale wereld werkt het volgens vergelijkbare principes. De drie eigenschappen van een goede zero-knowledge proof zijn:

  1. Correctheid – als de bewering waar is, accepteert de verifier de proof

  2. Geldigheid – als de bewering onwaar is, is het onmogelijk om een geldige proof te genereren

  3. Zero knowledge – de verifier leert niks over de onderliggende data

Het werkt vaak met een combinatie van:

  • Slimme wiskunde (zoals elliptische curves)

  • Hashfuncties

  • Interactieve protocollen (vragen en antwoorden)

  • Of bij moderne versies: non-interactieve ZK-proofs zoals zk-SNARKs en zk-STARKs


Wat zijn zk-SNARKs en zk-STARKs?

Deze termen kom je vaak tegen in blockchain en cryptografie. Kort gezegd:

Term Betekenis
zk-SNARK Zero-Knowledge Succinct Non-Interactive Argument of Knowledge – snel en klein, gebruikt in o.a. Zcash
zk-STARK Scalable Transparent Argument of Knowledge – schaalbaar, transparanter (geen trusted setup nodig), vaak gebruikt in nieuwe blockchains

Beide zijn methodes om zero-knowledge proofs te maken zonder dat er interactie nodig is tussen verzender en ontvanger – en zonder dat je de gegevens onthult.


Wat kun je ermee doen?

Zero-knowledge proofs worden steeds belangrijker in toepassingen waar privacy en verificatie tegelijk nodig zijn.

Voorbeelden:

  • Blockchain en crypto
    – Transacties bewijzen zónder bedragen of afzenders te tonen (zoals bij Zcash)
    – Slimme contracten valideren zonder data te onthullen (bijv. in zk-rollups op Ethereum)

  • Identiteitsverificatie
    – Bewijzen dat je ouder dan 18 bent, zonder je geboortedatum of naam te geven
    – Inloggen zonder wachtwoord over te dragen

  • Authenticatie op websites
    – Je gegevens blijven lokaal, terwijl je wel geverifieerd wordt

  • Stemmen en audits
    – Stemmen bewijzen zonder dat iemand weet op wie je stemde
    – Boeken controleren zonder volledige inzage


Waarom is dit belangrijk?

In een wereld waar data continu gedeeld wordt, helpt zero-knowledge technologie om controle te houden over je eigen informatie. Je hoeft niet langer te kiezen tussen:

  • Volledige transparantie of

  • Volledige geheimhouding

Je kunt dingen bewijzen – zonder jezelf kwetsbaar te maken. Dat maakt het krachtig voor veiligheid, privacy én schaalbaarheid.


Zijn er ook nadelen?

Ja. Zero-knowledge proofs zijn:

  • Technisch complex om te implementeren

  • Rekenkundig zwaar (hoewel steeds efficiënter)

  • Soms afhankelijk van een “trusted setup” (bijvoorbeeld bij zk-SNARKs, wat een zwak punt kan zijn)

Toch worden deze technieken snel beter en toegankelijker.


Dus, hoe werkt een zero-knowledge proof?

  • Je bewijst dat je iets weet, zonder te vertellen wát je weet

  • Je gebruikt wiskundige formules om die bewering overtuigend én geheim te houden

  • Toepasbaar in blockchain, privacy, authenticatie en meer

  • Met nieuwe vormen zoals zk-SNARKs en zk-STARKs kun je dit ook automatisch en efficiënt doen

  • Het is een sleuteltechnologie voor een veiligere, privacyvriendelijke digitale toekomst

Kortom: zero-knowledge maakt het mogelijk om vertrouwen op te bouwen zonder prijs te geven – en dat is precies wat we nodig hebben in een wereld vol data.

Plaats een reactie