Controle over je Digitale Identiteit met Anonieme Credentials
Cet article est aussi disponible en français.
Intro
Burgers hebben doorgaans heel wat certificaten. Voorbeelden zijn de identiteitskaart, rijbewijs, diploma’s, bekwaamheidsbewijzen, bankkaarten, de ziekteverzekeringskaart, medische voorschriften, een uittreksel uit het strafregister, een parkeerkaart voor personen met een handicap, eigendomsaktes en concerttickets. Deze kunnen een fysieke of digitale vorm aannemen en bevatten – vaak gevoelige – persoonsgegevens.
Wanneer we een dergelijk certificaat tonen, geven we vaak meer gegevens over onszelf prijs dan strikt noodzakelijk. Vooral in een digitale wereld kan dit problematisch worden. De data worden in een fractie van een seconde uitgelezen en vervolgens misschien vele jaren bewaard, waarbij mogelijk een ruimer profiel over jou aangelegd wordt.
Een tweetal voorbeelden:
- Om alcohol of vuurwerk te kopen, of om toegang te krijgen tot websites met erotische inhoud, moet je in principe enkel aantonen dat je meerderjarig bent. Om deel te nemen aan kansspelen of weddenschappen is de minimumleeftijd 21 jaar. De exacte geboortedatum, laat staan de geboorteplaats of rijksregisternummer, doen er niet toe. Enkel in geval van misbruik, zoals valsspelen, moet de identiteit van de persoon in kwestie onthuld kunnen worden.
- Om deel te nemen aan een bevraging georganiseerd door de stad Leuven, moet je in principe enkel aantonen dat je effectief in die stad woont, en nog niet eerder gestemd hebt, eventueel aangevuld met extra info zoals leeftijdscategorie en deelgemeente, voor statistische doeleinden.
De vandaag gangbare certificaattechnologieën laten een dergelijke selectieve prijsgave van persoonsgegevens niet toe; je toont ofwel het volledige certificaat met al de persoonsgegevens die erin vervat zitten, ofwel niets. Toch is er in de laatste decennia al heel wat onderzoek en ontwikkeling gebeurd naar een technologie die daar wel vlot mee overweg kan. Die technologie luistert naar de naam anonieme credentials en kwam reeds in een vorige blogpost aan bod.
Het is een privacy bevorderende technologie die beroep doet op zero-knowledge proofs (ZKPs) om selectief persoonsinformatie prijs te geven. ZKPs laten een partij toe een bewering (vb. ouder dan 18 jaar) aan een andere partij te bewijzen zonder verdere details over die bewering (vb. exacte geboortedatum) prijs te geven. Hoewel de credential zelf wordt uitgegeven door een geautoriseerde uitgever, hoeft bij een selectieve prijsgave verder geen beroep meer gedaan te worden op een vertrouwde partij.
David Chaum deed reed in 1985 het eerste baanbrekend en visionair werk met een voorstel voor anoniem digitaal geld. Chaum waarschuwde toen reeds voor het effect van de technologische ontwikkelingen op de privacy van burgers. Daarop verder bouwend volgden kort op elkaar de twee eerste voorstellen voor anonieme credentials. In 2000 publiceerde Stefan Brands zijn oplossing U-Prove, en in 2001 werd het geavanceerdere Idemix voorgesteld door Jan Camenisch (IBM) en Anna Lysyanskaya (MIT).
In die jaren werkte ik tijdens mijn doctoraat met die technologie, wat me onder meer een best paper award opleverde op SECRYPT 2009 in Milaan, met een oplossing die credential houders toelaat anoniem van een dienst gebruik te maken, maar niet vaker dan een vast aantal keer per tijdsvenster, bijvoorbeeld niet vaker dan 10 keer per maand.
Eigenschappen
Net zoals bij klassieke digitale certificaten, wordt een anoniem credential uitgegeven door een geautoriseerde uitgever (de issuer of identity provider) aan de eigenaar (de holder). De laatste kan vervolgens, m.b.v. ZKPs selectief informatie uit de credential bewijzen aan een verifier.
De basiseigenschappen van anonieme credentials zijn:
- Onvervalsbaarheid (Unforgeability). Het vervalsen van een anonieme credential is onmogelijk. Enkel met behulp van de issuer kunnen anonieme credentials aangemaakt worden.
- Selectieve attribuutprijsgave (selective attribute disclosure). Slechts een geselecteerd deel van de informatie die in het anonieme credential vervat zit, wordt prijsgegeven. Dit kunnen attribuutwaarden zijn, zoals geboortedatum, maar ook afgeleide informatie, zoals meerderjarigheid. Alle andere informatie in de credential blijft verborgen voor de verifier. Zowel Idemix als U-Prove ondersteunen dit.
- Onlinkbaarheid (Unlinkability). Meerdere vertoningen van eenzelfde anonieme credential aan (eenzelfde of andere) verifier kunnen niet aan elkaar gekoppeld worden. U-Prove had deze eigenschap nog niet, Idemix wel.
Afhankelijk van de specifieke technologie kunnen bijkomende eigenschappen ondersteund worden, waaronder:
- Beperkte geldigheidsduur. De holder bewijst aan de verifier dat de vervaldatum van de anonieme credential nog niet bereikt is, zonder verdere info over die vervaldatum prijs te geven.
- Revocatie. Een anoniem credential kan gerevoceerd worden, bijvoorbeeld nadat de bijhorende private sleutel gecompromitteerd werd of omdat de persoonsgegevens gewijzigd zijn, bijvoorbeeld door een verhuis of intrekken rijbewijs. Telkens wanneer een holder een credential toont aan een verifier, bewijst hij ook dat de identifier van de credential zich op een whitelist bevindt of dat deze identifier zich niet op een blacklist bevindt. Die lijsten kunnen gecomprimeerd worden tot één compacte waarde, die geactualiseerd wordt bij elke nieuwe revocatie. Dit noemt met een dynamische accumulator.
- Conditionele anonimiteit. In geval van misbruik kan de anonimiteit van de credential holder, met medewerking van een vertrouwde partij, opgeheven worden en wordt de identiteit dus onthuld. Op die manier kan het gerecht zijn werk doen en eventueel tot vervolging overgaan.
- Delegatie. Een credential holder kan anonieme credentials delegeren naar andere personen. Een persoon zou zo bijvoorbeeld haar recht (of plicht) om te stemmen kunnen delegeren naar haar partner. Dit is dan het equivalent van een volmacht. Delegatie zal omwille van juridische redenen veelal enkel door handelingsbekwame personen uitgevoerd kunnen worden, en dus niet door vb. minderjarigen.
- Combineerbaarheid. Een selectieve prijsgave kan afgeleid worden uit meerdere anonieme credentials, potentieel uitgegeven door verschillende issuers. Een credential holder kan bijvoorbeeld met één enkel ZKP bewijzen dat hij over een geldig rijbewijs beschikt en verzekerd is, zonder daarbij een gemeenschappelijke identifier, zoals rijksregisternummer, prijs te gegeven. Hij bewijst enkel dat beide anonieme credentials dezelfde identifier bevatten, zoals ook geïllustreerd in een eerder artikel.
Het is duidelijk dat anonieme credentials een bijzonder krachtige technologie zijn en heel wat potentieel hebben. Dit betekent helaas niet per se dat er ook brede adoptie is. De volgende secties bespreken 1) de initiatieven om de technologie verder te ontwikkelen en ingang te doen vinden, 2) het gebruik ervan in de praktijk en 3) de uitdagingen m.b.t. kwantumresistentie.
Initiatieven
Toen ik ongeveer twintig jaar geleden met Idemix aan de slag ging, kon dit enkel mits het ondertekenen van een geheimhoudingsverklaring. Ondertussen is de situatie helemaal omgekeerd en zijn er diverse open source projecten. De voornaamste zijn IBM Idemix, Microsoft U-prove, Yivi en Hyperledger AnonCreds. Die twee laatsten bieden momenteel eigen implementaties van Idemix aan.
Vanuit de Europese Commissie werden via projecten zoals PRIME (2004-2008), PrimeLife (2008-2011) en ABC4Trust (2011-2014) reeds tientallen miljoenen euro’s geïnvesteerd in onderzoek en ontwikkeling naar anonieme credential technologie.
De blockchain hype (ruwweg 2015-2019) ging gepaard met een hernieuwde interesse in anonieme credentials, als technologische invulling van het Self-sovereign identity (SSI) paradigma. Blockchain en anonieme credentials beloofden immers iets zeer gelijkaardig; de controle teruggeven aan de burger, uit de handen van de allerlei autoriteiten en men-in-the-middle. Velen gingen er toen onterecht vanuit dat SSI blockchain vereist. Dat is niet noodzakelijk, maar toch kan blockchain een rol spelen, onder meer om op een gedistribueerde wijze bij te houden welke issuers erkend zijn, en dus vertrouwd kunnen worden.
Hyperledger is een open-source project onder de vleugels van de Linux Foundation dat bouwt aan technologie voor permissioned (gesloten, gecontroleerde) blockchain netwerken. Hyperledger omarmde het SSI-paradigma; Hyperledger AnonCreds, momenteel een incubatieproject, implementeert specifiek anonieme credential technologie.
Sovrin was de meest toonaangevende pionier in SSI m.b.v. blockchain en gebruikte onderliggend onder meer Hyperledger AnonCreds. Helaas werd het Sovrin netwerk begin dit jaar uitgedoofd. De redenen die gegeven werden waren een dalend gebruik, wetgevende onzekerheid, technische uitdagingen en beperkte betrokkenheid vanuit de community.
De EU digital identity wallet (EUDIW), gedefinieerd in de eiDAS 2.0 regulering (van kracht sinds mei 2024), biedt in principe opnieuw een kans om het potentieel van anonieme credentials te ontsluiten (met of zonder blockchain). Toch lijkt men helaas niet in die richting te kijken. Een groep van vooraanstaande cryptografen formuleerde in juni 2024 kritieken op het huidige ontwerp van de EUDIW en menen dat een nieuw design, met expliciete ondersteuning voor anonieme credentials, nodig is om de privacy te verbeteren. Het huidige EUDIW-ontwerp laat bijvoorbeeld geen onlinkbaarheid toe. Integratie van anonieme credentials is één van de “open topics”, maar een roadmap ontbreekt vooralsnog.
Sinds 2012 loopt er in Nederland een project genaamd IRMA, wat staat voor I Reveal My Attributes. Het werd ontwikkeld aan de Radboud Universiteit in Nijmegen. In 2023 werd het omgedoopt naar Yivi. Yivi wil de controle over haar gegevens teruggeven aan de burger, zonder daarbij een beroep te doen op blockchain technologie.
In de praktijk
Yivi heeft onder meer zijn eigen implementatie van het Idemix protocol alsook een eigen app, die door honderdduizenden Nederlanders gebruikt zou worden. Het wordt aangeboden door de stad Nijmegen als privacy-vriendelijke identiteitsoplossing. De stad gebruikt het onder meer voor anonieme bevragingen van Nijmegenaren.
Daarnaast ondersteunen verzekeringsinstellingen Yivi, gezien de andere digitale identiteitsoplossingen in Nederland in dit kader niet bruikbaar zijn; DigiD is alleen mogelijk bij overheidsinstellingen, iDIN verloopt via een bank en is enkel bruikbaar door mensen met een bankrekening in Nederland. Hier lijkt de praktische overweging belangrijker dan het privacy-aspect.
Het bestuur van de Canadese provincie British Columbia heeft stevig geïnvesteerd in de ontwikkeling en adoptie van anonieme credentials. Ze heeft meer dan een miljoen regels code gecommit naar het Hyperledger Aries project. British Columbia gebruikt de technologie, samen met onder meer Hyperledger AnonCreds ook in de praktijk:
OrgBook BC stelt heel wat informatie over bedrijven in de provincie ter beschikking: ondernemingsnummers, adressen, registratiebewijzen, licenties om cannabis te verkopen, etc. Om het vertrouwen in de juistheid ervan te verhogen, worden deze data ter beschikking gesteld onder de vorm van revoceerbare anonieme credentials, uitgegeven door publieke sectororganisaties. Burgers kunnen met hun BC Wallet verifiable credentials over henzelf of over hun onderneming verkrijgen, opslaan en tonen.
- Het Justice Project laat rechters en advocaten toe gevoelige gerechtelijke documenten, waar enkel erkende juristen toegang tot mogen hebben, online op te vragen zonder hun identiteit prijs te geven.
Bovenstaande toepassingen situeren zich op een lokaal niveau. Toch mogen we niet vergeten dat anonieme credentials ook op globale schaal toegepast worden.
Signal, de populaire beveiligde berichten app die ongeveer 70 miljoen gebruikers telt, maakt gebruik van anonieme credentials voor het beheer van private groepen. De Signal servers zien niet wie tot een private groep behoort. Wanneer een groepslid iemand aan de groep toevoegt of eruit verwijdert, zien de Signal servers niet wie dit doet, enkel dat die persoon het recht daartoe heeft. Signal gebruikt daarvoor Keyed-Verification Anonymous Credentials (KVACs), wat anonieme credentials zijn, waarbij de issuer en de verifier een geheime sleutel delen, wat leidt tot efficiëntiewinsten.
Een TPM (Trusted Platform Module) is een security chip in een computer. Het is, onder andere, in staat om op een privacyvriendelijke manier de integriteit van het system aan een externe entiteit te bewijzen. Daarvoor maakt het gebruik van Direct Anonymous Attestation (DAA). DAA gebruikt een soort anonieme credential, gekoppeld aan de TPM-chip. Intels SGX gebruikt een DAA-variant, genaamd Enhanced Privacy ID (EPID). Ondertussen werden meer dan 2,5 miljard EPID-credentials uitgegeven. Het is vandaag wellicht de meest succesvolle toepassing van anonieme credential technologie.
Ondanks deze enkele globale use cases zien we tot op vandaag slechts een zeer beperkte adoptie van anonieme credentials in de settings waar we het het meest zouden verwachten: identiteitsbeheer.
Kwantumresistentie
Zoals reeds uitvoerig in eerdere Smals Research artikels toegelicht, is er het gevaar dat krachtige kwantumcomputers in de toekomst moderne publieke sleutelcryptografie zouden kunnen breken.
De onderstaande figuur geeft een overzicht van de belangrijkste technieken voor anonieme credentials die door de academische community voorgesteld werden. De eerste generatie was gebaseerd op RSA of elliptische krommen. Vanaf 2004 volgde een generatie gebaseerd op bilineaire afbeeldingen (pairings). De derde generatie anonieme credentials is gebaseerd op lattices en is de eerste generatie die gebruik maakt van cryptografie die verondersteld is kwantumresistent te zijn.
Figuur 1 Tijdlijn van belangrijkste publicaties m.b.t. anonieme credentials (bron)
Momenteel zijn er dus slechts enkele kwantumresistente systemen voor anonieme credentials voorgesteld. Deze systemen zijn nog jong en onvoldoende performant om in de praktijk inzetbaar te zijn. Er is dus meer onderzoek vereist naar efficiënte kwantumresistente oplossingen voor anonieme credentials.
Dit artikel vermeldde reeds dat een vooraanstaande groep wetenschappers in cryptografie ervoor pleiten om ondersteuning voor anonieme credentials in de EU digital identity wallet (EUDIW) te voorzien. Ze geven twee geldige argumenten waarom de kwantumdreiging niet of nog niet van toepassing is.
- Anonieme credentials worden gebruikt voor authenticatie; een authenticatiesessie blijft maar een zeer korte tijd geldig; niet meer dan enkele minuten. Denk bijvoorbeeld aan authenticatie met ItsMe. Dit staat in schril contrast tot encryptie (bijvoorbeeld communicatie), waarbij een aanvaller vele jaren heeft om de onderschepte vercijferde data te decrypteren (harvest now decrypt later). We kunnen voor authenticatie dus veel korter op de bal spelen en hebben dus veel meer tijd (minstens een decennium, volgens jouw schrijver).
- De vandaag meest populaire anonieme credential-technologieën, zoals diegene voorgesteld door Camenisch en Lysyanskaya in 2004 bieden onvoorwaardelijke veiligheid; zelfs een hypothetische aanvaller met oneindige (klassieke of kwantum-) rekenkracht zou ze niet kunnen breken, hoewel de technologie – dit kan contradictorisch klinken – onderliggend gebruik maakt van bouwblokken die wel met krachtige kwantumcomputers gebroken zouden kunnen worden.
Er zijn dus geen technologische redenen die de adoptie van anonieme credential-technologie in de weg staan. Wel is er nog een ander obstakel… perceptie! Emad Heydari Beni, een onderzoeker cryptografie aan COSIC (KU Leuven) en Bell Labs, postte onlangs op LinkedIn het volgende bericht: “Indien het niet postkwantum is, willen de mensen uit de industrie niet eens naar je luisteren”. Bovenstaande tweeledige argumentatie is bijgevolg wellicht onvoldoende overtuigend voor de industrie.
Zorg er in elk geval voor dat je oplossing crypto-agile is als je met anonieme credentials aan de slag gaat, zodat je snel kan migreren naar een nieuwere technologie wanneer nodig.
Conclusie
Samengevat worden anonieme credentials na decennia onderzoek en ontwikkeling en ondanks hun potentieel in de praktijk nog maar in beperkte mate gebruikt om persoonsgegevens echt te beschermen. Haar potentieel wordt nog bijlange niet ten volle benut, al geven projecten zoals Hyperledger er wel een positieve stimulans aan. Ook worden dankzij onder meer Signal en Intel SGX specifieke types anonieme credentials wel degelijk breed geadopteerd.
Een obstakel voor de adoptie in de context van identiteitsbeheer is het gebrek aan standaarden. Dankzij het voorbereidend werk door onder meer W3C, de Decentralized Identity Foundation, IETF/IRTF en ISO zou dat, mits een politieke wil, vrij vlot mogelijk moeten zijn, aldus de eerder vermeldde groep cryptografen. De technologie heeft trouwens nog een andere uitdaging op haar pad, met name overtuigend kwantumresistent worden.
Het blijft momenteel dus koffiedik kijken of de technologie zal doorbreken als tool voor privacyvriendelijk identiteitsbeheer. Misschien is het aan de publieke sector om hier het voortouw in te nemen en anonieme credentials tot een succesverhaal te maken.
Aarzel niet ons te contacteren bij interesse!
Dit artikel is een ingezonden bijdrage van Kristof Verslype, cryptograaf bij Smals Research. Het werd geschreven in eigen naam en neemt geen standpunt in namens Smals.