Hoe werkt het versleutelingsalgoritme Rijndael?

Ook bekend onder de afkorting AES

Het veilig verzenden van strikt vertrouwelijke informatie zonder dat onbevoegden toegang krijgen, is altijd een uitdaging geweest. Vroege “geheime talen” – zoals eenvoudige letterverschuivingen – zijn met moderne rekenkracht eenvoudig te kraken. Tegenwoordig beschermen we gegevens met cryptografische methoden die wiskundig nauwkeurig zijn gedefinieerd en waarvan de veiligheid openbaar is beoordeeld.

Dergelijke methoden maken gebruik van een sleutel die alleen de afzender en de ontvanger kennen. Het versleutelen en ontsleutelen gebeurt volgens een versleutelingsalgoritme – een duidelijk beschreven wiskundige methode.

Password Depot versleutelt uw vertrouwelijke gegevens met het algoritme Rijndael, dat is gestandaardiseerd als AES (Advanced Encryption Standard).

Hieronder leggen we het algoritme uit en classificeren we het technisch.

Advanced Encryption Standard (AES) – de gestandaardiseerde variant van Rijndael

Het Amerikaanse National Bureau of Standards (tegenwoordig NIST) standaardiseerde in 1977 de DES; deze standaard werd in 2005 teruggetrokken omdat hij niet meer voldoende veilig was (NIST-bericht). Als opvolger koos NIST in 2001 voor Rijndael en standaardiseerde daaruit de Advanced Encryption Standard (AES) (FIPS 197).

Belangrijk: AES is een deelverzameling van de Rijndael-familie. AES legt de blokgrootte vast op 128 bit en staat sleutels toe met 128, 192 of 256 bits (NIST-opmerking, FIPS 197 (PDF)).

AES is goedgekeurd voor de bescherming van informatie van Amerikaanse overheidsinstanties tot het niveau TOP SECRET (zie CNSSP‑15 Fact Sheet en de actuele CNSA‑2.0‑FAQ van de NSA).

Zo werkt Rijndael/AES (kort overzicht)

Rijndael is een substitutie-permutatie-netwerk-cijfer. De kernideeën zijn vervangingen op byte-niveau, lineaire transformaties en XOR-koppelingen.

Verloop op blokniveau (128 bit “state”)

  • Sleuteluitbreiding (Key Schedule): Uit de sleutel worden nr + 1 rondesleutels afgeleid (bijv. 11 bij AES‑128, 13 bij AES‑192, 15 bij AES‑256). Bron: FIPS 197.
  • Eerste ronde: AddRoundKey – het blok met leesbare tekst (als 4×4-byte-matrix) wordt via XOR gekoppeld aan de eerste rondesleutel.
  • Rondes 1 … Nr:
    • SubBytes: elke byte wordt vervangen via een S-box (multiplicatieve inverse in GF(28) plus affiene transformatie met constante 0x63) . Bron: FIPS 197.
    • ShiftRows: Rijen van de toestandsmatrix worden cyclisch verschoven.
    • MixColumns: kolommen worden gemengd door middel van matrixvermenigvuldiging via GF(28).
    • AddRoundKey: XOR met de betreffende rondesleutel.
    Opmerking: In de laatste ronde vervalt MixColumns. Het aantal rondes bedraagt 10/12/14 voor sleutels met 128/192/256 bits (FIPS 197).

AES kan worden geïmplementeerd in software, firmware of hardware (FIPS 197). Voor praktisch gebruik worden bedrijfsmodi gebruikt, bijvoorbeeld CBC, CTR of GCM (geauthenticeerde versleuteling). Aanbevelingen vindt u in NIST SP 800‑38A en NIST SP 800‑38D (GCM/GMAC).

Belangrijk om te weten: AES is een symmetrische cijfermethode voor gegevensversleuteling. Sleuteluitwisseling vindt gewoonlijk plaats met asymmetrische methoden ((EC)DH/RSA). AES kan sleutels echter veilig verpakken (“Key Wrap”) – zie NIST SP 800‑38F.

Officiële specificatie

De referentie vindt u hier: https://csrc.nist.gov/files/pubs/fips/197/final/docs/fips-197.pdf

e-force-aanvallen

Brute-force betekent dat een aanvaller alle mogelijke sleutels probeert. Klassieke methoden zoals DES met slechts 56-bits sleutels kunnen tegenwoordig praktisch worden gekraakt – NIST heeft DES daarom in 2005 officieel ingetrokken (NIST).

Moderne methoden zoals AES met sleutels van 128/192/256 bits hebben daarentegen een astronomisch grote sleutelruimte. In de praktijk is niet zozeer het algoritme doorslaggevend, maar wel de sleutelafleiding uit wachtwoorden en de kwaliteit van het hoofdwachtwoord.

Password Depot bemoeilijkt brute-force-aanvallen bovendien door een vertragingsfunctie: na een onjuiste invoer van het hoofdwachtwoord blijft het programma enkele seconden geblokkeerd.

Conclusie: Bij correcte implementatie, geschikte bedrijfsmodi (bijv. GCM) en voldoende sleutellengte wordt AES vanuit hedendaags perspectief beschouwd als zeer veilig op lange termijn.

Meer over brute-force-aanvallen.

Aanvullende bronnen