Generator hash oblicza *hash*, czyli krótki odcisk o stałej długości dla danego wejścia. Odcisk zmienia się drastycznie nawet przy różnicy jednego znaku, dlatego hashe służą do weryfikacji integralności plików, sprawdzania, czy dwie wartości są równe, bez porównywania ich w całości, budowania systemów adresowanych treścią (Git używa SHA-1/SHA-256) oraz jako elementy większych protokołów bezpieczeństwa.
Dobra kryptograficzna funkcja skrótu ma trzy własności: jest *deterministyczna* (to samo wejście → ten sam hash), *jednokierunkowa* (z hasha nie da się odzyskać wejścia) i *odporna na kolizje* (praktycznie nie da się znaleźć dwóch wejść o tym samym hashu). Nowoczesne algorytmy, takie jak SHA-256 i SHA-512, spełniają wszystkie trzy; starsze, jak MD5 i SHA-1, są *złamane* i nie należy ich używać do porównań związanych z bezpieczeństwem.
Hashowanie *nie* jest szyfrowaniem. Szyfrowanie da się odwrócić kluczem, a hashowanie z założenia jest jednokierunkowe. Hashowanie *nie* jest też mechanizmem przechowywania haseł: hasła wymagają *hasha do haseł*, takiego jak bcrypt, scrypt lub Argon2, który celowo czyni atak siłowy kosztownym.
Czego nauczysz się, generując hashe
Funkcja skrótu przekształca dowolne wejście, krótkie lub długie, w wynik o stałej długości (np. SHA-256 zawsze daje 256 bitów = 64 znaki szesnastkowe).
To samo wejście zawsze daje ten sam hash. Nawet zmiana jednego bitu daje zupełnie inny hash (*efekt lawinowy*).
MD5 i SHA-1 nie są już odporne na kolizje: nadają się do sum kontrolnych niezwiązanych z bezpieczeństwem, ale są niebezpieczne w podpisach, certyfikatach i wszystkim, co dotyczy zaufania.
Nie przechowuj haseł jako zwykłego SHA-256. Użyj hasha do haseł (bcrypt, scrypt, Argon2), który zawiera sól i jest celowo powolny.
Jak wygenerować hash krok po kroku
1
Wklej dane wejściowe
Wklej dowolny tekst: ciąg znaków, fragment JSON, klucz licencyjny. Hash aktualizuje się w trakcie pisania.
2
Wybierz algorytm
Wybierz MD5, SHA-1, SHA-256, SHA-384 lub SHA-512. SHA-256 to najbezpieczniejszy domyślny wybór dla ogólnych sum kontrolnych.
3
Odczytaj wynik
Hash jest wyświetlany małymi literami w zapisie szesnastkowym. Przełącz na wielkie litery lub skopiuj wartość do schowka.
4
W razie potrzeby porównaj dwa hashe
Wklej znany hash (ze strony pobierania, commita w Git, pliku z sumą kontrolną), a narzędzie powie ci, czy twój się zgadza.
Algorytmy hash w pigułce
Algorytmy, które spotkasz najczęściej, z rozmiarem wyniku i obecnym stanem bezpieczeństwa. SHA-1 jest opisany w RFC 3174, a rodzina SHA-2 w NIST FIPS 180-4.
Algorytm
Rozmiar wyniku
Stan / gdzie go spotkasz
MD5
128 bitów / 32 znaki hex
Złamany: tylko do sum kontrolnych niezwiązanych z bezpieczeństwem
SHA-1
160 bitów / 40 znaków hex
Złamany: tylko historia Git i starsze systemy
SHA-256
256 bitów / 64 znaki hex
Standard: TLS, nowoczesny Git, blockchain
SHA-384
384 bity / 96 znaków hex
Używany w zestawach TLS preferujących rodzinę SHA-2
SHA-512
512 bitów / 128 znaków hex
Silny: czasem szybszy niż SHA-256 na sprzęcie 64-bitowym
bcrypt / scrypt / Argon2
różny
Hashe do *haseł*: używaj ich do haseł zamiast SHA-x
Oblicz SHA-256 pobranego pliku i porównaj go z wartością podaną przez wydawcę. Zgodność oznacza, że plik nie został uszkodzony w transferze ani zmodyfikowany.
Obrazy systemów operacyjnych, środowiska uruchomieniowe języków i podpisane wydania zwykle publikują SHA-256 obok pliku. Zawsze sprawdzaj go przed instalacją.
MD5 do deduplikacji niezwiązanej z bezpieczeństwem
Wejście
user@example.com
MD5
b58996c504c5638798eb6b511e6f49af
Gravatar używa MD5(e-mail) jako klucza awatara. MD5 się do tego nadaje, bo to niejawny identyfikator, ale nigdy nie używaj go tam, gdzie liczą się kolizje lub ataki na przeciwobraz.
Częste błędy przy hashowaniu
Przechowywanie haseł użytkowników jako zwykłego SHA-256. Użyj hasha do haseł (bcrypt, scrypt, Argon2) z solą dla każdego użytkownika i celowym współczynnikiem kosztu.
Poleganie w 2026 roku na MD5 lub SHA-1 w porównaniach związanych z bezpieczeństwem. Oba są złamane: kolizje da się praktycznie obliczyć.
Porównywanie hasha hex za pomocą == po zmodyfikowaniu jednego z ciągów. Przed porównaniem usuń białe znaki i ujednolić wielkość liter.
Zapominanie, że to samo wejście *zawsze* daje ten sam hash, bo właśnie o to chodzi. Nie "hashuj dwa razy", licząc na dodatkową losowość; dostaniesz po prostu drugi deterministyczny hash.
Używanie hasha tam, gdzie tak naprawdę potrzebujesz szyfrowania. Hashe są jednokierunkowe i nie da się ich odwrócić.
Generator hash: najczęstsze pytania
Czym jest funkcja skrótu (hash)?
Funkcja skrótu przyjmuje wejście o dowolnej długości i zwraca wynik o stałej długości zwany hashem. To samo wejście zawsze daje ten sam hash, a nawet drobna zmiana wejścia daje zupełnie inny hash.
Czy MD5 jest nadal bezpieczny?
MD5 jest złamany do celów kryptograficznych: praktyczne kolizje łatwo obliczyć. Wciąż nadaje się do sum kontrolnych niezwiązanych z bezpieczeństwem (deduplikacja plików, klucze cache, Gravatar), ale nigdy do podpisów, certyfikatów ani przechowywania haseł.
Czym różni się SHA-256 od SHA-512?
Oba należą do rodziny SHA-2. SHA-256 daje wynik 256-bitowy, a SHA-512 wynik 512-bitowy. SHA-512 bywa nawet szybszy na sprzęcie 64-bitowym. SHA-256 jest dziś częstszym domyślnym wyborem w protokołach.
Jak zahashować hasło?
Nie używaj bezpośrednio SHA-256. Użyj hasha zaprojektowanego do haseł (bcrypt, scrypt lub Argon2) z solą dla każdego użytkownika i regulowanym współczynnikiem kosztu. Są celowo powolne, aby ataki siłowe były kosztowne.
Czy da się odwrócić hash?
Nie, funkcje skrótu są z założenia jednokierunkowe. Jedynym sposobem odzyskania oryginału jest zgadywanie wejść i sprawdzanie, czy ich hash się zgadza. Dlatego przy hasłach tak ważne są sól i powolne hashowanie.
Czy te hashe są generowane lokalnie?
Tak. Generator hash Coddy używa w przeglądarce Web Crypto API. Twoje dane nigdy nie opuszczają twojego komputera.