3DES
Z Wikipedii
3DES to algorytm polegający na zaszyfrowaniu wiadomości DES-em trzy razy:
- szyfrujemy pierwszym kluczem
- deszyfrujemy drugim kluczem
- szyfrujemy trzecim kluczem
Jeśli założymy, że Ei(m) jest operacją szyfrowania (encryption) kluczem o numerze "i" wiadomości "m" (message), a Di(m) jest odpowiednio operacją deszyfrowania (decryption), to całość można zapisać jako:
- c = E3(D2(E1(m)))
Użycie deszyfrowania jako drugiej fazy nie wpływa na siłę algorytmu (deszyfrowanie w DES-ie jest identyczne jak szyfrowanie, tylko ma odwróconą kolejność rund), ale umożliwia - w razie konieczności - użycie 3DES-a w trybie kompatybilności z DES-em – za klucz pierwszy i drugi, lub drugi i trzeci przyjmujemy dowolny taki sam klucz, a za ostatni zwykły klucz DES-owski:
- c = E3(D1(E1(m))) = E3(m)
- c = E3(D3(E1(m))) = E1(m)
3DES używa takich samych rozmiarów bloków oraz trybów jak zwykły DES.
3DES z trzema różnymi kluczami (3TDES) ma siłę 168 bitów: trzykrotne szyfrowanie DES kluczem 56-bitowym (wliczając bit parzystości siła 3DES wynosi 192 bity), jednak ze względu na atak typu meet in the middle siła 3DES-a wynosi 2112.