Hoppa till innehållet

Advanced Encryption Standard

Från Wikipedia
Version från den 23 mars 2008 kl. 07.05 av SieBot (Diskussion | Bidrag) (robot Lägger till: uk:AES)
Tekniska data
Källa: FIPS-197
Namn AES
Kryptotyp Substitution-permutation
Blockstorlek 128 bit
Nyckellängder 128, 192, 256 bit

Advanced Encryption Standard (AES) är en standardiserad krypteringsalgoritm fastslagen av NIST den 26 november 2001. Standarden bygger på krypteringsalgoritmen Rijndael framtagen av belgarna dr Joan Daemen och dr Vincent Rijmen. Rijndael är en blandning av deras namn.

AES är ett symmetriskt blockkrypto konstruerad för att kunna använda krypteringsnycklar med längderna 128, 192 och 256 bit där varje variant benämns AES-128, AES-192, respektive AES-256.

AES är inte ett Feistelkrypto utan ett substitutions-permutationskrypto och bygger därmed på förvanskning av texten genom en serie av omväxlande substitutioner och permutationer, där varje substitution-permutation är en runda (eng. round). Antalet rundor varierar beroende på nyckellängden så att AES-128 har 10 rundor, AES-192 har 12 rundor och AES-256 har 14 rundor. En runda består av fyra steg: Byte substitution, radskiftning, kolumnblandning och nyckeladdition. Undantaget är sista rundan där man hoppar över kolumnblandningen. Innan man börjar med rundorna måste man dock genomföra en nyckelexpansion.

AES är vinnaren av en internationellt utlyst tävling för att få fram en modern kryptoalgoritm. Till följd av tävlingsreglerna är algoritmerna väl genomlysta och dokumenterade, samt inte minst, befriade från patent eller andra immatrielrättsliga "rättigheter". Förutom kravet att vara en bra krypteringsalgortitm, är AES dessutom förhållandevis enkel att realisera i mjuk- eller hårdvara (Ett av kriterierna i tävlingen).

AES är inte symmetriskt, dvs kryptering/dekrypering är inte exakt likadana (om än liknande)räknat i processorkraft kräver dekrypteringen något mer beräkningar än krypteringen (Beroende på att ovan nämnda kolumnblandning/"matrismultiplikation" kräver mer beräkningar åt ena hållet). Det finns emellertid inget som hindrar att man gör tvärtom, dvs använder dekrypteringsalgoritmen som kryptering och krypteringsalgoritmen som dekryptering.


Externa länkar