Symetrická kryptografie
Rozdíl mezi symetrickou a asymetrickou šifrou.
Stavební prvky moderních symetrických šifer: lineární registry se zpětnou vazbou (LFSR), záměnné boxy (S-boxy), booleovské funkce, mohutnosti množiny klíčů.
Proudové šifry: popis, výhody, nevýhody.
Blokové šifry výhody nevýhody.
Popis DES a AES.
Módy práce blokové šifry.
Symetrická šifra
šifra s tajným klíčem
část klíče pro dešifrování lze výpočetně snadno získat z části klíče pro zašifrování
u většiny jsou klíče pro zašifrování a dešifrování identické (proto symetrické)
bezpečnost konkrétního textu je dána tím, že příslušný klíč je znám pouze oprávněným stranám
Bloková šifra
symetrická záměnná šifra zpracovávající data po skupinách znaků (blocích)
standardní velikosti bloku jsou 64 a 128 binárních znaků
typickým představitelem jsou
DES (Data Encryption Standard)
AES (Advance Encryption Standard)
způsoby provozování šifry
ECB (Electronic CodeBook mode)
stejné bloky textu
při stejném klíči produkují stejný text
vliv řetězení
bloky jsou šifrovány nezávisle na ostatních blocích. přeskupení bloků ŠT znamená přeskupení OT
šíření chyb
chyby naruší pouze jeden blok textu
CBC (Cipher Block Chaining Mode)
identické otevřené texty
stejné OT šifrované se stejným klíčem dávají stejné bloky ŠT
změnou posledního klíče nebo prvého bloku OT získáme odlišný ŠT
vliv řetězení
ŠT je závislé na předchozích blocích OT
šíření chyb
ojedinělý chybný bit ovlivní dešifrování bloku
dešifrovaný OT bude obsahovat chyby na stejných místech jako ŠT, toho může narušitel využít
zotavení z chyb
schopnost samo-synchronizace, výskyt chyby neovlivní zbytek šifry
CFB (Cipher FeedBack Mode)
OFB (Output FeedBack Mode)
Proudová šifra
zpracovává vstupní data znak po znaku (proud)
používaná u linkových šifrátorů, zpracovává přicházející znaky a není možné čekat na celou zprávu
malá propagace chyby oproti blokovým šifrám, chyba se projeví na jednom znaku, nikoli na celém bloku znaků
typickým představitelem jsou heslové šifry RC4, A5
RC4
šifra navržená 1987
Náhodný tajný klíč, vždy nově náhodně generovaný
klíč se dopraví příjemci pomocí nějaké asymetrické metody
popis nebyl publikován, i když je znám. byl zveřejněn hackerem dissassemblingem z programu BSAFE
použitá v S/MIME, SSL, WEP, WPA a TLS
možnost volit délku klíče 1-256 bytů
důvod úspěchu je široký rozsah použitelnosti, rychlost a jednoduchost
A5
používá se k šifrování GSM hovorů
klíč je uložen na SIM telefonu
Algoritmus DES
Data Encryption Standard
DES ukončil platnost 1987, dnes se používá 3-DES (od 1981)
veřejně dostupný
Feistelova šifra o
16 rundách,
délkou klíče 56 bitů
délkou bloku 64 bitů
Operace šifrování
vstupní blok 64 bitů je značen P
Krok 1: vstupní blok P je permutován operací IP
Krok 2: Po permutaci se aplikuje 16 Feistelových run, značených f. Pro každou funkci rundy je použit jiný 48 bit klíč.
Krok 3: Po 16 rundách se aplikuje inverzní permutace značená IP-1
Krok 3 produkuje výstupní šifrový blok
Algoritmus AES
1997 NIST vypsalo výběrové řízení AES
2001 AES se stává oficiálním jako FIPS (Federal Information Processing Standard Publication)
AES je iterovaná bloková šifra s různou délkou bloku a různou délkou klíče (128, 192, 256 bitů)
Charakteristika AES
substitučně-lineární systém
počet rund závislých na délce klíče (10, 12, 14)
funkce rundy
S-BOX
lineární operace
přidání klíče
Navržen tak, že každá runda se skládá ze tří různých invertibilních uniformních transformací nazývaných vrstvy
Vrstvy
lineární
garantuje vysokou úroveň difuze
nelineární
paralelní aplikace S-BOXů
přidání klíče
XOR klíče rundy s momentálním stavem
Před první rundou je aplikována vrstva přidání klíče (aby nebylo možné odstranit jednoduše zbylé dvě vrstvy první rundy)
Lineární vrstva poslední rundy je odlišná proto, aby proces šifrování a dešifrování měl obdobnou strukturu
ByteSub transformace
nelineární substituce bytů
prováděna na každém bytu Stavu nezávisle
S-Box (substituční tabulka)
invertibilní
zkonstruována složením dvou transformací:
na každý byte je aplikována multiplikativní inverze
na každý byte je aplikována afinní transformace
ShiftColumn
cyklický posun nad řádky Stavu
MixRow
transformace sloupců na polynom
Šifrování AES
AES se skládá z
počátečního přidání klíče
Nr-1 rund
kocové rundy
Expanzi klíče přitom lze provést před vlastním šifrováním.
Expandovaný klíč by měl být vždy odvozen od šifrovacího klíče, nikoli specifikován přímo.