Międzynarodowy algorytm szyfrowania danych
| POMYSŁ | |
|---|---|
| Runda szyfrowania algorytmu IDEA | |
| deweloper | James L. Massey , Xueija Lai |
| Wydany | 1991 |
| Pochodzi z | PES |
| Długość klucza | 128 bitów |
| Rozmiar bloku | 64-bitowy |
| Struktura | Schemat Lai-Massey |
| Okrągły | 8.5 |
| Najbardziej znana kryptoanaliza | |
| Atak w postaci zwykłego tekstu przy użyciu 264 znanych bloków tekstu jawnego może odszyfrować do 6 rund z kluczem o długości 128 bitów i 2126,8 operacji. | |
International Data Encryption Algorithm ( IDEA ) została opracowana w 1990 roku jako wspólny projekt między ETH Zurich i Ascom Systec AG przez Jamesa L. Masseya i Xueija Lai . IDEA jest algorytmem symetrycznym i należy do szyfrów blokowych . Algorytm został opracowany poprzez zmianę wcześniejszego kryptosystemu o nazwie PES (Proposed Encryption Standard), początkowo nazywał się IPES (Improved PES) i był rozważany jako zamiennik DES .
Ascom Systec AG posiadała patenty do IDEA. Odpowiedni patent europejski EP 0 482 154 B1 został zarejestrowany ze skutkiem dla krajów będących stronami umowy EPC: Niemiec , Francji , Włoch , Liechtensteinu , Holandii , Austrii , Szwecji , Szwajcarii , Hiszpanii i Wielkiej Brytanii i wygasł 16 maja 2011 r. Odpowiedni patent amerykański US 5,214,703 również wygasł 16 maja 2011 r.
Metoda pracy
IDEA używa serii ośmiu identycznych transformacji, z których każda odpowiada jednej rundzie, i jednej transformacji wyjściowej, która odpowiada połowie rundy. Proces odszyfrowywania jest taki sam, jak proces szyfrowania w odwrotnej kolejności. Podczas szyfrowania The zwykły tekst jest podzielony na 64-bitowych bloków, a klucz jest w podziale na kawałki 16 bitów każdy. Szyfrowanie odbywa się poprzez połączenie następujących trzech operacji:
- Operacja logiczna XOR , nazywana również „wyłącznością” (pokazana z plusem zakreślonym na niebiesko ⊕ )
- Dodatek modulo 2 16 (pokazany z zielonym, w ramce plus ⊞ ).
- Mnożenie modulo 2 16 +1, w którym wszystkie wartości słowa NULL (0x0000) są interpretowane jako wartość 2 16 (pokazane z kropką zakreśloną na czerwono ⊙ ).
Połączenie tych trzech operacji z różnych grup algebraicznych ma na celu zapewnienie wysokiego poziomu bezpieczeństwa. Metoda jest zoptymalizowana pod kątem odporności na ataki metodą kryptoanalizy różnicowej . Po ośmiu rundach używana jest ostatnia półokrągła transformacja wyjściowa, co pokazano na poniższej ilustracji.
Harmonogram kluczowy
Każda z ośmiu rund wykorzystuje sześć 16-bitowych kluczy częściowych, podczas gdy ostatnia połowa rundy wykorzystuje cztery, co daje łącznie 52 częściowe klucze na 8,5 rundy. Pierwsze osiem kluczy częściowych jest wyodrębnianych bezpośrednio z klucza, przy czym klucz K1 pierwszej rundy jest utworzony z 16 najmniej znaczących bitów . Następnie klucz jest obracany o 25 bitów w lewo i osiem częściowych kluczy jest wyciąganych z obróconego klucza. Powtarza się to, dopóki po sześciu obrotach nie zostaną utworzone wszystkie 52 klucze częściowe.
bezpieczeństwo
Twórcy przeanalizowali IDEA, aby zmierzyć jego siłę w porównaniu z kryptoanalizą różnicową i doszli do wniosku, że algorytm jest odporny na tego typu ataki w określonych okolicznościach. Nie odkryto żadnych dalszych słabości liniowych ani algebraicznych. Najlepszym atakiem na IDEA jest atak z użyciem czystego tekstu, którego początki sięgają 2011 roku. To łamie algorytm, jeśli zostanie zredukowany do 6 rund i wymaga 16 bloków czystego tekstu i mniej niż 2112 operacji.
Bruce Schneier miał wysoką opinię o IDEA w 1996 roku i napisał w swojej książce Applied Cryptography : „Moim zdaniem IDEA jest najlepszym i najbezpieczniejszym algorytmem blokowym obecnie dostępnym publicznie.” Jednak w 1999 roku zalecił algorytm oparty na kryptoanalizie - Postęp i problemy z patentami już nie.
Prosty harmonogram kluczy sprawia, że IDEA jest podatny na atak klasą słabych kluczy. Klucze zawierające dużą liczbę bitów o wartości 0 prowadzą do słabego szyfrowania. W praktyce mają one niewielkie znaczenie, ponieważ występują rzadko i dlatego nie trzeba ich jawnie ominąć podczas generowania klucza losowego. W celu rozwiązania problemu zaproponowano: Podczas operacji XOR każdy klucz cząstkowy powinien być powiązany 16-bitową stałą o wartości 0x0DAE. Większe klasy słabych kluczy odkryto w 2002 roku.
literatura
- Xuejia Lai, James L. Massey: propozycja nowego standardu szyfrowania blokowego . W: EUROCRYPT . 1990, ISBN 3-540-46877-3 , s. 389-404 .
