Generator hashy (SHA-256)
Wpisz lub wklej tekst, a jednym kliknięciem obliczysz jego skróty SHA-256, SHA-1, SHA-384 i SHA-512. Wynik jest pokazywany szesnastkowo, małymi lub wielkimi literami, a przy każdym skrócie jest przycisk kopiowania. Haszowanie korzysta z Web Crypto API przeglądarki i działa na bajtach UTF-8 tekstu, więc nic nie jest przesyłane. Za darmo, bez rejestracji. Narzędzie haszuje wyłącznie tekst, nie pliki.
Jak korzystać z generatora hashy
- 1. Wpisz tekst. Dowolny tekst, o takiej długości, jaką przeglądarka zmieści w polu tekstowym.
- 2. Naciśnij Generuj skróty. Wszystkie cztery skróty pojawią się razem, a SHA-256 jest wyróżniony jako zalecany.
- 3. Wybierz wielkość liter. Wielkie litery szesnastkowe zmienia każdy skrót na wielkie litery zamiast małych (zwyczajowo); bajty są te same.
- 4. Skopiuj potrzebny skrót przyciskiem obok niego.
Cztery algorytmy
SHA-1, SHA-256, SHA-384 i SHA-512 są zdefiniowane w amerykańskim standardzie Secure Hash Standard, FIPS 180-4. Każdy zamienia dane wejściowe dowolnej długości na skrót o stałym rozmiarze. Rozmiar jest jedyną widoczną różnicą w wyniku:
| Algorytm | Rozmiar skrótu | Znaki szesnastkowe | Status |
|---|---|---|---|
| SHA-1 | 160 bitów | 40 | Złamany pod względem bezpieczeństwa: pierwsza praktyczna kolizja została opublikowana w 2017 roku, a NIST zaleca wycofanie go do 2030 roku. Tylko do starszych sum kontrolnych. |
| SHA-256 | 256 bitów | 64 | Standardowy wybór do kontroli integralności i podpisów |
| SHA-384 | 384 bity | 96 | Rodzina SHA-2; skrócony SHA-512 |
| SHA-512 | 512 bitów | 128 | Rodzina SHA-2; często szybszy od SHA-256 na 64-bitowych procesorach |
Skrót kryptograficzny to jednokierunkowy odcisk palca. Ten sam tekst zawsze daje ten sam skrót, drobna zmiana daje zupełnie inny, a z samego skrótu nie da się odtworzyć tekstu. MD5 nie jest oferowany, ponieważ Web Crypto API go nie implementuje.
Przykład krok po kroku
Tekst
abc
SHA-256
ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
SHA-1
a9993e364706816aba3e25717850c26c9cd0d89d
Te dwa skróty to opublikowane wektory testowe z przykładów standardu, więc możesz sprawdzić narzędzie na źródle, któremu ufasz. Teraz zobacz, co zmienia jedna litera. Zmieniamy „dog” na „cog” w zdaniu The quick brown fox jumps over the lazy dog:
…dog
d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592
…cog
e4c4d8f3bf76b692de791a173e05321150f7a345b46484fe427f6acc7ecc81be
Te skróty SHA-256 nie mają nic rozpoznawalnego wspólnego: 123 z 256 bitów się różni, czyli blisko połowy, jakiej należy się spodziewać przy niezwiązanych wartościach. To efekt lawinowy i właśnie dlatego skrót może pokazać, że plik lub wiadomość się zmieniły, nie ujawniając, co dokładnie się zmieniło.
Dlaczego Twój skrót może się nie zgadzać
- Końcowa nowa linia.
abciabczakończone podziałem wiersza to różne dane wejściowe: SHA-256 zabci nową linią zaczyna się odedeaaff3, a nieba7816bf. Polecenieecho abc | sha256sumteż haszuje nową linię; użyjprintflubecho -n, aby ją pominąć. - Wielkość liter i spacje.
Abcdaje inny skrót niżabc, tak samo jak spacja na początku lub na końcu. - Kodowanie. Narzędzie haszuje bajty UTF-8 tego, co wpisałeś. Tekst zahaszowany jako UTF-16 lub Latin-1 gdzie indziej daje inny skrót dla każdego znaku spoza ASCII.
- Zakończenia wierszy. Tekst wklejony z pliku Windows może zawierać znaki powrotu karetki, które pole tekstowe normalizuje.
Do czego to narzędzie nie służy
- Pliki. Haszuje wyłącznie tekst. Dla pliku użyj
shasum -a 256 plikw macOS lub Linuksie albocertutil -hashfile plik SHA256w Windows. - Hasła. SHA-256 jest zaprojektowany jako szybki, co pomaga atakującemu zgadywać hasła. Przechowuj hasła za pomocą powolnej, solonej funkcji haszującej do haseł, takiej jak Argon2id, scrypt lub bcrypt.
- Skróty z kluczem. Nie ma opcji HMAC ani soli.
Którego narzędzia potrzebujesz?
Aby zobaczyć szesnastkową postać samego tekstu, a nie jego skrótu, użyj Konwerter hex. Do losowego identyfikatora użyj Generator UUID, a do losowego sekretu Generator haseł.
Najczęstsze pytania
- Czy mój tekst jest wysyłany na serwer?
- Nie. Każdy skrót jest obliczany w Twojej przeglądarce za pomocą Web Crypto API (crypto.subtle.digest). Twój tekst nigdzie nie jest wysyłany, a narzędzie działa dalej, nawet jeśli po załadowaniu strony przejdziesz w tryb offline.
- Czym jest skrót kryptograficzny?
- Funkcja, która zamienia dane wejściowe dowolnej długości na skrót o stałej długości. Jest deterministyczna, jednokierunkowa i wrażliwa na każdy bit danych wejściowych. Skróty służą m.in. do sprawdzania integralności plików, w podpisach cyfrowych i w identyfikatorach commitów.
- Którego algorytmu skrótu powinienem użyć?
- SHA-256 w prawie wszystkich zastosowaniach. SHA-384 i SHA-512 dają dłuższe skróty z tej samej rodziny. Używaj SHA-1 tylko wtedy, gdy wymaga go starszy system, i nigdy do celów bezpieczeństwa.
- Czy SHA-1 jest bezpieczny w użyciu?
- Nie w celach bezpieczeństwa. Atak SHAttered z 2017 roku wytworzył dwa różne pliki PDF o tym samym skrócie SHA-1, a NIST zaleca wycofanie go do końca 2030 roku. Pozostaje dopuszczalny do niezabezpieczających sum kontrolnych, gdy atakujący nie jest problemem.
- Dlaczego nie ma opcji MD5?
- Web Crypto API nie implementuje MD5, a narzędzie korzysta wyłącznie z tego, co dostarcza przeglądarka. MD5 od wielu lat nie nadaje się do zastosowań związanych z bezpieczeństwem.
- Czy mogę zahaszować plik tym narzędziem?
- Nie, przyjmuje wyłącznie tekst. Do plików użyj narzędzia wiersza poleceń swojego systemu, jak opisano wyżej.
- Dlaczego mój SHA-256 różni się od wyniku innej strony?
- Prawie zawsze dane wejściowe różnią się niewidocznym znakiem, na przykład końcową nową linią lub spacją, albo kodowaniem tekstu. Sprawdź dokładne bajty w Konwerterze hex.