Preskočiť na obsah

MD5 Hash Generátor Online - Bezplatný MD5 Šifrovací Nástroj

Generujte MD5 hashe okamžite pomocou nášho bezplatného online nástroja. Spracovanie na strane klienta zaručuje súkromie. Ideálne pre kontrolu integrity dát a overovanie súborov.

Generátor MD5 Hash

Kalkulačka načítavania...
📚

Dokumentácia

Čo je generátor hašov MD5?

Generátor hašov MD5 je nástroj, ktorý ľubovoľný text zmení na kód s pevnou dĺžkou nazývaný haš MD5. MD5 je skratka pre Message-Digest Algorithm 5, hašovaciu funkciu publikovanú v roku 1992. Zadaním slova, vety alebo celého súboru vždy vznikne rovnaký výsledok s 32 znakmi a aj nepatrná zmena vstupu vytvorí úplne odlišný výsledok. Tento nástroj spúšťa algoritmus priamo v prehliadači pomocou JavaScriptu, takže zadaný text sa nikdy neposiela na server.

Ako funguje hašovanie MD5

MD5 je jednosmerná funkcia. Spracúva vstup ľubovoľnej dĺžky a vytvára výstup s pevnou veľkosťou, ktorý sa nazýva haš alebo odtlačok. „Jednosmerná“ znamená, že proces nemožno obrátiť: neexistuje spôsob, ako zo samotného hašu obnoviť pôvodný text.

Algoritmus spracúva údaje v týchto krokoch:

  1. Správa sa prevedie na bajty a doplní sa tak, aby jej dĺžka bola násobkom 512 bitov.
  2. Pripojí sa pole s dĺžkou 64 bitov, ktoré obsahuje pôvodnú dĺžku správy.
  3. Štyrom číslam s dĺžkou 32 bitov sa priradia pevné počiatočné hodnoty.
  4. Doplnená správa sa rozdelí na bloky s dĺžkou 512 bitov. Každý blok prejde štyrmi kolami po 16 operácií, teda 64 operáciami na blok. Každá operácia premieša údaje bloku so štyrmi priebežne aktualizovanými číslami pomocou bitových funkcií, sčítania a bitových rotácií.
  5. Po spracovaní každého bloku sa štyri čísla s dĺžkou 32 bitov spoja a zapíšu ako hexadecimálne číslice.

Výsledok má vždy dĺžku 128 bitov a zobrazuje sa ako 32 hexadecimálnych znakov (0-9 a–f), pretože každý bajt výstupu s dĺžkou 128 bitov sa zapisuje ako dve hexadecimálne číslice.

Hašovacia funkcia sa považuje za bezpečnú, keď má tri vlastnosti: rovnaký vstup vždy poskytne rovnaký výstup, nájsť vstup, ktorý vytvorí zvolený haš, je prakticky neuskutočniteľné a prakticky neuskutočniteľné je aj nájsť dva rôzne vstupy s rovnakým hašom. MD5 má stále prvú vlastnosť, ale ďalšie dve boli prelomené, čo je vysvetlené nižšie.

Príklad hašu MD5

Hašovanie slova „hello“ pomocou MD5 vytvorí:

1Input:  hello
2Output: 5d41402abc4b2a76b9719d911017c592
3

Hašovanie prázdneho reťazca tiež vytvorí pevný, neprázdny výsledok, pretože doplnenie a pole s dĺžkou stále prechádzajú algoritmom:

1Input:  (empty string)
2Output: d41d8cd98f00b204e9800998ecf8427e
3

Zmena jediného znaku, napríklad zmena prvého písmena na veľké v slove „Hello“, vytvorí úplne odlišný reťazec s 32 znakmi. Tento jav sa nazýva lavínový efekt: malé zmeny vstupu spôsobujú veľké a nepredvídateľné zmeny výstupu.

Ako používať tento generátor hašov MD5

  1. Zadajte alebo vložte text do vstupného poľa.
  2. Haš sa automaticky zobrazí pod poľom a pri zmene textu sa aktualizuje. Netreba stláčať žiadne samostatné tlačidlo.
  3. Kliknutím na „Copy“ skopírujete haš s 32 znakmi do schránky.
  4. Pod výsledkom sa zobrazí malý farebný pruh vytvorený z časti hašu, ktorý slúži ako rýchla vizuálna kontrola, že sa dva haše líšia.

Keďže výpočet prebieha v samotnom JavaScriptovom jadre prehliadača, stránka po načítaní nepotrebuje internetové pripojenie a zadaný text sa nikam neprenáša.

Bežné použitia hašov MD5

  • Kontrola, či sa stiahnutý súbor počas prenosu nepoškodil, porovnaním jeho hašu so zverejnenou hodnotou.
  • Vytváranie vyhľadávacích kľúčov alebo identifikátorov vyrovnávacej pamäte pre údaje, pretože haš je krátka hodnota s pevnou veľkosťou zastupujúca dlhšiu hodnotu.
  • Zisťovanie duplicitných súborov porovnávaním hašov namiesto celého obsahu súborov.
  • Systémy na správu verzií a systémy zostavovania, ktoré pomocou hašov zisťujú, či sa súbor zmenil.

MD5 nie je vhodný na ukladanie hesiel, vytváranie digitálnych podpisov ani na iné prípady, keď by sa útočník mohol pokúsiť haš sfalšovať alebo spätne zvrátiť. Dôvody sú uvedené v nasledujúcej časti.

História MD5

Americký kryptograf Ronald Rivest navrhol MD5 v roku 1991 ako nástupcu svojho skoršieho algoritmu MD4. Internet Engineering Task Force zverejnila špecifikáciu ako RFC 1321 v (3 360 cm) roku 1992 a MD5 sa začal široko používať na kontrolné súčty a istý čas aj na bezpečnostné účely.

Slabiny vo vnútornej štruktúre MD5 boli zaznamenané už v roku 1996. V roku 2004 tím pod vedením kryptografky Xiaoyun Wangovej predstavil praktickú metódu vytvorenia dvoch rôznych vstupov, ktoré vytvoria rovnaký haš MD5; táto chyba sa nazýva kolízia. V roku 2008 samostatná skupina výskumníkov použila kolízny útok na sfalšovanie falošného bezpečnostného certifikátu webovej stránky, ktorý by vtedajšie prehliadače prijali ako pravý. Tieto výsledky viedli orgány zodpovedné za bezpečnostné normy k tomu, že prestali odporúčať MD5 na čokoľvek, pri čom záleží na ochrane pred falšovaním.

Bezpečnostné slabiny MD5

  • Odolnosť proti kolíziám je prelomená. Výpočtovo je praktické skonštruovať dva rôzne vstupy s rovnakým hašom MD5.
  • Rýchlosť je pri heslách nevýhodou. MD5 bol navrhnutý na rýchly výpočet, čo je užitočné pri kontrolných súčtoch, ale nevhodné na ukladanie hesiel, pretože útočník môže na bežnom hardvéri skúšať miliardy odhadov za sekundu.
  • Verejne nie je známy útok na predobraz, ktorý by bol rýchlejší než útok hrubou silou, takže získanie presného vstupu z hašu je stále náročné, ale samo osebe to neznamená, že je MD5 vhodný na bezpečnostne citlivé použitie.

Z týchto dôvodov MD5 nie je vhodný na ukladanie hesiel, digitálne podpisy, certifikáty SSL/TLS ani na žiadnu aplikáciu, v ktorej by sa niekto mohol úmyselne pokúsiť vytvoriť zhodný haš.

Alternatívy k MD5

  • SHA-256, súčasť rodiny SHA-2, vytvára haš s dĺžkou 256 bitov a nie je známy žiadny praktický kolízny útok proti nemu.
  • SHA-3, novšia norma založená na inej vnútornej štruktúre než SHA-2.
  • BLAKE2, rýchla hašovacia funkcia s bezpečnosťou považovanou za porovnateľnú so SHA-3.
  • Bcrypt, scrypt alebo Argon2, navrhnuté špeciálne na ukladanie hesiel, pretože sú zámerne pomalé a odolné proti hádaniu urýchľovanému hardvérom.

Najčastejšie otázky

Na čo sa MD5 používa dnes?

Väčšinou na úlohy, ktoré nesúvisia s bezpečnosťou, napríklad na kontrolu integrity súborov, deduplikáciu a kľúče vyrovnávacej pamäte. Na heslá, podpisy ani certifikáty sa už neodporúča.

Dá sa haš MD5 obrátiť a získať pôvodný text?

Nie. MD5 je jednosmerná funkcia, takže neexistuje výpočet, ktorý by haš zmenil späť na vstup. Útočník však môže hádať pravdepodobné vstupy a každý z nich zahašovať, aby skontroloval zhodu, a preto je MD5 pri heslách nebezpečný.

Prečo je MD5 nevhodný na ukladanie hesiel?

Keďže výpočet prebieha veľmi rýchlo, útočník s moderným hardvérom môže za sekundu otestovať obrovské množstvo odhadov hesiel. Algoritmy určené na tento účel, napríklad bcrypt, scrypt alebo Argon2, sú zámerne pomalé, aby takémuto útoku odolali.

Akú dĺžku má haš MD5?

Vždy má dĺžku 128 bitov a zobrazuje sa ako 32 hexadecimálnych znakov bez ohľadu na dĺžku vstupného textu.

Môžu dva rôzne vstupy vytvoriť rovnaký haš MD5?

Áno. Tento jav sa nazýva kolízia a výskumníci od roku 2004 preukázali praktické metódy na konštruovanie takýchto dvojíc. To je hlavný dôvod, prečo sa MD5 už nepovažuje za bezpečný.

Posiela tento nástroj zadaný text na server?

Nie. Haš vypočítava JavaScript spustený v prehliadači a vstup nikdy neopustí zariadenie.

Aký je rozdiel medzi MD5 a SHA-256?

Obe sú hašovacie funkcie, ale SHA-256 vytvára dlhší haš s dĺžkou 256 bitov a nie je proti nemu známy žiadny praktický kolízny útok, zatiaľ čo odolnosť MD5 proti kolíziám je prelomená. SHA-256 je lepšia voľba vždy, keď záleží na bezpečnosti.

Referencie

  1. Rivest, R. (1992). "The MD5 Message-Digest Algorithm." RFC 1321, Internet Engineering Task Force. https://tools.ietf.org/html/rfc1321
  2. Turner, S., Chen, L. (2011). "Updated Security Considerations for the MD5 Message-Digest and the HMAC-MD5 Algorithms." RFC 6151, Internet Engineering Task Force. https://tools.ietf.org/html/rfc6151
  3. Wang, X., Yu, H. (2005). „How to Break MD5 and Other Hash Functions.“ Advances in Cryptology – EUROCRYPT 2005.
  4. Sotirov, A. a kol. (2008). „MD5 Considered Harmful Today: Creating a Rogue CA Certificate.“ Príspevok prezentovaný na 25. kongrese Chaos Communication Congress.
  5. National Institute of Standards and Technology (2015). "SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions." FIPS 202. https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf