Khufu i Khafre (kryptografia)

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

Khufu i Khfareszyfry blokowe zaproponowane w 1990 roku przez Ralpha Merkle[1]. Nazwy szyfrów pochodzą od imion egipskich faraonów Cheopsa i Chefren[2].

Khufu[edytuj | edytuj kod]

Khufu
Rodzaj szyfru symetryczny szyfr blokowy
Data stworzenia 1989
Autorzy Ralph Merkle
Wielkość bloku wejściowego 64 bity
Długość klucza 512 bitów
Liczba rund 16
Data złamania 1994[3]
Złamany przez Henri Gilbert i Pascal Chauvaud
Skuteczne ataki kryptoanaliza różnicowa

Szyfr ten operuje na 64-bitowych blokach tekstu jawnego i wykorzystuje do szyfrowania 512-bitowy klucz. W procesie szyfrowania wykorzystywane są tajne S-bloki zakodowane w kluczu, co częściowo zabezpiecza szyfr przed kryptoanalizą różnicową[2].

Szyfrowanie przebiega następująco[2]:

  • blok tekstu jawnego dzielony jest na dwie połowy: lewą i prawą. Obie połowy sumowane są modulo 2 z częścią klucza
  • przetworzone połowy przetwarzane są w kilku cyklach (ich liczba nie jest określona):
    • najmniej znaczące 8 bitów lewej połowy podawane jest na wejście S-bloku, który zamienia je na 32-bitową liczbę
    • wyjście S-bloku jest sumowane modulo dwa z prawą połową
    • lewa połowa przesuwana jest o pewną liczbę bitów
    • lewa i prawa połowa zamieniane są miejscami

Najlepsze wyniki kryptoanalizy tego szyfru uzyskali Henri Gilbert i Pascal Chauvaud za pomocą kryptoanalizy różnicowej[3][4]. Podany atak umożliwia poznanie klucza szyfrującego, ale wymaga 243 szyfrowań wybranych tekstów jawnych i ma złożoność czasową 243.

Khafre[edytuj | edytuj kod]

Khafre
Rodzaj szyfru symetryczny szyfr blokowy
Data stworzenia 1989
Autorzy Ralph Merkle
Wielkość bloku wejściowego 64 bity
Długość klucza 512 bitów
Liczba rund 16
Data złamania 1991[5]
Złamany przez Eli Biham, Adi Shamir
Skuteczne ataki kryptoanaliza różnicowa

W algorytmie tym, w przeciwieństwie do algorytmu Khufu, S-bloki są stałe i niezależne od klucza. Za pomocą kryptoanalizy różnicowej Khafre o 16 rundach może być złamane przy użyciu 1500 wybranych tekstów jawnych lub 238 dowolnych tekstów jawnych[5][6]. Podobnie wersja o 24 rundach może być zaatakowana przy użyciu 253 wybranych tesktów jawnych i 259 dowolnych tekstów jawnych.

Przypisy

  1. Ralph Merkle. Fast Software Encryption Functions. „Advances in Cryptology CRYPTO'90”, s. 476–501, 1990. Santa Barbara: Springer-Verlag. [dostęp 2007-08-23]. 
  2. 2,0 2,1 2,2 Bruce Schneier: Kryptografia dla praktyków: protokoły, algorytmy i programy źródłowe w języku C. Warszawa: Wydawnictwa Naukowo-Techniczne, 2002, s. 398-400. ISBN 83-204-2678-2.
  3. 3,0 3,1 Henri Gilbert, Pascal Chauvaud. A Chosen Plaintext Attack of the 16-round Khufu Cryptosystem. „Advances in Cryptology—CRYPTO '94”, s. 359–368, August 1994. Santa Barbara, California: Springer-Verlag. 
  4. David Wagner. The Boomerang Attack. „6th International Workshop on Fast Software Encryption (FSE '99)”, s. 156–170, March 1999. Rzym: Springer-Verlag. [dostęp 2007-02-05]. 
  5. 5,0 5,1 Eli Biham, Adi Shamir. Differential Cryptanalysis of Snefru, Khafre, REDOC-II, LOKI and Lucifer. „Advances in Cryptology-CRYPTO '91”, s. 156–171, 1991. Santa Barbara, California: Springer-Verlag. [dostęp 2007-08-23]. 
  6. Eli Biham, Alex Biryukov, Adi Shamir. Miss in the Middle Attacks on IDEA, Khufu and Khafre. „6th International Workshop on Fast Software Encryption (FSE '99)”, s. 124–138, 1999. Rzym: Springer-Verlag. [dostęp 2007-02-14].