AES (2-A)

DES oli alunperin IBM:n ehdotus standardiksi vuodelta 1974. DES:n seuraajaksi tarkoitetun AES:n (Advanced Encryption Standard) luominen alkoi vuoden 1997 alussa. Tavoitteena on julkinen ja maailmanlaajuisesti vapaasti saatavilla oleva symmetrisen avaimen lohkoalgoritmi, jossa lohkon koko on vähintään 128 bittiä ja avaimen pituudella on vaihtoehtoina (ainakin) 128, 192 ja 256 bittiä.

Virallinen kutsu ehdotuksille oli syyskuussa 1997. Elokuussa 1998 ensimmäisen AES-konferenssin yhteydessä NIST (National Institute of Standards and Technology) julisti 15 virallista ehdokasta julkisesti tutkittaviksi. Toinen konferenssi pidettiin maaliskuussa 1999 ja ensimmäisen kierroksen julkinen kommentointiaika päättyi huhtikuussa. Elokuussa 1999 julkistettiin loppukilpailuun hyväksytyt algoritmit, jotka ovat nimeltään MARS, RC6, Rijndael, Serpent ja Twofish. Lokakuussa 2000 standardoitavaksi valittiin Rijndael ja vuoden 2001 puolivälin paikkeilla standardin oli määrä olla valmis. Joulukuun 6:ntena 2001 julkaistun tiedon mukaan (Yhdysvaltain) "The Secretary of Commerce approves FIPS 197, Advanced Encryption Standard (AES), and makes it compulsory and binding on Federal agencies for the protection of sensitive, unclassified information." Standardi astui voimaan 26.5.2002. Historiatiedot AES:sta ja standardin muodostumisesta saat NIST:n sivulta. Sieltä pääsee käsiksi myös AES-toteutuksiin. (FIPS=Federal Information Processing Standard.)

AES kandidaatit järjestettiin paremmuusjärjestykseen turvallisuuden (security), laskennallisen tehokkuuden (cost) ja algoritmin ja sen implementoinnin yksityyiskohtien, kuten joustavuuden ja yksinkertaisuuden perusteella. Kaikki algoritmit, joita ei katsottu turvallisiksi pudotettiin heti pois. Viimeiset viisi vaihtoehtoa todettiin täyttävän turvallisuusehdon. Rijndael valittiin, koska se yhdisti turvallisuuden, tehokkuuden, implementoitavuuden ja joustavuuden muita ehdokkaita selvästi paremmin.

Valintaprosessi oli huomattava avoimuudestaan ja kansainvälisestä ilmapiiristään. Valintaprosessin aikana käydyistä kolmesta konferenssista, keskimmäinen pidettiin Yhdysvaltojen ulkopuolella - Italiassa, Roomassa. Konferenssit sekä viralliset pyynnöt julkiseen kommentointiin antoivat mahdollisuuden laajaan palautteen antamiseen ja julkiseen, avoimeen keskusteluun. Viidestätoista osanottajasta kaksitoista tuli eri maasta. Rijandel, joka valittiin AES:ksi, oli kahden Belgialaisen tutkijan käsialaa.

Rijndaelissa lohkokoko ja avaimen pituus ovat valittavissa 128:n ja 256:n väliltä 32 bitin välein toisistaan riippumatta. AESissa määritellään vain lohkokoko 128 ja avainpituudet 128, 192 ja 256. Avaimen pituuden mukaan algoritmissa tehtävien kierrosten määrä on 10, 12 tai 14. AES ei käytä Feistel-periaatetta. Kierroksittain tehtävät operaatiot ovat
  • tavujen korvaaminen,
  • niiden permutointi matriisiksi kirjoitetun lohkon rivejä kiertämällä,
  • vastaavan matriisin sarakkeiden sotkeminen matriisikertolaskulla ja
  • kierrosta varten lasketun avaimen XOR-summaus lohkon kanssa.
Operaatiot on muodostettu yksinkertaisilla periaatteilla käyttäen erityisesti 256 alkion äärellisen kunnan operaatioita. Tavut eli kahdeksan bitin jonot voidaan tulkita sellaisen alkioiksi ja niiden välille on tällöin määritelty kertolasku. Esimerkiksi tavujen korvaamiseksi laskettu taulukko perustuu siihen että kustakin tavusta (paitsi nollasta) lasketaan ensin käänteisalkio eli uusi tavu b ja tulokseksi lasketaan tavu b', jossa kuhunkin b:n bittiin on XOR-summattu vakio ja neljä muuta b:n bittiä (peräkkäiset alkaen neljännestä positiosta eteenpäin ja kiertäen alkuun). Tällä tavoin rakennetusta järjestelmästä on helppo uskoa, ettei siihen ole kätketty mitään takaportteja.

Algoritmin havainnollistus löytyy Wikipediasta. AESiin voi tutustua myös MATLAB-toteutuksen kautta.

-- JukkaKoskinen?

SivuTiedotLaajennettu edit

Vaativuus Jatko
Valmius Kehitteillä
Tyyppi Ydin
Luokitus Krypto
Mitä Luottamuksellisuus
Miltä Tahallinen uhka
Missä Järjestelmä
Kuka Titu-ammattilainen
Milloin Ennakolta
Miksi Hyvä tapa
Print version |  PDF  | History: r5 < r4 < r3 < r2 | 
Topic revision: r5 - 18 May 2011 - 14:52:08 - MarkoHelenius
 

TUTWiki

Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TUTWiki? Send feedback