Sieć Feistela algorytmu FEAL | |
| Rodzaj algorytmu | |
|---|---|
| Data stworzenia | |
| Autorzy |
Akihiro Simizu i Shoji Miyaguchi |
| Wielkość bloku wejściowego |
64 bity |
| Długość klucza |
64 bity |
| Liczba rund |
4, 8 lub więcej |
| Data złamania | |
| Złamany przez | |
| Skuteczne ataki | |
FEAL (ang. Fast Data Encipherment Algorithm) – zaprojektowany przez Akihiro Simizu oraz Shoji Miyaguchi szyfr blokowy, działający na 64-bitowych blokach oraz wykorzystujący 64-bitowy klucz. Oparty jest na sieci Feistela. Po raz pierwszy został opublikowany w roku 1987, jako algorytm znacznie szybszy od DES w implementacjach programowych (DES faworyzował implementacje sprzętowe)[1]. Algorytm jest opatentowany w Stanach Zjednoczonych[2]. Jest pierwszym znanym algorytmem, na którym zastosowano kryptoanalizę różnicową.
Algorytm działa na blokach tekstu jawnego o długości 64-bitów i wygląda następująco[1]:
Początkowo liczba cykli wynosiła 4 (FEAL-4) z upływem czasu zwiększyła się do 8, a w ostatecznej wersji algorytmu to użytkownik ustala ile cykli ma wykonać algorytm.
Szyfr ten okazał się szczególnie podatny na różnego rodzaju ataki kryptoanalityczne. FEAL-4, czyli algorytm z czterema cyklami, został skutecznie złamany z wykorzystaniem ataku z wybranymi tekstami jawnymi, a atak oparty na kryptoanalizie różnicowej wymagał tylko 20 wybranych tekstów jawnych. FEAL-8 także został złamany za pomocą kryptoanalizy z wybranymi szyfrogramami. Dodatkowo Eli Biham oraz Adi Szamir udowodnili, że stosując kryptoanalizę różnicową mogą skutecznie złamać FEAL-N[1].
Po opublikowaniu wielu skutecznych ataków, projektanci stworzyli wersję algorytmu ze 128-bitowym kluczem – FEAL-NX. Okazało się jednak, że ta odmiana jest równie prosta do złamania co poprzednie wersje[1].