V kryptografii je Advanced Encryption Standard (AES) algoritmus blokovej šifry so symetrickým kľúčom, ktorý bol vybraný Národným inštitútom pre štandardy a technológie (NIST) v roku 2001. Bol vybraný na šifrovanie údajov. Bežne sa používa na celom svete. Pokročilý šifrovací štandard nahradil štandard DES (Data Encryption Standard).
Od roku 2008 je AES jedným z najpopulárnejších algoritmov používaných v kryptografii so symetrickým kľúčom. Je dostupný pre programátorov a širokú verejnosť pomocou rôznych softvérových balíkov.
Základné vlastnosti
- Veľkosť bloku: 128 bitov (fixná).
- Dĺžka kľúča: 128, 192 alebo 256 bitov (označované ako AES-128, AES-192, AES-256).
- Štruktúra: substitučná–permutatívna sieť (SPN), pôvodne navrhnutá tímom Vincenta Rijmena a Joan Daemena pod názvom Rijndael.
- Počet kôl: závisí od dĺžky kľúča — 10 kôl pre 128-bit, 12 pre 192-bit a 14 pre 256-bit.
Ako AES funguje (stručne)
AES spracúva 128-bitový blok ako štvoricu riadkov a štyroch stĺpcov (stav). Každé kolo pozostáva z niekoľkých fáz:
- SubBytes: nelineárna substitúcia bajtov cez S-box.
- ShiftRows: cyklické posuny riadkov v stave.
- MixColumns: lineárna transformácia miesiacich stĺpcov (okrem posledného kola).
- AddRoundKey: XOR s rozšíreným kľúčom pre dané kolo.
Toto opakovanie vytvára silnú difúziu a zamiešanie pôvodných dát s kľúčom.
Režimy prevádzky
AES je len algoritmus blokovej šifry; na reálne šifrovanie dát sa používa v režimoch prevádzky. Medzi najčastejšie patria:
- ECB (Electronic Codebook): jednoduchý, ale neodporúča sa pre opakujúce sa dáta (netvorí zamaskovanie vzorov).
- CBC (Cipher Block Chaining): bežne používaný, vyžaduje náhodný IV pre každú správu.
- CTR (Counter): prevádza blokovú šifru na prúdovú, paralelizovateľný.
- GCM (Galois/Counter Mode): poskytuje autentifikáciu aj dôvernosť (AEAD) a je veľmi populárny v sieťových protokoloch.
Bezpečnosť a známe útoky
- AES považovaný za bezpečný pri správnom použití a primeranej správe kľúčov. Pri dĺžke kľúča 128 bitov je priamy hrubou silou (brute-force) prakticky nepriechodný.
- Existujú teoretické útoky na redukovaný počet kôl alebo špecifické varianty, ale plná verzia AES zostáva bezpečná proti praktickým kryptanalytickým útokom.
- Reálne riziká sú často implementačné útoky — bočné kanály (timing, power, cache), zlé generovanie IV, zle spravované kľúče alebo použitie nevhodných režimov (napr. ECB).
Použitie v praxi
- Šifrovanie sieťovej komunikácie: TLS/SSL (pre zabezpečenie webu), IPsec, VPN.
- Šifrovanie uložených dát: šifrovanie diskov (BitLocker, LUKS), súborov a databáz.
- Mobilné a embedded zariadenia: vďaka efektívnosti a podpore hardvérového akcelerátora (napr. AES-NI) beží rýchlo aj na bežnom hardvéri.
Implementačné odporúčania
- Používajte mód so zaručenou autentifikáciou (napr. AES-GCM alebo AES-CCM) namiesto samotného šifrovania bez autentifikácie.
- Generujte pre každú správu jedinečný a/nebo náhodný IV/nonce (podľa režimu).
- Dbajte na bezpečné ukladanie a rotáciu kľúčov; použite dedikované HSM alebo KMS tam, kde je to možné.
- Zabezpečte implementácie proti bočným kanálom (constant-time operácie, maskovanie, vyhýbanie sa tabuľkovej implementácii bez ochrany).
- Využívajte overené kryptografické knižnice a aktívne aktualizujte softvér.
Záver
AES zostáva štandardom pre symetrické šifrovanie vďaka svojej bezpečnosti, rýchlosti a širokej podpore v hardvéri aj softvéri. Správne nasadenie (vo vhodnom režime, s autentifikáciou a korektnou správou kľúčov a IV) zabezpečí vysokú úroveň ochrany dát v rôznych aplikáciách.

