RSA versus elliptische-krommecryptografie versus post-kwantumcryptografie: sleutellengte, snelheid, kwantumbestendigheid en migratie vergeleken

Alle drie zijn publieke-sleutelcryptografie, gebruikt om sleutels te delen (sleuteluitwisseling of key encapsulation) en voor digitale handtekeningen. RSA steunt op de moeilijkheid van het ontbinden van grote getallen in factoren, en elliptische-krommecryptografie op de moeilijkheid van het discrete-logaritmeprobleem op elliptische krommen; voor dezelfde veiligheid heeft elliptische-krommecryptografie veel kortere sleutels nodig dan RSA. Beide zouden echter met het algoritme van Shor worden gebroken zodra er een grote fouttolerante kwantumcomputer bestaat. Post-kwantumcryptografie steunt op problemen zoals roosterproblemen, waarvan wordt aangenomen dat ze ook voor kwantumcomputers moeilijk zijn; in augustus 2024 publiceerde het Amerikaanse NIST normen, waaronder het key-encapsulationmechanisme ML-KEM (FIPS 203) en het handtekeningschema ML-DSA (FIPS 204). Het belangrijkste nadeel is de grootte van sleutels en handtekeningen.

KenmerkRSAElliptische-krommecryptografiePost-kwantumcryptografie (ML-KEM, ML-DSA)
Onderliggend moeilijk probleemHet ontbinden van grote getallen in factorenHet discrete-logaritmeprobleem op elliptische krommenVoor ML-KEM en ML-DSA roosterproblemen (zoals Module-LWE: een geheim terugvinden uit lineaire vergelijkingen waaraan kleine fouten zijn toegevoegd); er is ook SLH-DSA (FIPS 205), een handtekeningschema dat alleen op hashfuncties is gebaseerd
Sleutellengte (richtwaarde)In de tabel van NIST SP 800-57 is de richtwaarde voor 128-bits veiligheid een n van 3072 bits (384 bytes); 2048 bits komt overeen met 112-bits veiligheidIn dezelfde tabel is de richtwaarde voor 128-bits veiligheid 256 bits; bij sleuteluitwisseling met X25519 is de verzonden publieke waarde 32 bytesEen publieke sleutel (encapsulation key) van ML-KEM-768 is 1.184 bytes, veel groter dan de 32 bytes van X25519
Grootte van cijfertekst en handtekeningZowel cijferteksten als handtekeningen zijn even lang als n (384 bytes bij 3072 bits)Een ECDSA-handtekening (P-256) bestaat uit twee waarden van 256 bits, r en s, samen 64 bytes (iets meer, afhankelijk van de codering)Een cijfertekst van ML-KEM-768 is 1.088 bytes en een handtekening van ML-DSA-65 is 3.309 bytes
SnelheidOmdat de publieke exponent klein kan zijn (zoals 65537), zijn versleuteling en verificatie van handtekeningen snel; ontsleuteling, ondertekening en sleutelgeneratie zijn zwaarSleutelgeneratie en ondertekening zijn bij dezelfde veiligheid veel sneller dan bij RSA; verificatie van handtekeningen is vaak trager dan bij RSADe berekeningen van ML-KEM zijn licht en gelden als niet trager dan sleuteluitwisseling met elliptische krommen; de grootte van de verzonden data is doorgaans een groter probleem dan de rekentijd
KwantumbestendigheidGeen: het algoritme van Shor breekt het op een grote fouttolerante kwantumcomputerGeen: het algoritme van Shor lost ook het discrete-logaritmeprobleem op, dus het wordt net als RSA gebrokenWordt verondersteld ook met kwantumcomputers moeilijk efficiënt op te lossen te zijn (dit is niet bewezen)
StandaardisatieUitgevonden in 1977; in de praktijk gebruikt met gerandomiseerde padding, zoals OAEP voor versleuteling en PSS voor handtekeningenKrommen zoals P-256, en X25519 en Ed25519 op basis van Curve25519, worden veel gebruiktIn augustus 2024 door NIST gepubliceerd als FIPS 203 (ML-KEM), FIPS 204 (ML-DSA) en FIPS 205 (SLH-DSA)
Huidig typisch gebruikMidden jaren 2020 vooral certificaten en ondertekening van software; TLS 1.3 heeft sleuteluitwisseling verwijderd waarbij sleutelmateriaal met RSA versleuteld wordt verzondenMidden jaren 2020 de steunpilaar van sleuteluitwisseling in TLS (ECDHE); ook ECDSA- en EdDSA-handtekeningen en apparaten met beperkte middelen, zoals smartcards en embedded systemenSinds 2025 wordt hybride sleuteluitwisseling in combinatie met X25519 (zoals X25519MLKEM768) in TLS 1.3 gebruikt; de migratie van handtekeningen volgt na die van sleuteluitwisseling
MigratieEen doel van de migratie naar post-kwantumcryptografie; het vervangen van handtekeningen, zoals in certificaten en codeondertekening, is de uitdagingEen doel van de migratie; tijdens de overgang dient het als de ene helft van hybride sleuteluitwisseling met ML-KEM en zorgt het voor veiligheid tegen klassieke computersVoorlopig verloopt de migratie stapsgewijs met hybride schema's die het met conventionele cryptografie combineren; ontwerpen waarin algoritmen later makkelijk te vervangen zijn (crypto-agility) krijgen veel nadruk
Aandachtspunten bij implementatieGebruik nooit textbook-RSA zonder padding; sleutelgeneratie vraagt willekeur van goede kwaliteitHergebruik of vertekening van de willekeurige waarde per handtekening (nonce) laat aanvallers de privésleutel terugvinden; ontvangen punten moeten ook worden gecontroleerd op ligging op de juiste krommeGrote sleutels en handtekeningen vragen een controle van de gevolgen voor pakketgroottes en apparaten met weinig geheugen; let op fouten in nieuwe implementaties en op zijkanaalaanvallen

De getalswaarden zijn typische ordegroottes en variëren per procesgeneratie en product.

Wanneer welke variant?

RSA
Wanneer compatibiliteit met bestaande certificaten en systemen vereist is. Snelle verificatie past bij toepassingen met veel verificateurs, maar een plan voor migratie naar post-kwantumcryptografie is nodig.
Elliptische-krommecryptografie
Wanneer nieuwe systemen vandaag sleuteluitwisseling en handtekeningen met korte sleutels en weinig data nodig hebben. Ook geschikt voor smartcards en embedded apparaten. Plan een overstap naar hybride schema's als voorbereiding op kwantumcomputers.
Post-kwantumcryptografie (ML-KEM, ML-DSA)
Wanneer data wordt beschermd die lang geheim moet blijven. Om voorbereid te zijn op „harvest now, decrypt later”, waarbij vandaag vastgelegde cijfertekst in de toekomst wordt ontsleuteld, voer je het eerst in voor sleuteluitwisseling in een hybride schema.

Veelgestelde vragen

Waarom heeft elliptische-krommecryptografie kortere sleutels nodig dan RSA?

Omdat de best bekende aanvallen verschillen in kosten. Voor factorisatie bestaan methoden die veel sneller zijn dan brute kracht, dus RSA-sleutels moeten vrij lang zijn. Voor het discrete-logaritmeprobleem op elliptische krommen kosten zelfs de best bekende aanvallen werk in de orde van de halve sleutellengte in bits, dus de sleutel hoeft maar ongeveer twee keer het veiligheidsniveau te zijn. In de tabel van NIST SP 800-57 is de richtwaarde voor 128-bits veiligheid 3072 bits voor RSA tegenover 256 bits voor elliptische-krommecryptografie.

Waarom nu migreren als kwantumcomputers nog niet bestaan?

Omdat cijfertekst die vandaag wordt onderschept en opgeslagen, door toekomstige kwantumcomputers kan worden ontsleuteld (harvest now, decrypt later). Daarnaast duurt het vervangen van cryptografie in software, apparaten en certificaatinfrastructuur vele jaren. Daarom begint de migratie bij sleuteluitwisseling, die data draagt die lang geheim moet blijven.

Breken kwantumcomputers ook symmetrische versleuteling zoals AES?

Die is geen doelwit van het algoritme van Shor. Volgens de eenvoudige vuistregel dat het algoritme van Grover het zoeken naar sleutels kwadratisch versnelt, wordt het veiligheidsniveau in bits gehalveerd, wat op te vangen is door AES-256 te kiezen waar veiligheid op lange termijn nodig is. Wat moet worden vervangen, is vooral publieke-sleutelcryptografie zoals RSA en elliptische-krommecryptografie.

Wat is een hybride schema?

Een schema dat conventionele cryptografie en post-kwantumcryptografie tegelijk gebruikt en de resultaten combineert. Bij sleuteluitwisseling gaan de gedeelde geheimen van X25519 en ML-KEM allebei in de sleutelafleiding, zodat de resulterende sleutel beschermd blijft zolang een van beide veilig is. Post-kwantumschema's zijn nieuw en implementatiefouten of nieuwe aanvallen zijn nog niet volledig uit te sluiten, dus de hybride aanpak dient als verzekering tijdens de overgang.

Test uw begrip

Welke combinatie van de sleutellengte van RSA (het aantal bits van n) en de sleutellengte van elliptische-krommecryptografie geeft de tabel in NIST SP 800-57 als richtwaarde voor een veiligheid die vergelijkbaar is met symmetrische cryptografie van 128 bits (AES-128)?

  1. AOngeveer 128 bits voor RSA en ongeveer 128 bits voor elliptische-krommecryptografie
  2. BOngeveer 2048 bits voor RSA en ongeveer 128 bits voor elliptische-krommecryptografie
  3. COngeveer 3072 bits voor RSA en ongeveer 256 bits voor elliptische-krommecryptografie
Antwoord en toelichting tonen

Antwoord: C. Ongeveer 3072 bits voor RSA en ongeveer 256 bits voor elliptische-krommecryptografie

Publieke-sleutelcryptografie heeft voor dezelfde veiligheid langere sleutels nodig dan symmetrische cryptografie. In de tabel van NIST SP 800-57 Part 1 is de richtwaarde voor een veiligheid van 128 bits 3072 bits voor RSA en 256 tot 383 bits voor elliptische-krommecryptografie. Bij elliptische-krommecryptografie kosten de best bekende aanvallen een inspanning van ongeveer de helft van de sleutellengte in bits, dus volstaat een sleutel van ongeveer twee keer het aantal veiligheidsbits, waardoor met een veel kortere sleutel dan bij RSA dezelfde veiligheid wordt bereikt. RSA van 2048 bits is de richtwaarde voor een veiligheid van 112 bits.

Welke combinatie van de standaarden voor post-kwantumcryptografie die het Amerikaanse NIST in augustus 2024 publiceerde en hun soort is juist?

  1. AFIPS 203 ML-KEM is een op roosters gebaseerd handtekeningschema, FIPS 204 ML-DSA een op hashfuncties gebaseerd sleutelinkapselingsmechanisme en FIPS 205 SLH-DSA een symmetrisch cijfer
  2. BFIPS 203 ML-KEM, FIPS 204 ML-DSA en FIPS 205 SLH-DSA zijn allemaal handtekeningschema's met korte sleutels, gebaseerd op problemen op elliptische krommen
  3. CFIPS 203 ML-KEM is een op roosters gebaseerd sleutelinkapselingsmechanisme, FIPS 204 ML-DSA een op roosters gebaseerd handtekeningschema en FIPS 205 SLH-DSA een op hashfuncties gebaseerd handtekeningschema
Antwoord en toelichting tonen

Antwoord: C. FIPS 203 ML-KEM is een op roosters gebaseerd sleutelinkapselingsmechanisme, FIPS 204 ML-DSA een op roosters gebaseerd handtekeningschema en FIPS 205 SLH-DSA een op hashfuncties gebaseerd handtekeningschema

Op 13 augustus 2024 publiceerde NIST drie FIPS als de eerste standaarden voor post-kwantumcryptografie. FIPS 203 ML-KEM (oorspronkelijk CRYSTALS-Kyber) is een sleutelinkapselingsmechanisme om sleutels te delen, en FIPS 204 ML-DSA (CRYSTALS-Dilithium) en FIPS 205 SLH-DSA (SPHINCS+) zijn schema's voor digitale handtekeningen. ML-KEM en ML-DSA berusten op de moeilijkheid van roosterproblemen, zoals het Module-LWE-probleem, waarbij een geheim moet worden gevonden uit een stelsel lineaire vergelijkingen waaraan kleine fouten zijn toegevoegd. SLH-DSA berust alleen op de veiligheid van hashfuncties, dus de handtekeningen zijn groot en traag, maar het is een vangnet voor het geval er een zwakte in roosterproblemen wordt gevonden.

Welke uitspraak beschrijft juist het idee van hybride sleuteluitwisseling, die tijdens de migratie naar post-kwantumcryptografie wordt gebruikt en X25519 (Diffie-Hellman-sleuteluitwisseling op een elliptische kromme) met ML-KEM combineert?

  1. ABeide gedeelde geheimen uit de twee schema's gaan de sleutelafleiding in, zodat de resulterende sleutel veilig is zolang een van beide veilig is
  2. BVan de twee schema's wordt alleen het gedeelde geheim gebruikt van het schema dat in de handshake het eerst klaar is, en het andere wordt weggegooid
  3. CML-KEM wordt pas gebruikt als kwantumcomputers werkelijkheid zijn; beide worden klaargezet zodat er dan automatisch wordt overgeschakeld
Antwoord en toelichting tonen

Antwoord: A. Beide gedeelde geheimen uit de twee schema's gaan de sleutelafleiding in, zodat de resulterende sleutel veilig is zolang een van beide veilig is

ML-KEM is een nieuw schema, en de kans dat er implementatiefouten of nieuwe aanvallen worden gevonden, kan nog niet volledig worden uitgesloten. X25519 is daarentegen zwak tegen kwantumcomputers, maar heeft een lange staat van dienst wat betreft veiligheid tegen klassieke computers. Bij hybride sleuteluitwisseling worden beide gedeelde geheimen aan elkaar gekoppeld en in een sleutelafleidingsfunctie gestopt, dus een aanvaller moet beide breken om de sleutel te krijgen, en communicatie die nu wordt opgenomen, is ook beschermd tegen ontsleuteling door toekomstige kwantumcomputers. Stand 2025 wordt deze combinatie (zoals X25519MLKEM768) in TLS 1.3 in gebruik genomen.

  1. Van welke cryptografie wordt verwacht dat de veiligheid door het algoritme van Shor ernstig wordt ondermijnd zodra grote fouttolerante kwantumcomputers zijn gebouwd?
  2. Wat is de meest passende reden om de migratie naar post-kwantumcryptografie te versnellen, ook al bestaan er nog geen grote kwantumcomputers?
  3. Welke uitspraak beschrijft juist een probleem van het gebruik van RSA uit het tekstboek (waarbij c = m^e mod n direct uit de platte tekst m wordt berekend) zonder padding in echte communicatie?

Oefenvragen over Basis en toepassingen van cryptografie

Belangrijke termen uitgelegd

RSA-cryptosysteem
Een publieke-sleutelcryptosysteem dat in 1977 door Rivest, Shamir en Adleman werd bedacht. De publieke sleutel bestaat uit het product n van twee grote priemgetallen p en q en een publieke exponent e, en de privésleutel is de d die voldoet aan e × d ≡ 1 (mod (p − 1)(q − 1)). Versleutelen gebeurt met c = m^e mod n en ontsleutelen met m = c^d mod n. De veiligheid berust op de moeilijkheid om n in priemfactoren te ontbinden, en het kan zowel voor versleuteling als voor handtekeningen worden gebruikt. In de praktijk wordt het gecombineerd met padding met toeval, zoals OAEP of PSS.
Elliptische-krommecryptografie
Verzamelnaam voor publieke-sleutelcryptosystemen die rekenen met punten op een elliptische kromme over een eindig lichaam. De veiligheid berust op de moeilijkheid om het geheime gehele getal k terug te vinden uit het punt kG, het punt G op de kromme vermenigvuldigd met k (het discrete-logaritmeprobleem op elliptische krommen). Voor dezelfde veiligheid zijn veel kortere sleutels nodig dan bij RSA: een sleutel van 256 bits is de richtwaarde voor ongeveer dezelfde veiligheid als RSA van 3072 bits (128 bits veiligheid). Ze wordt gebruikt voor sleuteluitwisseling (ECDH en ECDHE) en handtekeningen (ECDSA en EdDSA), met veelgebruikte krommen zoals P-256 en Curve25519. Omdat het algoritme van Shor haar breekt, hoort ze bij de schema's die door post-kwantumcryptografie moeten worden vervangen.
Post-kwantumcryptografie (PQC)
Cryptografie die haar veiligheid baseert op wiskundige problemen waarvan wordt aangenomen dat ook kwantumcomputers ze niet efficiënt kunnen oplossen, zoals roosterproblemen en hashfuncties. Ze draait op conventionele computers en wordt gebruikt om RSA en elliptische-krommecryptografie te vervangen, die het algoritme van Shor kan kraken.
ML-KEM
Een op roosters gebaseerd sleutelinkapselingsmechanisme (KEM) dat het Amerikaanse NIST in augustus 2024 als FIPS 203 heeft gestandaardiseerd. De naam staat voor Module-Lattice-Based Key-Encapsulation Mechanism, en het is gebaseerd op CRYSTALS-Kyber. De veiligheid berust op de moeilijkheid van het Module-LWE-probleem, waarbij een geheim moet worden gevonden uit een stelsel lineaire vergelijkingen waaraan kleine fouten zijn toegevoegd; aangenomen wordt dat ook kwantumcomputers dit niet efficiënt kunnen oplossen. Er zijn drie parametersets: ML-KEM-512, ML-KEM-768 en ML-KEM-1024. Het wordt in protocollen zoals TLS gebruikt om ECDHE-sleuteluitwisseling te vervangen of ermee te worden gecombineerd.
Algoritme van Shor
Kwantumalgoritme dat het ontbinden van grote gehele getallen in priemfactoren en het discrete-logaritmeprobleem in polynomiale tijd oplost door met de kwantum-fouriertransformatie perioden te bepalen. Het werd in 1994 gepubliceerd door Peter Shor. Het kan RSA en elliptische-krommecryptografie kraken, maar om het uit te voeren is een grote fouttolerante kwantumcomputer nodig.
Diffie-Hellman-sleuteluitwisseling
Een methode waarmee twee partijen alleen via een openbaar kanaal een gedeeld geheim maken, in 1976 gepubliceerd door Diffie en Hellman. Een priemgetal p en een generator g zijn openbaar; A en B maken uit hun geheime waarden a en b de waarden g^a mod p en g^b mod p en sturen die naar elkaar, en elk verheft de waarde van de ander tot de eigen geheime macht, zodat beiden dezelfde g^(ab) mod p krijgen. De veiligheid berust op de moeilijkheid van het discrete-logaritmeprobleem. De variant op een elliptische kromme heet ECDH, en de varianten met wegwerpwaarden voor elke verbinding heten DHE en ECDHE; die laatste bieden forward secrecy. De methode controleert de andere partij niet, dus ze wordt gecombineerd met handtekeningen en certificaten om man-in-the-middle-aanvallen te voorkomen.
Crypto-agility
Het vermogen om, wanneer een cryptografisch algoritme of een sleutellengte onveilig wordt, zonder grote herziening van een systeem over te stappen op een ander schema. Het wordt vergroot door bij te houden welke cryptografie waar wordt gebruikt (een inventaris), algoritmen selecteerbaar te maken via configuratie of onderhandeling in het protocol, en identificatoren van algoritmen in gegevensformaten op te nemen. Het krijgt veel nadruk bij de migratie weg van MD5, SHA-1 en korte RSA-sleutels en bij de migratie naar post-kwantumcryptografie.
Publieke-sleutelcryptografie (asymmetrische cryptografie)
Cryptografische methode die voor versleutelen en ontsleutelen een bij elkaar horend paar verschillende sleutels gebruikt: een publieke sleutel en een privésleutel. De publieke sleutel mag iedereen kennen, terwijl alleen de eigenaar de privésleutel heeft. Ze maakt de sleuteldistributie eenvoudig, maar is rekenkundig zwaar, dus voor het versleutelen van de gegevens zelf wordt ze gecombineerd met symmetrische cryptografie. RSA en elliptische-krommecryptografie zijn typische voorbeelden.

Verwante vergelijkingen