Šifrování AES-256 vysvětleno: co to znamená pro vaše data

Šifrování AES-256 vysvětleno: co to znamená pro vaše data

AES-256 vysvětleno: jak šifra funguje, proč záleží na 256bitových klíčích, co přidává režim GCM a co zkontrolovat, když aplikace tvrdí, že používá šifrování AES-256.


AES-256 je Advanced Encryption Standard s 256bitovým klíčem, standardizovaný NIST jako FIPS 197 v roce 2001. Jde o symetrický šifrovací algoritmus používaný americkou vládou pro utajované informace, bankami pro finanční transakce a bezpečnostními aplikacemi pro ochranu dat v klidu i při přenosu. AES-256 má 2^256 možných klíčů: číslo větší než odhadovaný počet atomů v pozorovatelném vesmíru. Žádný známý útok tento prostor klíčů výpočetně zredukovatelný neučiní.

Tento průvodce vysvětluje, co AES-256 skutečně dělá, proč záleží na velikosti klíče, co znamenají různé režimy (ECB, CBC, GCM) a na co se zaměřit, když aplikace tvrdí, že používá šifrování AES-256.

Co AES vlastně dělá

AES je symetrická bloková šifra. "Symetrická" znamená, že stejný klíč šifruje i dešifruje. "Bloková šifra" znamená, že zpracovává data v blocích pevné velikosti 128 bitů (16 bajtů).

Algoritmus vezme vaše data (prostý text), zkombinuje je s klíčem a prostřednictvím série matematických transformací vytvoří přeházenou výstup (šifrový text). Tyto transformace: substituce, posun, míchání a přidání klíče, se opakují po pevný počet kol. AES-256 používá 14 kol.

Každé kolo aplikuje čtyři operace:

  1. SubBytes: Každý bajt je nahrazen pomocí pevné substituční tabulky (S-box), čímž je zavedena nelinearita.
  2. ShiftRows: Bajty v každém řádku jsou posunuty o různé posuny, čímž se data rozloží do pozic.
  3. MixColumns: Sloupce jsou smíchány prostřednictvím maticového násobení v konečném poli, čímž se změny rozptýlí v bajtech.
  4. AddRoundKey: Klíč kola (odvozený z hlavního klíče) se XORuje s daty.

Po 14 kolech je prostý text důkladně přeházen. Obrácení těchto operací se správným klíčem obnoví původní data. Bez klíče je šifrový text nerozeznatelný od náhodného šumu.

Proč záleží na 256 bitech

Číslo "256" v AES-256 odkazuje na délku klíče: 256 bitů. To určuje počet možných klíčů, které musí útočník vyzkoušet, aby prolomil šifrování hrubou silou.

Velikost klíče Možné klíče Čas prolomení hrubou silou (bilion pokusů/s)
56 bitů (DES) 7,2 x 10^16 přibližně 20 hodin
128 bitů (AES-128) 3,4 x 10^38 10^13 let (10 bilionů let)
256 bitů (AES-256) 1,16 x 10^77 10^51 let

Pro srovnání: vesmír je přibližně 1,38 x 10^10 let starý. Prolomení AES-256 hrubou silou by trvalo přibližně 10^41krát déle než stáří vesmíru, a to i při bilionu pokusů za sekundu.

AES-128 je již výpočetně neproveditelné prolomit hrubou silou. AES-256 poskytuje další rezervu vůči budoucím pokrokům v oblasti výpočetní techniky, včetně kvantových počítačů. Groverův algoritmus (kvantový útok) efektivně halvuje délku klíče, čímž se AES-256 redukuje na ekvivalent AES-128, který je stále neproveditelný. AES-128 by byl redukován na 64bitovou efektivní bezpečnost, což je potenciálně zranitelné. Proto bezpečnostně kritické aplikace preferují AES-256.

Režimy AES: proč záleží

Samotné AES šifruje pouze jeden 128bitový blok najednou. Pro skutečná data (fotografie, dokumenty, videa) potřebujete "provozní režim", který zpracovává data větší než 16 bajtů. Režim určuje, jak jsou bloky řetězeny dohromady, a má zásadní bezpečnostní důsledky.

ECB (Electronic Codebook): nepoužívat

Každý blok je šifrován nezávisle se stejným klíčem. Identické bloky prostého textu vytvářejí identické bloky šifrového textu. Tím dochází k úniku vzorů v datech. Klasická ukázka: šifrování bitmapového obrázku pomocí ECB zachovává strukturu obrázku v šifrovém textu, takže obsah zůstává rozpoznatelný. ECB je v standardu zahrnut, ale nikdy by neměl být používán pro data, která mají strukturu nebo opakující se vzory.

CBC (Cipher Block Chaining): starší standard

Každý blok je před šifrováním XORován s předchozím šifrovým textem. To eliminuje únik vzorů ECB. CBC byl standardním režimem po desítky let, ale pro většinu aplikací ho nahradil GCM. CBC vyžaduje náhodný inicializační vektor (IV) a neposkytuje vestavěné ověřování.

GCM (Galois/Counter Mode): současný standard

GCM kombinuje šifrování v čítačovém režimu s ověřením Galoisova pole. Poskytuje ověřené šifrování: šifruje data A vytváří ověřovací tag, který detekuje jakoukoliv úpravu šifrového textu. Pokud je změněn jediný bit, dešifrování selže, namísto vytvoření poškozeného prostého textu.

NIST standardizoval GCM v SP 800-38D (2007). Je to doporučený režim pro nové implementace.

AES-256-GCM je AES s 256bitovým klíčem v režimu Galois/Counter. To by měly používat bezpečnostně kritické aplikace a co Vaultaire používá pro šifrování obsahu fotografií a souborů.

Režim Únik vzorů Ověřování Aktuální doporučení
ECB Ano (závažný) Ne Nepoužívat
CBC Ne Ne (vyžaduje samostatný MAC) Starší; přijatelné s HMAC
GCM Ne Ano (vestavěný) Doporučeno pro nové implementace

Co AES-256 znamená pro ukládání fotografií

Když aplikace trezoru fotografií tvrdí "šifrování AES-256", měly by platit tři věci:

  1. Obsah souboru je šifrován pomocí AES-256. Surová data fotografie (pixely, metadata, miniatura) jsou transformována na šifrový text pomocí 256bitového klíče.

  2. Každý soubor používá jedinečný inicializační vektor (IV). Pokud jsou dvě identické fotografie šifrovány stejným klíčem, šifrový text by měl být odlišný. To vyžaduje jedinečný IV na soubor. Bez toho může statistická analýza odhalit vzory.

  3. Režim poskytuje ověřování (GCM nebo ekvivalent). Bez ověřování by útočník mohl upravit šifrový text bez detekce. Dešifrovaný výsledek by byl poškozená data, nikoliv chyba.

Co "AES-256" na marketingové stránce neříká

AES-256 je nutný, ale ne postačující. Několik kritických faktorů určuje, zda šifrování skutečně chrání vaše data:

Odvozování klíče je podstatné. Jak je generován 256bitový klíč? Pokud je odvozen ze 4ciferného PIN pomocí slabého KDF, efektivní bezpečnost jsou 4 číslice (10 000 kombinací), ne 256 bitů. Silná implementace používá PBKDF2 s vysokým počtem iterací nebo Argon2 s vhodnými parametry paměti/času. Vaultaire používá PBKDF2 s HMAC-SHA512 a odvozuje klíč ze vzoru na mřížce 5x5 s miliardami možných vstupů.

Uložení klíče je podstatné. Kde klíč žije? Pokud je klíč uložen v prostém textu v sandboxu aplikace, může ho přečíst jakýkoli malware s přístupem k souborům. Správné uložení klíče používá hardwarově podporované mechanismy jako Apple Secure Enclave, kde klíče existují v dedikovaném koprocesoru s vlastní šifrovanou pamětí.

Co je šifrováno, je podstatné. Některé aplikace šifrují obsah souborů, ale ponechávají názvy souborů, miniatury a metadata nešifrované. Soudní znalec nemusí vidět vaši fotografii, ale vidí "dovolena-plaz-2025.jpg" v seznamu souborů. Komplexní šifrování pokrývá metadata samostatně.

Životní cyklus klíče je podstatný. Je klíč smazán z paměti po zavření aplikace? Pokud klíč v paměti přetrvává, mohl by ho extrahovat výpis paměti. Vaultaire maže klíče z paměti při každém zavření aplikace a vyžaduje čerstvé zadání vzoru při každém spuštění.

AES-256 v praxi: kdo ho používá

Subjekt Případ použití Režim
Americká vláda (NSA) Utajované informace GCM (nebo CTR se samostatným ověřováním)
Apple (iCloud ADP) Koncové šifrování iCloud GCM
Signal Šifrování zpráv CBC (s HMAC pro ověřování)
Banky Šifrování finančních transakcí GCM
1Password Trezor hesel GCM
Vaultaire Trezor fotografií a souborů GCM
VeraCrypt Šifrování disku XTS (optimalizováno pro diskové bloky)

Časté omyly

"Vojenské šifrování" nic konkrétního neoznačuje. Marketingové stránky tuto frázi používají, protože zní působivě. AES-256 používají armády. Stejně tak AES-128. Fráze vám neříká nic o režimu, odvozování klíče, uložení klíče ani o tom, co skutečně šifruje.

"256bitové šifrování" nemusí znamenat AES-256. Jiné šifry také používají 256bitové klíče (ChaCha20, Twofish, Serpent). Zkontrolujte, který algoritmus je specifikován. AES-256-GCM je současný standard.

AES-256 nechrání před slabým heslem. Pokud je vaše heslo "1234" a odvozování klíče je slabé, šifrování je efektivně 4ciferně bezpečné bez ohledu na sílu šifry. Řetěz se přetrhne na nejslabším článku.

AES-256 nechrání data při použití. Když si prohlížíte fotografii, musí být dešifrována v paměti. V tu chvíli existuje v prostém textu v RAM. Správné implementace toto okno minimalizují a dešifrovaná data rychle mažou.

Nejčastější otázky

Lze AES-256 prolomit?

Žádný známý útok AES-256 neprolomí redukcí celého prostoru klíčů. Nejznámější útok (biclique attack od Bogdanova, Khovratoviche a Rechbergera, 2011) redukuje AES-256 z 2^256 operací na 2^254.4: teoretické zlepšení, které je výpočetně v praxi bezvýznamné. AES-256 zůstává neprolamitelný.

Je AES-256 odolný vůči kvantovým počítačům?

V zásadě ano. Groverův kvantový algoritmus halvuje efektivní délku klíče: AES-256 se stává ekvivalentem 128bitové bezpečnosti vůči kvantovým útokům. AES-128 by byl redukován na 64bitovou efektivní bezpečnost, což je potenciálně zranitelné. NIST doporučuje AES-256 pro dlouhodobou bezpečnost vůči pokrokům v oblasti kvantových počítačů.

Jaký je rozdíl mezi AES-128 a AES-256?

AES-128 používá 128bitový klíč (10 kol). AES-256 používá 256bitový klíč (14 kol). Oba jsou považovány za bezpečné vůči současným útokům. AES-256 poskytuje větší rezervu vůči budoucím pokrokům, zvláště kvantovým počítačům. AES-256 je přibližně o 40 % pomalejší než AES-128 kvůli dalším kolům, ale hardwarová akcelerace to na moderních zařízeních činí zanedbatelným.

Zpomaluje šifrování AES-256 můj telefon?

Znatelně ne. Moderní iPhony obsahují dedikovanou hardwarovou akceleraci AES v Secure Enclave a procesoru. Šifrování nebo dešifrování fotografie trvá milisekundy. AES je speciálně navržen pro efektivitu hardwarové implementace.

Jak zjistím, zda aplikace skutečně používá AES-256?

Zkontrolujte bezpečnostní dokumentaci aplikace, ne jen marketingovou stránku. Hledejte: konkrétní algoritmus a režim (AES-256-GCM, ne jen "AES" nebo "256bitový"), metodu odvozování klíče (PBKDF2, Argon2), mechanismus uložení klíče (Secure Enclave, hardwarově podporovaný) a zda jsou šifrována i metadata. Aplikace s otevřeným zdrojovým kódem umožňují nezávislé ověření.

Závěr

AES-256 je zlatý standard symetrického šifrování, standardizovaný NIST, používaný vládami a finančními institucemi a odolný vůči všem známým útokům včetně kvantových počítačů. Při hodnocení aplikací, které tvrdí, že používají šifrování AES-256, se dívejte za šifru: zkontrolujte režim (GCM), odvozování klíče (PBKDF2/Argon2 s vysokým počtem iterací), uložení klíče (hardwarově podporované) a která data jsou skutečně šifrována (obsah a metadata).

Vaultaire používá AES-256-GCM pro šifrování souborů, PBKDF2 s HMAC-SHA512 pro odvozování klíče, ChaCha20 pro šifrování metadat a Apple Secure Enclave pro správu klíčů. Šifrování není marketingový jazyk. Je to matematika.