Inden for kryptografi er Advanced Encryption Standard (AES) en blokchifferalgoritme med symmetrisk nøgle, som blev udvalgt af National Institute of Standards and Technology (NIST) i 2001. Den blev valgt til kryptering af data. Den er almindeligt anvendt i hele verden. Advanced Encryption Standard har erstattet Data Encryption Standard (DES).
I 2008 er AES en af de mest populære algoritmer, der anvendes inden for symmetrisk nøglekryptografi. Den er tilgængelig for programmører og offentligheden med forskellige softwarepakker.
Tekniske detaljer
AES er baseret på cifersuiten Rijndael, designet af Joan Daemen og Vincent Rijmen. AES er en blokchiffer med en fast blokstørrelse på 128 bit og understøtter tre nøglelængder: 128, 192 og 256 bit. Antallet af runder (repeated transformation steps) afhænger af nøglelængden:
- 128-bit nøgle: 10 runder
- 192-bit nøgle: 12 runder
- 256-bit nøgle: 14 runder
Hver runde består typisk af fire hovedtrin: SubBytes (substitution med en S-boks), ShiftRows (permution af rækkefølger), MixColumns (lineær blanding inden for kolonner) og AddRoundKey (XOR med rundnøglen). Den sidste runde udelader MixColumns.
Driftsmåder og praktisk anvendelse
AES er en byggesten i mange protokoller og produkter. For at bruge AES sikkert i praksis kombineres blokchifferet med en driftsmåde (mode of operation). Almindelige driftsmåder inkluderer:
- ECB (Electronic Codebook) — ikke anbefalet til de fleste anvendelser, fordi identiske blokke giver identiske chiffre.
- CBC (Cipher Block Chaining) — udbredt, men kræver sikker initialiseringsvektor (IV) og autentificering for at være sikker.
- CTR (Counter) — gør AES til en stream-cipher; kræver unik tæller/nonce per nøgle.
- GCM (Galois/Counter Mode) — moderne og populær, leverer både kryptering og autentificering (AEAD). Bruges ofte i TLS, IPsec og andre protokoller.
- CCM — en anden AEAD-mode anvendt i indlejrede systemer og trådløse standarder.
- XTS — særligt designet til disk- og lagringskryptering.
Eksempler på anvendelser: HTTPS/TLS (AES-GCM eller AES-CBC + HMAC), VPN (IPsec med AES), trådløse netværk (WPA2 bruger AES-CCMP), disk- og filkryptering (AES-XTS), sikker messaging og hardwarebaserede sikre elementer.
Sikkerhed og bedste praksis
- AES betragtes i dag som sikker mod praktiske kryptanalytiske angreb; der findes ingen effektiv metode til at bryde fuld AES i praksis med kendte teknikker.
- Der er kendte teoretiske og reducerede-runde angreb, men de påvirker ikke fulde implementationer i praksis.
- Sidekanalangreb (timing, power, cache) kan kompromittere AES-implementeringer. Derfor er beskyttelse mod sidekanaler (f.eks. konstante-tidsimplementeringer, brug af hardware-acceleratorer såsom AES-NI) vigtig.
- Autentificering er afgørende: brug AEAD-modes (f.eks. AES-GCM eller AES-CCM) i stedet for blot at stole på kryptering alene, for at undgå manipulering med de krypterede data.
- Håndtering af IV/nonce: sørg for, at IV/nonce er korrekt genereret og ikke genbruges med samme nøgle (især kritisk for CTR og GCM).
- Nøglestyring er ofte den svageste del — sikre generation, opbevaring og rotation af nøgler er afgørende for systemets samlede sikkerhed.
Standardisering, patenter og implementering
AES blev standardiseret af NIST som FIPS 197 i 2001 efter en offentlig konkurrence. Algoritmen (Rijndael) er fri for kendte patentspærringer og er tilgængelig for offentligheden, hvilket har hjulpet dens brede adoption. Mange processorer og systemer tilbyder hardware-acceleration (f.eks. Intel AES-NI), som gør AES både hurtig og effektiv i software.
Anbefalinger
- Brug AEAD-modes (AES-GCM eller AES-CCM) hvor muligt for både fortrolighed og integritet.
- Vælg nøglelængde ud fra trusselsmodellen: AES-128 er hurtigt og sikkert for de fleste formål; AES-256 anbefales, hvis man ønsker ekstra margin for langtidsbeskyttelse.
- Sørg for korrekt IV/nonce-håndtering (unik for hver kryptering under samme nøgle) og brug sikre tilfældighedskilder til nøgglegenerering.
- Implementér eller brug biblioteker med beskyttelse mod sidekanaler og, hvis muligt, hardware-acceleration.
- Planlæg nøglerotation og sikker nøgleopbevaring (HSM, sikre key stores).
Samlet set er AES en central, velafprøvet og effektiv blokchifferstandard, som danner ryggraden i moderne symmetrisk kryptering. Det rigtige valg af driftsmåde, korrekt nøgle- og nonce-håndtering samt autentificering er dog afgørende for at opnå reelt sikker transmission og opbevaring af data.

