Generátor hashů
Vložte text nebo vyberte soubor a hned uvidíte jeho MD5, SHA-1, SHA-256, SHA-512 i SHA-3 hash. Hodí se i k ověření kontrolního součtu staženého souboru.
-
HMAC-MD5 prolomený zastaralý
Hash se zobrazí tady -
HMAC-SHA-1 prolomený zastaralý
Hash se zobrazí tady -
HMAC-SHA-256
Hash se zobrazí tady -
HMAC-SHA-512
Hash se zobrazí tady
Co je hash a k čemu se hodí
Hash je krátký otisk libovolných dat s pevnou délkou. Spočítá ho hašovací funkce, například SHA-256, a ze stejného vstupu vždy vznikne stejný výsledek. Stačí ale změnit jediné písmeno a hash bude úplně jiný. Proto se používá k ověření, že se soubor při stahování nepoškodil, k porovnání dat bez jejich odesílání nebo k podepisování zpráv mezi aplikacemi.
Jak vytvořit hash
Vložte text nebo soubor
Text napište nebo vložte do pole, soubor vyberte či přetáhněte na stránku. Hash se počítá už během psaní.
Vyberte algoritmy a formát
Zapněte algoritmy, které potřebujete. Výsledek může být v malých nebo velkých hexadecimálních znacích či v Base64.
Zkopírujte nebo porovnejte
Hash zkopírujete jedním kliknutím. Když do pole pro porovnání vložíte očekávaný hash, nástroj vám řekne, jestli sedí.
Který algoritmus zvolit
K ověření souborů i pro nové projekty dnes sáhněte po SHA-256. MD5 a SHA-1 jsou prolomené, proto je používejte jen tam, kde je vyžaduje jiný systém.
| Algoritmus | Délka | Kdy ho použít |
|---|---|---|
| MD5 | 128 bitů, 32 znaků | Jen jako kontrolní součet proti náhodnému poškození. Kolizi dnes vyrobí i běžný počítač za pár sekund. |
| SHA-1 | 160 bitů, 40 znaků | Starší systémy a Git. První kolizi zveřejnili v roce 2017, k podpisům se už nepoužívá. |
| SHA-256 | 256 bitů, 64 znaků | Dnešní standard pro kontrolní součty souborů, certifikáty, blockchain i HMAC podpisy. |
| SHA-384 | 384 bitů, 96 znaků | Certifikáty a TLS s vyšší úrovní zabezpečení. |
| SHA-512 | 512 bitů, 128 znaků | Když chcete delší otisk a vyšší odolnost proti kolizím. |
| SHA3-256, SHA3-512 | 256 a 512 bitů | Novější rodina SHA-3 s jinou vnitřní konstrukcí. Záloha pro případ, že by se v SHA-2 objevila slabina. |
Jak ověřit kontrolní součet staženého souboru
U instalaček, obrazů disků nebo firmwaru autoři často zveřejňují SHA-256 součet. Pokud se shoduje s hashem vašeho souboru, soubor se stáhl celý a bez chyb. Součet berte vždy z oficiální stránky autora.
-
Na stránce, odkud jste soubor stáhli, najděte jeho SHA-256 součet. Bývá u odkazu ke stažení nebo v souboru
SHA256SUMS. - Přepněte generátor na Soubor a vyberte stažený soubor.
- Zveřejněný součet vložte do pole Porovnat s hashem. Zelená zpráva znamená shodu.
Hash souboru v příkazovém řádku
Stejný výsledek dostanete i bez prohlížeče. Místo soubor.iso doplňte název svého souboru.
- Windows (PowerShell)
Get-FileHash .\soubor.iso -Algorithm SHA256- Windows (příkazový řádek)
certutil -hashfile soubor.iso SHA256- macOS
shasum -a 256 soubor.iso- Linux
sha256sum soubor.iso
HMAC: hash s tajným klíčem
HMAC spojí zprávu s tajným klíčem, takže správný výsledek spočítá jen ten, kdo klíč zná. Takto podepisují webhooky například GitHub nebo Shopify. Při ladění webhooku zapněte HMAC s tajným klíčem, vložte tělo požadavku přesně tak, jak přišlo, a porovnejte výsledek s podpisem z hlavičky. Některé služby podepisují víc než samotné tělo, například Stripe počítá HMAC z časového razítka, tečky a těla, proto si v dokumentaci ověřte, co přesně služba podepisuje.
Hesla neukládejte jako obyčejný hash
MD5, SHA-1 ani SHA-256 nejsou určené k ukládání hesel. Jsou navržené tak, aby byly rychlé, takže útočník dokáže vyzkoušet miliardy hesel za sekundu a běžná hesla najde v hotových tabulkách. Pro hesla použijte funkce, které jsou záměrně pomalé a přidávají náhodnou sůl: Argon2id, bcrypt nebo scrypt. Většina jazyků a frameworků je nabízí přímo.
Související nástroje
Další nástroje pro přípravu, úpravu a kontrolu textu.
FAQ
Dá se hash dešifrovat nebo převést zpět na text?
Je MD5 ještě bezpečné?
Proč mi vychází jiný hash než v terminálu nebo v jiném nástroji?
echo přidává na konec nový řádek, takže v terminálu použijte echo -n nebo printf. Windows ukládá konec řádku jako dva znaky (CR LF), zatímco toto pole používá jeden (LF). Rozdíl udělá i mezera na konci nebo kódování: nástroj převádí text do UTF-8, starší programy na Windows používají Windows-1250, a slova s diakritikou pak dají jiný hash. U souborů na kódování nezáleží, hashují se bajt po bajtu.
Odesílá se můj text nebo soubor na server?
Jak velký soubor můžu hashovat?
Jaký je rozdíl mezi SHA-256 a SHA-512?
Co je SHA-3 a mám ho používat?
Záleží v hashi na velkých a malých písmenech?
A1B2 i a1b2 představuje tentýž hash a pole pro porovnání ho přijme v obou podobách. Base64 ale velká a malá písmena rozlišuje, takže tam musí sedět každý znak. Rozlišuje je i samotný vstup: „Ahoj“ a „ahoj“ dají úplně jiné hashe.