Ugrás a tartalomra

MD5 Hash Generátor Online - Ingyenes MD5 Titkosítási Eszköz

Generáljon MD5 hash-eket azonnal ingyenes online eszközünkkel. Az ügyféloldali feldolgozás biztosítja a magánszférát. Tökéletes adatintegritás-ellenőrzéshez és fájl-hitelesítéshez.

MD5 Hash Generátor

Betöltési kalkulátor...
📚

Dokumentáció

Mi az MD5-hash-generátor?

Az MD5-hash-generátor olyan eszköz, amely bármilyen szöveget egy rögzített hosszúságú, MD5-hashnek nevezett kóddá alakít. Az MD5 a Message-Digest Algorithm 5 rövidítése, amely egy 1992-ben közzétett hashfüggvény. Egy szó, egy mondat vagy egy teljes fájl megadása mindig ugyanazt a 32 karakterből álló eredményt adja, és már a bemenet egyetlen apró módosítása is teljesen eltérő eredményt hoz létre. Az eszköz közvetlenül a böngészőben, JavaScripttel futtatja az algoritmust, ezért a beírt szöveget soha nem küldi el szerverre.

Hogyan működik az MD5-hash-elés?

Az MD5 egy egyirányú függvény. Tetszőleges hosszúságú bemenetet fogad, és rögzített méretű kimenetet állít elő, amelyet hashnek vagy kivonatnak neveznek. Az „egyirányú” azt jelenti, hogy a folyamat nem fordítható vissza: kizárólag a hashből nincs módszer az eredeti szöveg rekonstruálására.

Az algoritmus a következő lépésekben dolgozza fel az adatokat:

  1. Az üzenetet bájtokká alakítja, majd kitölti úgy, hogy a hossza 512 bit többszöröse legyen.
  2. Hozzáfűz egy 64 bites mezőt, amely az eredeti üzenet hosszát rögzíti.
  3. Négy 32 bites számot rögzített kezdőértékekre állít be.
  4. A kitöltött üzenetet 512 bites blokkokra osztja. Minden blokk négy, egyenként 16 műveletből álló körön megy keresztül, vagyis blokkonként 64 műveletet hajt végre. Minden művelet bitenkénti függvények, összeadás és bitforgatás segítségével keveri a blokk adatait a négy futó számmal.
  5. Az összes blokk feldolgozása után a négy 32 bites számot összefűzi, majd hexadecimális számjegyekként írja ki.

Az eredmény mindig 128 bit hosszúságú, és 32 hexadecimális karakter formájában jelenik meg (0-9 és a–f), mivel a 128 bites kimenet minden bájtját két hexadecimális számjegyként írja ki.

Egy hashfüggvény akkor tekinthető biztonságosnak, ha három tulajdonsággal rendelkezik: ugyanaz a bemenet mindig ugyanazt a kimenetet adja, gyakorlatilag kivitelezhetetlen olyan bemenetet találni, amely egy kiválasztott hasht eredményez, és gyakorlatilag kivitelezhetetlen két különböző, azonos hasht eredményező bemenetet találni. Az MD5 továbbra is rendelkezik az első tulajdonsággal, a másik kettőt azonban már feltörték, amint azt az alábbi rész ismerteti.

Példa MD5-hashre

A „hello” szó MD5-hash-elése a következő eredményt adja:

1Input:  hello
2Output: 5d41402abc4b2a76b9719d911017c592
3

Egy üres karakterlánc hash-elése szintén állandó, nem üres eredményt ad, mivel a kitöltés és a hosszmező ekkor is végigmegy az algoritmuson:

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

Egyetlen karakter megváltoztatása, például az első betű nagybetűsre cserélése („Hello”), teljesen eltérő, 32 karakterből álló karakterláncot eredményez. Ezt lavinahatásnak nevezik: a bemenet kis változásai nagy, előre nem jelezhető változásokat okoznak a kimenetben.

Az MD5-hash-generátor használata

  1. Írjon be vagy illesszen be szöveget a beviteli mezőbe.
  2. A hash automatikusan megjelenik a mező alatt, és a szöveg változásakor frissül. Nincs szükség külön gomb megnyomására.
  3. A 32 karakterből álló hash vágólapra másolásához kattintson a „Másolás” gombra.
  4. Az eredmény alatt egy kis színes sáv jelenik meg, amelyet a hash egy részéből generál a rendszer, és gyors vizuális ellenőrzést tesz lehetővé annak megállapítására, hogy két hash eltér-e.

Mivel a számítás a böngésző saját JavaScript-motorjában történik, az oldal betöltése után nincs szükség internetkapcsolatra, és a beírt szöveget a rendszer sehová sem továbbítja.

Az MD5-hash-ek gyakori felhasználásai

  • Annak ellenőrzése, hogy egy letöltött fájl nem sérült-e meg az átvitel során, a hash és a közzétett érték összehasonlításával.
  • Keresési kulcsok vagy gyorsítótár-azonosítók létrehozása adatokhoz, mivel a hash egy hosszabb érték rövid, rögzített méretű helyettesítője.
  • Duplikált fájlok felismerése a teljes fájltartalom helyett a hash-ek összehasonlításával.
  • Verziókezelő és buildrendszerek használata, amelyek hash-ekkel érzékelik, hogy egy fájl megváltozott-e.

Az MD5 nem alkalmas jelszavak tárolására, digitális aláírások létrehozására vagy bármely olyan esetre, amikor egy támadó megpróbálhatja meghamisítani vagy visszafejteni a hasht. Ennek okait a következő rész ismerteti.

Az MD5 története

Ronald Rivest amerikai kriptográfus 1991-ben tervezte meg az MD5-öt korábbi, MD4 algoritmusának utódjaként. Az Internet Engineering Task Force 1992-ben tette közzé a specifikációt RFC 1321 formájában (3360 cm), és az MD5 széles körben elterjedt ellenőrzőösszegekhez, valamint egy ideig biztonsági célokra is.

Az MD5 belső szerkezetének gyengeségeit már 1996-ban feljegyezték. 2004-ben Xiaoyun Wang kriptográfus által vezetett kutatócsoport gyakorlati módszert mutatott be két olyan különböző bemenet létrehozására, amelyek azonos MD5-hasht eredményeznek; ezt a hibát ütközésnek nevezik. 2008-ban egy másik kutatócsoport ütközéses támadással egy hamis webhely biztonsági tanúsítványát állította elő, amelyet az akkori böngészők hitelesnek fogadtak volna el. Ezek az eredmények arra késztették a biztonsági szabványügyi szervezeteket, hogy többé ne ajánlják az MD5 használatát olyan célokra, ahol a hamisítás számít.

Az MD5 biztonsági gyengeségei

  • Az ütközésállóság megszűnt. Számítási szempontból kivitelezhető két különböző, azonos MD5-hasht eredményező bemenet létrehozása.
  • A sebesség a jelszavak esetében ellene dolgozik. Az MD5-öt gyors számításra tervezték, ami hasznos az ellenőrzőösszegeknél, de hátrányos a jelszavak tárolásakor, mivel hagyományos hardveren másodpercenként több milliárd találgatást tesz lehetővé a támadók számára.
  • Nyilvánosan nem ismert a nyers erő alkalmazásánál gyorsabb előkép-támadás, ezért egy hashből a pontos bemenet visszanyerése továbbra is nehéz, ez azonban önmagában nem teszi alkalmassá az MD5-öt biztonsági szempontból érzékeny felhasználásra.

E problémák miatt az MD5 nem alkalmas jelszavak tárolására, digitális aláírások készítésére, SSL/TLS-tanúsítványokhoz vagy bármely olyan alkalmazáshoz, amelyben valaki szándékosan egyező hasht próbálhat előállítani.

Az MD5 alternatívái

  • A SHA-256, amely a SHA-2 család része, 256 bites hasht állít elő, és nincs ismert gyakorlati ütközéses támadás ellene.
  • A SHA-3 újabb szabvány, amely a SHA-2 algoritmusétól eltérő belső felépítésen alapul.
  • A BLAKE2 gyors hashfüggvény, amelynek biztonságát a SHA-3 algoritmuséhoz hasonlónak tekintik.
  • A bcrypt, a scrypt és az Argon2 kifejezetten jelszavak tárolására készültek, mivel szándékosan lassúak és ellenállnak a hardveres gyorsítással végzett találgatásnak.

Gyakran ismételt kérdések

Mire használják ma az MD5-öt?

Főként nem biztonsági célokra, például fájlintegritás ellenőrzésére, duplikációk megszüntetésére és gyorsítótárkulcsokhoz. Jelszavakhoz, aláírásokhoz vagy tanúsítványokhoz már nem ajánlott.

Visszafejthető-e az MD5-hash az eredeti szöveg visszanyeréséhez?

Nem. Az MD5 egyirányú függvény, ezért nincs olyan számítás, amely a hasht visszaalakítaná a bemenetté. A támadó azonban továbbra is kitalálhat valószínű bemeneteket, és mindegyiket hash-elheti az egyezés ellenőrzéséhez, ezért nem biztonságos az MD5 használata jelszavakhoz.

Miért nem biztonságos az MD5 jelszavak tárolására?

Mivel nagyon gyorsan számítható, egy korszerű hardverrel rendelkező támadó másodpercenként hatalmas számú jelszó-találgatást tud ellenőrizni. A kifejezetten erre a célra készült algoritmusok, például a bcrypt, a scrypt és az Argon2, szándékosan lassúak, hogy ellenálljanak ennek.

Milyen hosszú egy MD5-hash?

Mindig 128 bites, és 32 hexadecimális karakterként jelenik meg, függetlenül a bemeneti szöveg hosszától.

Előállíthatja-e két különböző bemenet ugyanazt az MD5-hasht?

Igen. Ezt ütközésnek nevezik, és a kutatók 2004 óta gyakorlati módszereket mutattak be ilyen párok létrehozására. Ez a fő oka annak, hogy az MD5 már nem tekinthető biztonságosnak.

Elküldi ez az eszköz a beírt szöveget egy szerverre?

Nem. A hash kiszámítása a böngészőben futó JavaScripttel történik, és a bemenet soha nem hagyja el az eszközt.

Mi a különbség az MD5 és a SHA-256 között?

Mindkettő hashfüggvény, de a SHA-256 hosszabb, 256 bites hasht állít elő, és nincs ismert gyakorlati ütközéses támadás ellene, míg az MD5 ütközésállósága megszűnt. A SHA-256 a jobb választás, amikor a biztonság számít.

Hivatkozások

  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. és mtsai (2008). „MD5 Considered Harmful Today: Creating a Rogue CA Certificate.” A 25. Chaos Communication Congresson bemutatva.
  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