Wpis z mikrobloga

Czy wiesz, że kryptograficzna funkcja skrótu SHA-3 (Keccak) to pierwszy ustandaryzowany przez NIST algorytm, który nie bazuje na schemacie Merkle-Damgard'a? Tym samym przerwało to trend zapoczątkowany w latach 80' od zastosowania w funkcji MD5 i kontynułowany później (z pewnymi modyfikacjami) w SHA-1 i SHA-2.
Funkcja SHA-3 korzysta z nowego schematu "gąbki" (sponge).

W starszych funkcjach przetwarzanie sprowadzało się ogólnie do etapów
1) przetwarzania początkowego (podział danych wejściowych na bloki wraz z uzupełnieniem ),
2) rozszerzania (esktrapolacja bloku)
3) kompresji (redukcja danych do kilku zmiennych)

W nowym algorytmie zachowany jest pierwszy z powyższych etapów, ale brak jest wyraźnego odpowiednika dwóch pozostałych, które są zastąpione przez :
A) "absorbcję" danych początkowych (transformacje i permutacje)
B) "wyciskanie", które głownie sprowadza się głównie do wykorzystania funkcji XOR na wcześniej "zabsorbowanych" danych początkowych.

Tworcy rodziny algorytmów Keccak zaproponowali wiele algorytmów oprócz funkcji skrótu, takich jak szyfrowanie blokowe, strumieniowe czy uwierzytalelnione (AEAD), oraz kilka innych, które bazują na ich głownym algorytmie.

Keccak-256, wariant minimalnie różniący się w implementacji od ustandaryzowanego nieco później przez NIST SHA-3, był wykorzystywany na wczesnym etapie w kryptowalucie Ethereuum jako funkcja skrótu do mechanizmu Proof-of-Work. Została ona zastąpiona całkowicie na inne podejście w momencie przejscia na Proof-of-Stakew tej kryptowalucie.

#ciekawostkikryptograficzne #it #programista15k #kryptowaluty #krypto #kryptografia
siedze-na-antresoli - Czy wiesz, że kryptograficzna funkcja skrótu SHA-3 (Keccak) to ...

źródło: Screenshot_20231207-120306~2

Pobierz
  • 8
@dean_corso: Funkcje skrótu są nadal wykorzystywane np. do weryfikacji integralności, zatwierdzania (podpisywania) transakcji, jako część ogólniejszego protokołu, derywacji kluczy (np. standard bip32, chociaż nie jest związany z samym PoS) ale nie w takim charakterze (i przede wszystkim - ilości operacji) jak przy PoW. W żadnym z tych obszarów nie korzysta się jeszcze z Keccaka/SHA-3.
@morsisko: Faktycznie, przeoczyłem to. Dzięki. Obecnie, częstszą praktyką z którą się spotykam, jest korzystanie z bip32, którego standard wspomina tylko o SHA2-512 i RIPEMD160. Będę musiał sprawdzić jak dokładnie wygląda dokładnie proces derywacji kluczy konkretnie w bip32 dla ETH. W tej chwili nie mam dostępu do kodu do końca tego tygodnia.