Cryptografie is niet meer weg te denken uit onze moderne informatiebeveiliging. We vertrouwen voor heel veel toepassingen op de beveiligingswaarde die cryptografie levert. Zo worden standaardprotocollen en primitieven zoals TLS, RSA en AES gebruikt om belangrijke processen en informatie te beschermen. Dankzij cryptografie kunnen we veilig betalen met onze bankpas, verkeerslichten aansturen en vertrouwelijke informatie versleutelen.
De geschiedenis laat zien dat cryptosystemen ‘gebroken’ kunnen worden, bijvoorbeeld door zwaktes in de algoritmes zelf, implementatiefouten, of de komst van nieuwe, krachtigere computers die de cryptografische beveiligingswaarde substantieel verlagen. De aanleiding voor het schrijven van deze blog is een van deze cryptobrekers: de komst van een krachtige quantumcomputer die het mogelijk maakt om veelgebruikte (asymmetrische) cryptografische algoritmes effectief te ‘breken’1.
We moeten hierdoor rekening houden met nieuwe kwetsbaarheden en dreigingen. Een manier om dit te doen is door cryptografie wendbaar (agile) te maken. Die wendbaarheid zorgt er bijvoorbeeld voor dat je snel de sleutellengte kunt veranderen of dat je een ander algoritme kunt implementeren in een protocol. Het PQC-migratiehandboek omschrijft de term crypto-agile als volgt: “het zodanig implementeren van cryptografische protocollen, producten en systemen, dat de betrokken cryptografische algoritmen met minimale inspanning kunnen worden gewijzigd”2. Maar wat houdt deze minimale inspanning in? Wat is een passende wendbaarheid en met welke snelheid moeten veranderingen doorgevoerd kunnen worden? En zijn er ook nadelen aan crypto-agility verbonden?
Als onderdeel van de werkgroep ‘crypto-agility’ van het programma Quantumveilige Cryptografie Rijk (QvC Rijk)3doken we dieper in op dit begrip. We kwamen hierbij tot de realisatie dat er achter de ogenschijnlijk simpele definitie van crypto-agility een complex monster – het crypto-agility monster – verstopt zit.
We hebben geprobeerd dit monster 'op een bierviltje' te temmen, met onderstaand beeld als resultaat. Klik op de cijfers voor meer informatie.
Het crypto-agility monster biedt een eerste basis om de verschillende aspecten van het concept crypto-agility binnen jouw organisatie bespreekbaar te maken. Wat kan je van dit verhaal leren?
Crypto-agility is een manier om (toekomstige) kwetsbaarheden in cryptografische protocollen, primitieven en systemen te mitigeren.
Houd in je risicomanagementproces niet alleen rekening met de positieve effecten van wendbaarheid, maar ook de risico’s die agility kan introduceren.
Kies agility-doelen en de mate van wendbaarheid die passen bij de risico’s van jouw organisatie en bepaal hoe je die doelen kan realiseren.
Probeer zo goed mogelijk in kaart te brengen welke mogelijkheden voor agility je hebt of wil hebben in het cryptosysteem en wat de afhankelijkheden daartussen zijn.
Binnen de werkgroep ‘crypto-agility’ van het programma Quantumveilige Cryptografie Rijk (QvC-Rijk) werken we aan handvatten om de Rijksoverheid en aanbieders van essentiële diensten te ondersteunen om systemen passend crypto-agile te maken. Denk bijvoorbeeld aan handvatten om de juiste crypto-agility doelen te identificeren of hoe je deze doelen het beste kan realiseren.
Hoe kijk jij aan tegen het monster? Heb je hier ervaring mee, of ben je bezig met het ontwerp of beheer van een crypto-agile systeem? Neem dan contact met ons op via research@ncsc.nl.
dr.ir. Dion Koeze, Onderzoeker NCSC
dr.ir. Robert Seepers, Specialistisch adviseur NCSC