Kalkulator kodu skrótu MD4
Opublikowano: 16 lutego 2025 22:53:08 UTC
Kalkulator kodu skrótu wykorzystujący funkcję skrótu Message Digest 4 (MD4) do obliczania kodu skrótu na podstawie wprowadzonego tekstu lub przesłanego pliku.MD4 Hash Code Calculator
MD4 (Message Digest 4) to kryptograficzna funkcja skrótu zaprojektowana przez Ronalda Rivesta w 1990 r. Generuje stałą 128-bitową (16-bajtową) wartość skrótu z danych wejściowych o dowolnej długości. MD4 jest obecnie uważane za kryptograficznie złamane ze względu na luki w zabezpieczeniach, które umożliwiają ataki kolizyjne (znalezienie dwóch różnych danych wejściowych, które generują ten sam skrót), więc nie powinno się go używać podczas projektowania nowych systemów. Jest tutaj uwzględniony na wypadek, gdyby trzeba było wygenerować wstecznie kompatybilny kod skrótu.
Pełne ujawnienie: nie napisałem konkretnej implementacji funkcji hash używanej na tej stronie. Jest to standardowa funkcja dołączona do języka programowania PHP. Stworzyłem jedynie interfejs sieciowy, aby udostępnić go tutaj publicznie dla wygody.
O algorytmie skrótu MD4
Nie jestem matematykiem, więc postaram się wyjaśnić tę funkcję skrótu w sposób zrozumiały dla osób niebędących matematykami ;-) Jeśli wolisz wyjaśnienia bardziej matematyczne, znajdziesz je na wielu innych stronach internetowych.
Okej, więc pomyśl o MD4 jako o specjalnej niszczarce do papieru. Ale zamiast niszczyć papier, „niszczy” każdą wiadomość (jak list, hasło lub książkę) do małego, stałego rozmiaru paragonu. Bez względu na to, jak duża lub mała jest Twoja wiadomość, ta niszczarka zawsze daje Ci malutki paragon, który ma dokładnie 16 bajtów (128 bitów) długości lub 32 znaki w formie szesnastkowej.
Aby poprawnie zniszczyć wiadomość, należy wykonać cztery kroki:
Krok 1: Przygotowanie wiadomości
- Przed zniszczeniem należy dopasować papier tak, aby idealnie pasował do niszczarki.
- Jeśli Twoja wiadomość jest za krótka, możesz dodać trochę wolnego miejsca (np. rysunki lub wypełniacz), aby papier idealnie pasował.
- Jeśli tekst jest za długi, należy go podzielić na kilka stron o tym samym rozmiarze.
Krok 2: Dodawanie tajnego stempla
- Po dostosowaniu wiadomości należy dodać na końcu tajny stempel, który informuje, jak długa była oryginalna wiadomość.
- Dzięki temu niszczarka będzie mogła śledzić oryginalny rozmiar wiadomości, bez względu na ilość dodanego wypełnienia.
Krok 3: Proces niszczenia (3 rundy magii)
- Teraz wiadomość trafia do niszczarki.
- Niszczarka ma 4 koła zębate (A, B, C i D), które obracają się razem według specjalnego wzoru.
- Koła zębate przechodzą przez 3 rundy wirowania, podczas których:
- Wymieszaj słowa
- Odwróć niektóre części do góry nogami
- Obróć je jak kostkę Rubika
- Zmiażdż różne kawałki razem
- Każda kolejna runda sprawia, że wiadomość wygląda coraz bardziej jak chaotyczny bałagan, którego nie sposób rozpoznać.
Krok 4: Ostateczne potwierdzenie odbioru
- Po całym tym wirowaniu, przewracaniu i rozbijaniu niszczarka wypluwa paragon — krótki ciąg cyfr i liter (tzw. hash).
- Ten paragon ma zawsze taką samą długość, bez względu na to, czy zniszczysz pojedyncze słowo czy całą książkę!
Niestety, z czasem ludzie odkryli, że ta magiczna niszczarka nie jest idealna. Pewni sprytni ludzie wymyślili, jak oszukać niszczarkę, aby dawała ten sam paragon dla dwóch różnych wiadomości (to się nazywa kolizja ) i jak przewidzieć, jak będą się kręcić koła zębate, a następnie użyć tego do tworzenia fałszywych paragonów. Z tego powodu MD4 nie jest już uważany za bezpieczny dla ważnych rzeczy.