ML-DSA: digitale handtekeningen die quantumcomputers moeten weerstaan
Elke keer dat u een app installeert, inlogt op internetbankieren of een software-update binnenhaalt, controleert uw apparaat ergens op de achtergrond een digitale handtekening. Die handtekening bewijst dat de software echt van de afzender komt en onderweg niet is aangepast. Vrijwel alle handtekeningen die vandaag worden gebruikt, steunen op wiskundige problemen die in theorie te kraken zijn door een krachtige quantumcomputer. ML-DSA is een nieuwe manier om digitale handtekeningen te maken die, voor zover bekend, ook tegen zo'n toekomstige quantumcomputer bestand is.
De naam staat voor Module-Lattice-Based Digital Signature Algorithm: een handtekeningmethode gebaseerd op zogeheten roosterwiskunde (lattices). Denk aan een oneindig rooster van punten in een hoog-dimensionale ruimte, vergelijkbaar met een driedimensionaal kristalrooster maar dan met honderden dimensies. Bepaalde vragen over zo'n rooster, zoals "welk roosterpunt ligt het dichtst bij deze willekeurige locatie", zijn extreem lastig te beantwoorden zonder een geheime sleutel, zelfs voor een quantumcomputer. ML-DSA is in augustus 2024 door het Amerikaanse standaardisatie-instituut NIST officieel vastgelegd als FIPS 204, en is bedoeld om op termijn RSA- en ECC-handtekeningen (de huidige standaarden) te vervangen.
Wat is het precies?
Een digitale handtekening werkt met een sleutelpaar: een privésleutel om te ondertekenen en een publieke sleutel om te controleren. Bij de huidige standaarden, zoals RSA en ECDSA, is de veiligheid gebaseerd op problemen als het ontbinden van grote getallen in priemfactoren. Een quantumcomputer die groot genoeg is, kan dat soort problemen met het algoritme van Shor in principe efficiënt oplossen. Roosterproblemen, zoals die waarop ML-DSA steunt, kennen tot nu toe geen efficiënt quantumalgoritme dat ze oplost.
ML-DSA is gebaseerd op twee met elkaar verwante wiskundige problemen: Module Learning With Errors (module-LWE) en Module Short Integer Solution (module-SIS). In grote lijnen komt het erop neer dat de publieke sleutel bestaat uit een reeks vergelijkingen met opzettelijk toegevoegde kleine "ruis", en dat het vinden van de onderliggende geheime waarden zonder die ruis te kennen onhaalbaar moeilijk is. Het woord "module" verwijst naar een wiskundige structuur die het mogelijk maakt de berekeningen compact en efficiënt te houden, in plaats van met volledig willekeurige, enorme roosters te werken.
Het ondertekenproces zelf gebruikt een techniek die "Fiat-Shamir met afwijzing" heet: het algoritme genereert een kandidaat-handtekening, controleert of die aan bepaalde statistische eisen voldoet, en verwerpt en herhaalt de poging als dat niet zo is. Dat afwijzingsmechanisme is nodig om te voorkomen dat een handtekening per ongeluk informatie lekt over de geheime sleutel. Het resultaat is een algoritme dat relatief snel rekent, maar wel grotere sleutels en handtekeningen oplevert dan we gewend zijn: een ML-DSA-handtekening is, afhankelijk van het gekozen beveiligingsniveau, ongeveer 2,4 tot 4,6 kilobyte groot, tegenover slechts 64 tot 72 bytes bij een ECDSA-handtekening.
Wat wil men ermee bereiken?
Het uiteindelijke doel is simpel te formuleren: voorkomen dat digitale beveiliging instort zodra een voldoende krachtige quantumcomputer bestaat. Zo'n machine bestaat vandaag nog niet, en experts verschillen van mening over wanneer die er wel zou kunnen zijn; schattingen lopen uiteen van rond 2030 tot ver na 2040, en sommigen betwijfelen of het ooit praktisch haalbaar wordt. Toch is de overstap nu al urgent voor gevoelige toepassingen, omdat digitale handtekeningen vaak in langlevende systemen zitten: firmware, certificaten, overheidsdocumenten en softwarehandtekeningen die tientallen jaren mee moeten gaan.
Bij versleuteling van data speelt bovendien de "harvest now, decrypt later"-dreiging: data die nu wordt onderschept, kan worden opgeslagen om pas over jaren te worden ontsleuteld zodra een quantumcomputer beschikbaar is. Voor handtekeningen is dat scenario minder relevant, maar het onderliggende motief is hetzelfde: de overstap naar quantumbestendige cryptografie kost jaren omdat software, hardware en standaarden overal ter wereld moeten worden aangepast, dus begint men liever te vroeg dan te laat.
Daarnaast wil NIST met ML-DSA een handtekeningalgoritme bieden dat, naast quantumveiligheid, ook praktisch bruikbaar is: snel genoeg voor alledaags gebruik, met sleutelgroottes die weliswaar groter zijn dan bij ECDSA maar nog werkbaar voor de meeste toepassingen, en met een wiskundige basis die door de cryptografische gemeenschap grondig is onderzocht.
Voorbeelden uit de praktijk
ML-DSA is de gestandaardiseerde opvolger van CRYSTALS-Dilithium, een algoritme dat in 2017 werd ingediend bij de PQC-standaardisatiewedstrijd van NIST door een internationaal team van cryptografen, verbonden aan onder meer IBM Research, CWI Amsterdam, Radboud Universiteit en ENS de Lyon. In 2022 koos NIST Dilithium, samen met de algoritmen Kyber, Falcon en SPHINCS+, als winnaars van die wedstrijd.
De Open Quantum Safe-gemeenschap (OQS), gedragen door onder meer de Universiteit van Waterloo, biedt sinds enkele jaren een opensource-implementatie (liboqs) waarmee ontwikkelaars ML-DSA kunnen uittesten in bijvoorbeeld OpenSSL en OpenSSH.
Cloudflare en Google hebben in hun browsers en servers geëxperimenteerd met quantumbestendige cryptografie in TLS-verbindingen; dat betrof aanvankelijk vooral het verwante Kyber/ML-KEM voor sleuteluitwisseling, maar dezelfde infrastructuur en testtrajecten worden gebruikt om ML-DSA voor certificaten te evalueren.
De Amerikaanse inlichtingendienst NSA heeft ML-DSA in 2022 opgenomen in de Commercial National Security Algorithm Suite 2.0 (CNSA 2.0), de lijst met algoritmen die Amerikaanse nationale-veiligheidssystemen op termijn verplicht moeten gebruiken, met een overgangsperiode die doorloopt tot in de jaren 2030.
Ook standaardisatieorganisaties zoals de IETF werken sinds 2023-2024 aan specificaties om ML-DSA te integreren in bestaande protocollen, zoals X.509-certificaten (de digitale "identiteitsbewijzen" van websites) en TLS, de beveiligingslaag achter https.
Hoe ver is de techniek?
ML-DSA is sinds augustus 2024 een officiële, definitieve NIST-standaard (FIPS 204), wat betekent dat de wiskundige specificatie vaststaat en implementaties ertegen getoetst kunnen worden. Dat is een belangrijke mijlpaal, want het betekent dat overheden en bedrijven nu een stabiele basis hebben om op te bouwen, in plaats van een concept dat nog kan veranderen.
De praktische uitrol staat echter nog in de kinderschoenen. Het integreren van ML-DSA in bestaande systemen is complexer dan het lijkt: certificaatketens, hardwarebeveiligingsmodules, smartcards en embedded apparaten zijn vaak ontworpen rond de kleine sleutel- en handtekeninggroottes van ECDSA en RSA, en moeten worden aangepast om de veel grotere ML-DSA-gegevens te verwerken. Sommige toepassingen, zoals bepaalde IoT-apparaten met weinig geheugen, ondervinden daar merkbare hinder van.
Een ander punt van aandacht: hoewel roosterproblemen tot nu toe standhielden tegen cryptoanalyse, is er, net als bij elk cryptografisch systeem, geen wiskundig bewijs dat ze onbreekbaar zijn. De cryptografische gemeenschap blijft actief zoeken naar zwakke plekken, wat normaal en gewenst is voor nieuwe standaarden. Ook is Falcon, het andere door NIST gekozen roostergebaseerde handtekeningalgoritme (bedoeld voor toepassingen met kleinere handtekeningen), nog niet als definitieve standaard gepubliceerd; die wordt verwacht als FIPS 206.
Kortom: de wiskunde en de specificatie liggen vast, maar de wereldwijde migratie van miljarden systemen zal naar verwachting nog jaren tot ruim een decennium in beslag nemen.
Wie werken eraan?
Het Amerikaanse National Institute of Standards and Technology (NIST) trekt het standaardisatieproces en publiceerde FIPS 204. De onderliggende Dilithium-techniek is ontwikkeld door onderzoekers verbonden aan IBM Research, CWI Amsterdam, Radboud Universiteit Nijmegen, NXP Semiconductors en ENS de Lyon, met cryptografen als Vadim Lyubashevsky en Léo Ducas als bekende drijvende krachten.
Grote techbedrijven zoals Google, Cloudflare, Microsoft, Amazon (AWS) en IBM investeren in implementaties, testtrajecten en migratiehulpmiddelen. De Open Quantum Safe-gemeenschap, met bijdragen van onder meer de Universiteit van Waterloo in Canada, onderhoudt vrij toegankelijke referentiesoftware. Op het gebied van beleid en regelgeving zijn naast de Amerikaanse NSA ook Europese instanties zoals ENISA en nationale organisaties zoals het Duitse BSI en het Nederlandse Nationaal Cyber Security Centrum (NCSC) bezig met richtlijnen voor de overgang naar postquantumcryptografie.