Snefru (kryptografia)

Z Wikipedii, wolnej encyklopedii
Snefru
Rodzaj algorytmu

jednokierunkowa funkcja skrótu

Autorzy

Ralph Merkle

Wielkość bloku wejściowego

128 lub 256 [bit]

Wielkość bloku wyjściowego

128 lub 256 [bit]

Funkcja Snefru – jednokierunkowa funkcja skrótu zaprojektowana przez Ralpha Merkle'a, produkująca skróty o długości 128 lub 256 bitów[1]. Nazwa funkcji wywodzi się od imienia egipskiego faraona Snofru[2].

Algorytm[edytuj | edytuj kod]

W celu wyliczenia skrótu za pomocą funkcji Snefru, wiadomość dzielimy na stałej długości bloki: 384-bitowe w przypadku, gdy chcemy wyliczyć skrót 128-bitowy oraz 256-bitowe w przypadku wyliczania skrótu 256-bitowego. Po podziale pierwszy blok wiadomości podawany jest na wejście funkcji skracającej H, która oblicza m-bitowy (128- lub 256- w zależności od tego jakiej długości ma być tworzony skrót) skrót podanego bloku. Następnie, do tak obliczonego skrótu pierwszego bloku dołączany jest drugi blok wiadomości i całość ponownie podawana jest na wejście funkcji H. Cała procedura jest powtarzana dla wszystkich bloków wiadomości a jej skrótem jest wyjście funkcji H po przetworzeniu ostatniego bloku[2].

Bezpieczeństwo[edytuj | edytuj kod]

Biham i Shamir pokazali, że w ciągu kilku minut można znaleźć takie pary wiadomości, które produkują identyczne 128-bitowe skróty[2].

Przypisy[edytuj | edytuj kod]

  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. a b c Bruce Schneier: Kryptografia dla praktyków: protokoły, algorytmy i programy źródłowe w języku C. Warszawa: Wydawnictwa Naukowo-Techniczne, 2002, s. 532-533. ISBN 83-204-2678-2.