MD5 maišos generatorius

Pridėti į svetainę Metainformacija

Kiti įrankiai

MD5 maišos generatorius

MD5 maišos generatorius

MD5 yra 128 bitų maišos algoritmas, kurį dešimtojo dešimtmečio pradžioje sukūrė mokslininkas Ronaldas L. Rivestas. Santrumpa MD5 reiškia Message Digest Version 5.

MD5 šifravimas pagrįstas maišos keitimu, kuris apima „pirštų atspaudų“ arba „sumų“ formavimą, siekiant dar labiau patikrinti jų autentiškumą. Naudodami šį metodą galite patikrinti informacijos vientisumą ir slaptažodžių maišos saugojimą.

MD5 istorija

Pranešimo santraukos algoritmo (MD5) istorija prasideda 1991 m., kai MIT profesorius Ronaldas L. Rivestas pranešė apie naujo algoritmo, kuris pakeitė pasenusį MD4, sukūrimą. Kalbant apie MD4, jame išties buvo rasta nemažai trūkumų, kaip vėliau rašė vokiečių kriptologas Hansas Dobbertinas.

Rivest aprašė naują MD5 algoritmą RFC 1321.

Darbą su algoritmu tęsė tyrinėtojai Bertas den Boeris ir Antonas Bosselarsas, kurie 1993 m. įrodė pseudo susidūrimų galimybę MD5, kai skirtingi inicijavimo vektoriai gali atitikti tuos pačius pranešimų santraukas.

Be to, 1996 m. Hansas Dobbertinas teigė radęs susidūrimą su MD5. Tuo metu tapo žinomi labiau pageidaujami maišos algoritmai, tokie kaip RIPEMD-160 kriptografinės maišos funkcijos, kurias sukūrė Hans Dobbertin, Anton Bosselars ir Bart Prenel, Whirlpool, kurias sukūrė Vincentas Raymenas ir Paulo Barreto, ir SHA-1 kriptografinės maišos algoritmas.

Dėl santykinai mažo maišos dydžio (128 bitai) MD5 buvo kalbama apie gimtadienio atakų galimybę. MD5CRK projektas, kurį 2004 m. pradėjo Jean-Luc Cook, siekė ištirti algoritmo pažeidžiamumą naudojant gimtadienio atakas. Tačiau po penkių mėnesių, 2004 m. rugpjūčio 17 d., projektas buvo apribotas, nes Lai Xuejia vadovaujama Kinijos kriptografų grupė aptiko algoritmo pažeidžiamumą.

2005 m. kovo mėn. matematikai ir kriptografai Benne de Weger, Arjen Lenstra ir Wang Xiaoyun sukūrė du X.509 dokumentus su ta pačia maiša ir skirtingais viešaisiais raktais.

Po metų, 2006 m. kovo mėn., Čekijos kriptografas Vlastimilas Klima paskelbė algoritmą, leidžiantį nustatyti susidūrimus paprastu kompiuteriu vos per vieną minutę. Šis algoritmas tapo žinomas kaip „tuneliavimo“ metodas.

Išanalizavus darbo rezultatus, 2008 m. JAV Tėvynės saugumo departamento Nacionalinės kibernetinio saugumo administracijos (US-CERT) skyrius rekomendavo visiems, kurie dalyvavo kuriant programinės įrangos, svetainių, taip pat tinklo naudotojų, nustos naudoti MD5 algoritmą, nepaisant jo taikymo tikslo. Tokios rekomendacijos priežastis buvo nepatikimumas, kurį jis parodė ją studijuodamas.

2010 m. gruodžio mėn. Kinijos kriptologai Tao Xie ir Feng Denguo aptiko 512 bitų (vieno bloko) pranešimų susidūrimą. Anksčiau susidūrimai buvo aptikti tik dviejų ar daugiau blokų ilgio pranešimuose. Vėliau Markas Stevensas panašių rezultatų pasiekė publikuodamas blokus su ta pačia MD5 maiša. Jis taip pat sukūrė algoritmą tokio tipo susidūrimams gauti.

Paskutinis dokumentas, užbaigęs MD5 algoritmo kūrimo istoriją, buvo komentarų prašymas – RFC 6151 (RFC yra oficialus dokumentas, sukurtas Interneto inžinerijos tarybos (IETF), kuriame aprašomos konkrečios specifikacijos. technologija), kuri iš tikrųjų atpažino MD5 kaip nesaugų maišos algoritmą . Dokumente rekomenduojama jo atsisakyti, kaip alternatyvą pasirinkti SHA-2 kriptografinių algoritmų šeimą.

Aptartas MD5 algoritmas laikomas vienu iš pirmųjų algoritmo standartų, naudojamų failų vientisumui patikrinti ir slaptažodžiams žiniatinklio programų duomenų bazėse saugoti.

Tačiau iš tikrųjų santykinai paprastas funkcionalumas, trumpas išvesties ilgis ir atliekamų operacijų paprastumas, kurie yra algoritmo pranašumai, taip pat lemia jo trūkumus – MD5 reiškia algoritmus, kurie yra linkę įsilaužti ir kurių veikimo lygis yra mažas. apsauga nuo gimtadienio išpuolių.

Kas yra MD5?

Kas yra MD5?

MD5 maišos algoritmas gali būti naudojamas įvairiose srityse, susijusiose su elektroninių skaitmeninių parašų, saugių slaptažodžių, kriptografinių internetinių raktų kūrimu. Tai leidžia patikrinti informacijos vientisumą kompiuteryje.

Iš pradžių MD5 buvo laikomas gana stipriu šifravimo algoritmu, tačiau dėl tyrimo metu nustatytų trūkumų šiuo metu rekomenduojama jį pakeisti kitu, saugesniu maišos algoritmu.

Naudojimo pavyzdžiai

Pagrindinis MD5 algoritmo pranašumas yra plati jo taikymo sritis.

Algoritmas leidžia patikrinti atsisiųstos informacijos autentiškumą ir vientisumą

Pavyzdžiui, kartu su programinės įrangos diegimo paketais yra patikrinimo sumos vertė.

Taip pat praktikuojama naudoti MD5 algoritmą slaptažodžiams maišyti

Pavyzdžiui, „Unix“ operacinė sistema aktyviai naudoja šį algoritmą kaip maišos įrankį. Reikėtų pažymėti, kad kai kuriose Linux sistemose slaptažodžiams saugoti taip pat aktyviai naudojamas MD5 metodas.

Žinomi šie slaptažodžių saugojimo būdai:

  • Standartinė saugykla be maišos. Šio metodo trūkumas yra didelė informacijos nutekėjimo rizika įsilaužus į duomenų bazę.
  • Saugomos tik slaptažodžių maišos. Tokius duomenis nesunku rasti naudojant iš anksto paruoštas maišos lenteles. Tokioms lentelėms užpildyti naudojami įprasti mažai sudėtingi slaptažodžiai.
  • Kelių simbolių pridėjimas prie slaptažodžių, vadinamų „druska“. Po to rezultatui sumaišoma. Dėl tokių veiksmų gautas slaptažodis turi būti saugomas aiškiu tekstu. Ieškant tokiu būdu sukurtų slaptažodžių, lentelės nepadės.

MD5 maišos algoritmas gali būti naudojamas iš žiniatinklio atsisiųstiems failams patikrinti

Tai įmanoma naudojant specializuotas priemones, kurios gali pakeisti failo ypatybes ir įgalinti maišos kodavimo algoritmus.

MD5 naudojamas kuriant žiniatinklio programas

Kurdami ir konfigūruodami autentifikavimo sistemas, scenarijus ar skydelius, galite generuoti atskirų eilučių maišos kodus.

MD5 algoritmo patikimumas

Mums žinoma maišos technologija, žinoma kaip MD5 algoritmas, ilgą laiką buvo laikoma gana patikima. Tuo pačiu metu niekas nekalbėjo apie jo idealumą. Nebuvo jokių garantijų, kad algoritmas bus nepažeidžiamas ir užtikrins šimtaprocentinį informacijos neliečiamumą.

Dėl daugelio mokslininkų darbo buvo nustatyti tam tikri šios technologijos trūkumai. Pagrindinis iš jų yra pažeidžiamumas, atsirandantis dėl susidūrimo aptikimo šifravimo metu.

Susidūrimas – tai tikimybė pasiekti tą patį išvesties rezultatą, kai įvedami skirtingi įvesties duomenys. Kuo didesnė ši tikimybė, tuo žemesnis naudojamo algoritmo apsaugos lygis.

Tyrėjai atliko kriptoanalizę ir nustatė kelis būdus, kaip nulaužti MD5 maišą:

  • Grubiosios jėgos ataka gali būti laikoma universaliu įsilaužimo metodu. Tačiau jis taip pat turi savo trūkumą - metodas yra labai ilgas. Norėdami tai neutralizuoti, naudojama klavišų skaičiaus didinimo technika. Šis metodas dažnai naudojamas slaptažodžio šifravimo stiprumo ir stiprumo lygiui įvertinti.
  • RainbowCrack yra speciali programa, leidžianti sukurti maišos bazę, kurios pagrindu beveik akimirksniu vykdomas raidžių ir skaičių slaptažodžio nulaužimas.
  • Slaptažodžiams pasirinkti naudojant žodyną, naudojamos žodynų duomenų bazės ir paruoštos programos.
  • Naudodami susidūrimo aptikimo metodą, skirtingų pranešimų, kurių pradžia yra ta pati, funkcijų reikšmės yra panašios. Šis metodas buvo aktyviai naudojamas XX amžiaus pabaigoje.

Identiško maišos kodo gavimo formulė yra tokia: MD5(4L1) = MD5(4L2).

2004 m. Kinijos mokslininkai aptiko sistemos pažeidžiamumą, leidžiantį per trumpą laiką aptikti susidūrimą.

2006 m. buvo rastas metodas, leidžiantis aptikti kenksmingus failus įprastame kompiuteryje naudojant vadinamuosius „tunelius“.

Nepaisant tam tikrų problemų, daugiausia susijusių su MD5 pažeidžiamumu, šis algoritmas vis dar yra paklausus, nes jis aktyviai naudojamas savarankiškai kuriant žiniatinklio programas, taip pat kitais būtinais atvejais.