Snefru (kryptografia) – Wikipedia, wolna encyklopedia
Rodzaj algorytmu | jednokierunkowa funkcja skrótu |
---|---|
Autorzy | |
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]- ↑ Ralph Merkle. Fast Software Encryption Functions. „Advances in Cryptology CRYPTO'90”, s. 476–501, 1990. Santa Barbara: Springer-Verlag. [dostęp 2007-08-23].
- ↑ 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.