Salaus > Salaustyypit > AES-salaus
Mitä on AES-salaus?
Kryptografiassa AES viittaa Advanced Encryption Standard -salausstandardiin, joka on nopea, tehokas ja turvallinen salausalgoritmi, jonka on sertifioinut Yhdysvaltain kansallinen standardointi- ja teknologiainstituutti (NIST). Se on symmetrinen salausmenetelmä, joka käyttää samaa avainta sekä tietojen salaamiseen että niiden salauksen purkamiseen. Tämä on suhteellisen nopeaa, mikä tekee siitä ihanteellisen suurten tallennettujen tietomäärien salaamiseen.
Vahvuutensa ja luotettavuutensa ansiosta AES on yksi suosituimmista ja yleisimmistä salausmenetelmistä, joita käytetään langattomien verkkojen suojauksessa, tietojen ja levynsalauksessa, verkkomaksujärjestelmissä, pilvitallennuksessa, salasananhallinnassa ja jopa hallinnon ja armeijan sovelluksissa. Yhdysvaltain hallinto käyttää AES-salausta luottamuksellisten tietojensa suojaamiseen, mikä on osaltaan vaikuttanut sen suosioon.

Onko AES-algoritmi turvallinen?
Kyllä. Vuonna 2000 erittäin perusteellisen(uusi ikkuna) ja avoimen valintaprosessin jälkeen NIST ilmoitti, että AES (joka tunnettiin siihen asti Vincent Rijmenin ja Joan Daemenin luomana Rijndael-algoritmina) korvaisi DES-algoritmin sen suosittelemana(uusi ikkuna) ”luokittelemattomana, julkisesti julkaistuna salausalgoritmina, joka kykenee suojaamaan arkaluonteisia hallinnon tietoja pitkälle seuraavalle vuosisadalle.”
NIST:n mukaan kaikki AES-algoritmin avainpituudet katsotaan ”riittäviksi” suojaamaan luokiteltuja tietoja aina ”Secret” (salainen) -tasolle asti. ”Top Secret” (erittäin salainen) -tietojen kohdalla vaaditaan AES-192- tai AES-256-algoritmi.

Raakavoimahyökkäykset
Perustavanlaatuisin mahdollinen hyökkäys mitä tahansa salausmenetelmää vastaan on raa’an voiman hyökkäys, jossa kokeillaan kaikkia mahdollisia avainyhdistelmiä, kunnes oikea löytyy.
Frontier(uusi ikkuna) on maailman tehokkain julkisesti tunnettu supertietokone. Jos se valjastaisi koko tehonsa AES-128-salauksen murtamiseen raa'alla voimalla, kaikkien mahdollisten AES-128-yhdistelmien käymiseen kuluisi silti suuruusluokkaa 10–12 biljoonaa vuotta. Tämä on huomattavasti pidempään kuin maailmankaikkeuden ikä. Joten jopa pienemmillä bittikoillaan AES kestää erittäin hyvin perinteisten tietokoneiden tekemiä raa'an voiman hyökkäyksiä.
AES-256-salauksen murtaminen raa'alla voimalla on 340 miljardia miljardia miljardia miljardia (2¹²⁸) kertaa vaikeampaa kuin AES-128-salauksen.
Vaikka Groverin algoritmi(uusi ikkuna) teoriassa puolittaa symmetristen avainten turvallisuuden kvanttiuhkia vastaan, ne ovat silti suhteellisen kvanttiresistenttejä, erityisesti käytettäessä 256-bittistä avainta.
Avainhyökkäykset
Vuosien varrella kryptografit ovat julkaisseet useita teoreettisia hyökkäyksiä AES-avaimia vastaan, mutta kaikki niistä ovat joko käytännössä toteuttamiskelvottomia tai tehokkaita vain sellaisia AES-toteutuksia vastaan, joissa käytetään vähennettyä kierrosmäärää (katso alla).
Menestyksekkäin yritys oli vuonna 2011 julkaistu teoreettinen biclique-hyökkäys(uusi ikkuna), joka voi vähentää AES:n raakavoimamurtamiseen tarvittavaa aikaa neljäsosaan. Siitä huolimatta AES:n raakavoimamurtaminen veisi miljardeja vuosia millä tahansa nykyisellä tai ennakoitavissa olevalla tietokonelaitteistolla.
Mikään tunnettu avainhyökkäys ei ole käytännöllinen oikein toteutettua AES-128:aa tai sitä vahvempaa vastaan.
Sivukanavahyökkäykset
Sivukanavahyökkäys pyrkii vähentämään onnistuneeseen raakavoimahyökkäykseen tarvittavien yhdistelmien määrää etsimällä vihjeitä tietokoneesta, joka suorittaa salauksen laskutoimituksia. Vihjeitä voidaan saada tutkimalla:
- Ajastus – kuinka kauan tietokoneelta kestää suorittaa toiminto
- Sähkömagneettiset vuodot
- Äänivihjeet
- Visuaaliset vihjeet (tallennettu korkearesoluutioisella kameralla).
Erityisesti välimuistin ajoitukseen perustuvat hyökkäykset ovat osoittautuneet varsin tehokkaiksi AES:n onnistuneessa murtamisessa. Tunnetuimmassa esimerkissä tutkijat pystyivät vuonna 2016 palauttamaan(uusi ikkuna) AES-128-avaimen käyttämällä ”vain noin 6–7 pelkän tekstin tai salatun tekstin lohkoa (teoriassa jopa yksi ainoa lohko riittäisi)”.
Sivukanavahyökkäysten uhkaa voidaan kuitenkin lieventää monin tavoin:
- Oikein toteutettu AES voi estää tapoja, joilla tietoja voi vuotaa.
- AES-käskyjoukon integroiva laitteisto pienentää entisestään AES:n sivukanavahyökkäysten hyökkäyspintaa.
- Satunnaistamistekniikoita voidaan käyttää häiritsemään suhdetta AES:llä suojattujen tietojen ja mahdollisesti vuotaneiden tietojen välillä, joita voitaisiin kerätä sivukanavahyökkäyksellä.
Monissa tapauksissa sivukanavahyökkäykset edellyttävät, että hyökkääjällä on fyysinen pääsy laitteeseen tai että hän on sen lähellä laitteen purkaessa tietojen salausta, vaikka etähyökkäykset ovat mahdollisia, jos laitteeseen on asennettu haittaohjelmistoa, erityisesti ajoitushyökkäysten tapauksessa.
Miten AES toimii
AES on lohkosalaus, joka salaa ja purkaa tietojen salauksen 128 bitin lohkoissa käyttäen 128-, 192- tai 256-bittisiä avaimia. Kuten aiemmin todettiin, samaa avainta käytetään tietojen salaamiseen ja salauksen purkamiseen. AES:ää, jossa käytetään 128-bittistä avainta, kutsutaan usein nimellä AES-128, ja vastaavasti AES-192 ja AES-256.

Tiedot salataan useilla kierroksilla, joista jokainen koostuu sarjasta matemaattisia operaatioita.
Prosessi alkaa käyttämällä Rijndaelin avaintenmuodostusalgoritmia useiden uusien kierrosavainten johtamiseksi alkuperäisestä salaisesta avaimesta. Tämä tunnetaan avainten laajentamisena.
Kukin kierros koostuu tällöin yhdestä tai useammasta (tai yhdistelmästä) seuraavista operaatioista:
1. Add Round Key: XOR-operaatio(uusi ikkuna) suoritetaan salattavan tiedon (salatekstin) yhdistämiseksi kunkin kierroksen avaimeen.

2. Sub Bytes: Korvaustaulukkoa käytetään sekoittamaan tiedot entistä paremmin. Ajatelkaa periaatteessa niitä yksinkertaisia substituutiosalauksia, joita käytitte lapsena ja joissa viestin jokainen kirjain korvattiin aakkostossa tietyn määrän myöhemmin olevalla kirjaimella.

3. Shift Rows: Jokainen 128-bittinen tietolohko koostuu 16-bittisestä 4x4-lohkosta. Tässä operaatiossa lohkon rivin jokaista tavua siirretään tietyllä siirtymällä vasemmalle.

4. Mix Columns: Lohkon jokaiselle sarakkeelle suoritetaan ylimääräinen kääntyvä lineaarimuunnos.

Tämä muunnossarja muodostaa yhden kierroksen, joka toistetaan tiedoille tietyn määrän kertoja avaimen koon mukaan:
- AES-128 — 10 kierrosta
- AES-192 — 12 kierrosta
- AES 256 — 14 kierrosta
Tietojen salauksen purkamiseksi kaikki sen salaamiseen käytetyt vaiheet suoritetaan yksinkertaisesti käänteisessä järjestyksessä. Tämä edellyttää alkuperäistä salaista avainta prosessin kääntämiseksi käyttäen jokaista käänteistä kierrosavainta.
Miksi AES-256:ta suositaan AES-192:een tai AES-128:aan verrattuna?
AES-128-salauksen murtaminen raa'alla voimalla kestäisi kauemmin kuin maailmankaikkeuden ikä, kun otetaan huomioon nykyinen ja lähitulevaisuudessa nähtävissä oleva teknologia. Legendaarinen kryptografi Bruce Schneier on jopa väittänyt(uusi ikkuna), että AES-128 saattaa olla vahvempi kuin AES-256, koska siinä on vahvempi avaintenmuodostus – algoritmi, joka laskee kaikki kierrosavaimet alkuperäisestä salaisesta avaimesta.
Silti AES-256-standardista on tullut de facto -kultastandardi symmetrisen avaimen salauksessa. Sitä pidetään usein (joskin hieman kiistanalaisesti) vahvempana valintana, koska sen suurempi avainkoko viittaa lisättyyn turvamarginaaliin, jotta salatut tiedot pysyvät turvassa, vaikka algoritmin heikentämiseen dramaattisesti löydettäisiin jokin keino. Tämä peruste on vahvistunut, kun tarve post-kvanttiresistenssille on muuttunut entistä kiireellisemmäksi.
AES-CBC vs. AES-GCM
Vielä melko hiljattain AES:ää käytettiin yleensä cipher block chaining (CBC) -tilassa, jossa jokainen pelkän tekstin lohko XORataan edellisen salatun tekstin lohkon kanssa ennen kuin se salataan. Kun AES:ää käytetään CBC-tilassa, tietojen varmentamiseen tarvitaan HMAC(uusi ikkuna)-tiivistysalgoritmi, kuten HMAC-SHA256.
Yhä yleisempää on kuitenkin, että AES:ää käytetään Galois/counter (GCM) -tilassa, joka käyttää salauksen laskuritilaa(uusi ikkuna). Sen tärkein etu on, että se käyttää Galois-kenttää(uusi ikkuna) tietojen varmentamiseen ilman ulkoista algoritmia. Siksi se on tehokkaampi kuin erillisen tunnistautumisalgoritmin käyttö, josta voi aiheutua suuri laskennallinen kuorma.
Vaikka HMAC-tunnistautumisella varustettua AES-CBC:tä pidetään yleisesti turvallisena, CBC on mahdollisesti altis täydennyshyökkäyksille(uusi ikkuna), kuten POODLElle(uusi ikkuna). GCM ei ole.
Laitteistokiihdytetty AES
Useimmat nykyaikaiset suorittimet sisältävät AES-NI-laajennuksen (Advanced Encryption Standard New Instructions, AES-NI(uusi ikkuna)), joka on laitteistotason käskykanta AES-operaatioiden suorittamiseksi suoraan suorittimessa. Tämä tekee AES-salauksesta paljon nopeamman ja auttaa myös estämään ajoitukseen perustuvia sivukanavahyökkäyksiä, koska operaatiot tapahtuvat suorittimen suojatuissa suoritusyksiköissä, jolloin hyökkääjälle jää vähemmän havaittavia ajoitusvaihteluita hyödynnettäväksi.
Proton ja AES
Käytämme AES:ää laajasti Proton-tuotteiden suojaamiseen:
Tapahtumat ja yhteystiedot suojataan AES-256:lla yhdessä ECC:n kanssa avaintenvaihtoa varten, jotta yksityisyytenne varmistetaan päästä päähän -salauksella.
Proton VPN keskittyy pääasiassa nopeaan ja tehokkaaseen WireGuard® VPN -protokollaan (joka käyttää ChaCha20:tä), mutta OpenVPN-yhteydet käyttävät AES-256:ta.
Proton Pass tallentaa salasanat, muistiinpanot, henkilöllisyydet ja muut kohteet suojattuun holviinne AES-256:ta käyttäen.
Proton Drive salaa kaikki lähetetyt tiedostot päästä päähän AES-256:lla käyttäen ECC:tä avaintenvaihtoon. Proton Docs ja Proton Sheets käyttävät myös AES-256:ta ECC-pohjaisella avaintenvaihdolla, vaikka niiden salauksen toteutus eroaa Proton Driven yleisestä tiedostonsalausjärjestelmästä.
Proton Mail tallentaa sähköpostit ja liitteet AES-256:ta käyttäen OpenPGP-standardin kautta. Jopa yksityinen avaimenne, joka avaa sähköpostinne, salataan AES-256:lla ennen kuin se tallennetaan palvelimelle.
Proton Meet käyttää Messaging Layer Securityä (MLS) äänen, videon ja chat-viestien salaamiseen varmistaen eteenpäin suuntautuvan salaisuuden (PFS) ja murtautumisen jälkeisen turvallisuuden (PCS) kaikelle viestinnälle. Kaikki kokoustiedot ovat päästä päähän -salattuja käyttäen AES-256-GCM:ää.
AES-salaukseen kohdistuvien hyökkäysten lieventäminen
Tietoturva on vain niin vahva kuin sen heikoin lenkki, joka on yleensä salasananne. Tämä tarkoittaa, että sosiaalisen manipuloinnin keinot, tietojenkalasteluhyökkäykset ja näppäilynsuorittimet(uusi ikkuna) ovat myös uhka AES-salatulle tiedolle. Joten silloinkin, kun AES on käytössä, teidän tulisi noudattaa seuraavia varotoimia:
- Käyttäkää salattua salasananhallintaa
- Käyttäkää laitteistosuojausavaimia (kuten YubiKeyta) tuomaan lisäsuojaa
- Jos kuulutte johonkin organisaatioon, järjestäkää henkilöstölle säännöllistä tietoturvakoulutusta tietojenkalasteluhyökkäysten estämiseksi
Ota tietosi haltuusi
Proton rakennettiin suojaamaan tietojasi alusta alkaen. Päästä päähän -salauksen, avoimen lähdekoodin sovellusten ja riippumattomien tarkastusten ansiosta tietosi pysyvät sinun.
Usein kysytyt kysymykset AES-salauksesta
- Kumpi on parempi: AES vai DES?
- Kumpi on parempi: AES vai RSA?
- Kuinka vahva AES-turvallisuus on?


