CodeKitHub
Narzędzia generujące

MD5 Szyfrowanie / Deszyfrowanie Online

Ostatnia aktualizacja:

Wiele osób szuka narzędzia do "odszyfrowania MD5", ale MD5 to nie szyfrowanie — to jednokierunkowa funkcja skrótu, więc nie ma tu nic do odszyfrowania. To narzędzie robi tę część, która jest naprawdę możliwa: błyskawicznie zamienia dowolny tekst na jego 32-znakowy hash MD5, w całości w Twojej przeglądarce, dzięki czemu możesz zweryfikować dane lub porównać je ze znanym hashem.

Hash MD5

MD5 to funkcja jednokierunkowa: nie da się odzyskać oryginalnego tekstu.

Czym jest to narzędzie?

MD5 ("Message Digest 5") przyjmuje dowolne dane wejściowe — słowo, hasło, cały plik — i tworzy stały 128-bitowy odcisk, zapisany jako 32 znaki szesnastkowe. Te same dane wejściowe zawsze dają ten sam hash, a zmiana choćby jednego znaku daje zupełnie inny wynik.

Słowo "szyfrowanie" jest często kojarzone z MD5, ale technicznie jest to błędne. Szyfrowanie jest odwracalne przy właściwym kluczu; hashowanie nie jest odwracalne w ogóle. Serwisy do "odszyfrowywania MD5", które można spotkać w sieci, w rzeczywistości nie odwracają matematyki — wyszukują Twój hash w ogromnej, wcześniej wyliczonej tabeli popularnych haseł i słów, i udaje im się to tylko wtedy, gdy Twój oryginalny tekst już się w tej tabeli znajduje.

MD5 opublikował Ron Rivest w 1992 roku jako RFC 1321. Kryptograficznie jest złamany do celów bezpieczeństwa (kolizje można celowo wytworzyć), ale wciąż jest szeroko stosowany do sum kontrolnych, kluczy cache i deduplikacji, gdzie bezpieczeństwo nie jest problemem.

Dlaczego warto go używać?

  • Wygeneruj hash MD5, aby sprawdzić, czy plik lub ciąg znaków nie został przypadkowo zmieniony.
  • Porównaj swój hash ze znanym/opublikowanym MD5, aby potwierdzić integralność.
  • Twórz deterministyczne klucze cache lub identyfikatory deduplikacji.
  • Zrozum jasno, dlaczego "odszyfrowanie" hasha MD5 tak naprawdę nie jest możliwe.
  • 100% lokalnie: Twój tekst jest hashowany w przeglądarce i nigdy nie jest wysyłany na serwer.

Jak używać

  1. Wpisz lub wklej swój tekst w polu wejściowym.
  2. Kliknij "Generuj MD5".
  3. Odczytaj wynikowy 32-znakowy hash (zaznacz "Wielkie litery na wyjściu", jeśli potrzebujesz wielkich liter).
  4. Kliknij "Kopiuj", aby skopiować hash, lub użyj go do porównania z hashem, który już masz.

Przykład

Wejście

hello

Wynik

5d41402abc4b2a76b9719d911017c592

MD5 jest deterministyczny: tekst "hello" daje dokładnie ten hash w każdym narzędziu, zawsze.

"Szyfrowanie" a "hashowanie": dlaczego terminologia ma znaczenie

Szyfrowanie i hashowanie rozwiązują różne problemy, a ich mylenie prowadzi do realnych błędów bezpieczeństwa. Szyfrowanie przekształca dane odwracalnie przy użyciu klucza — szyfrujesz kluczem, deszyfrujesz tym samym (lub powiązanym) kluczem i odzyskujesz oryginał. Hashowanie przekształca dane jednokierunkowo, bez żadnego klucza — z założenia nie istnieje operacja, która zamienia hash z powrotem w dane wejściowe.

MD5 to funkcja skrótu, a nie szyfr. Nazywanie tego "szyfrowaniem MD5" to popularne, potoczne użycie, ale tworzy błędne oczekiwania: nie istnieje legalna operacja "odszyfrowania MD5". Wszystko, co reklamowane jest jako takie, to albo tabela wyszukiwania (działa tylko dla popularnych, już znanych danych wejściowych), albo po prostu nie działa.

Kiedy MD5 wciąż jest odpowiedni

  • Weryfikacja, czy pobrany plik zgadza się z sumą kontrolną wydawcy przed jego uruchomieniem.
  • Generowanie deterministycznego klucza cache na podstawie adresu URL lub ciągu zapytania.
  • Deduplikacja rekordów poprzez zahaszowanie każdego z nich i porównanie hashy zamiast pełnego tekstu.
  • Szybkie sprawdzenie, czy dwa pliki są identyczne bajt po bajcie, bez bezpośredniego ich porównywania.

Kiedy całkowicie unikać MD5

Nigdy nie używaj MD5 do haseł, podpisów cyfrowych ani niczego, gdzie atakujący mógłby skorzystać z sfałszowanego dopasowania. Ponieważ kolizje można celowo wytworzyć, a niesolone hashe MD5 krótkich lub popularnych danych wejściowych można odwrócić za pomocą tabel wyszukiwania, MD5 nie zapewnia żadnego realnego bezpieczeństwa w tych kontekstach. Do haseł używaj bcrypt, scrypt lub Argon2. Do podpisów i integralności, gdzie liczy się odporność na manipulację, używaj SHA-256 lub silniejszego algorytmu.

Najczęściej zadawane pytania

Czy mogę odszyfrować hash MD5 z powrotem do oryginalnego tekstu?

Nie — hashowanie jest z założenia jednokierunkowe; oryginału nie da się obliczyć na podstawie hasha. Strony "deszyfrujące MD5" po prostu wyszukują hashe w ogromnych, wcześniej wyliczonych tabelach popularnych danych wejściowych, dlatego unikalnych lub długich danych nie da się odwrócić.

Co więc tak naprawdę robią strony "deszyfrujące MD5"?

Utrzymują ogromne bazy danych mapujące popularne słowa, imiona i wyciekłe hasła na ich hashe MD5, a następnie wykonują wyszukiwanie. Jeśli Twojego oryginalnego tekstu nie ma w ich bazie — co jest prawdopodobne dla czegokolwiek nietrywialnego — po prostu nie zwracają żadnego wyniku.

Czy MD5 jest bezpieczny do przechowywania haseł?

Nie, absolutnie nie. MD5 da się szybko złamać metodą brute-force i ma znane ataki kolizyjne, a "odszyfrowanie" przez tabelę to dokładnie ten atak, który łamie przechowywanie haseł MD5 bez soli. Do haseł używaj bcrypt, scrypt lub Argon2.

Dlaczego ten sam tekst daje inny hash w innym narzędziu?

Zwykle z powodu niewidocznych różnic: końcowego znaku nowej linii lub spacji, różnych zakończeń linii (\r\n kontra \n) albo innego kodowania tekstu. Identyczne bajtowo dane wejściowe zawsze dają identyczny hash MD5.

Czy mój tekst jest wysyłany na serwer w celu zahaszowania?

Nie. Hash MD5 jest obliczany za pomocą JavaScript bezpośrednio w Twojej przeglądarce — Twój tekst nigdzie nie jest przesyłany.

Powiązane narzędzia