Mis see tööriist on?
MD5 on räsifunktsioon, mis muudab mistahes sisendi fikseeritud 32-tähemärgiliseks kuueteistkümnendsüsteemi sõrmejäljeks. Sama sisend annab alati sama räsi ning isegi ühetähemärgiline muutus annab täiesti erineva tulemuse. See muudab räsid kasulikuks kontrollsummade, vahemälu võtmete, dubleerimise eemaldamise ja andmete terviklikkuse kontrollimise jaoks.
Turvalisuse märkus: MD5 on krüptograafiliselt murtud — kollisioone saab luua — nii et seda ei tohi kasutada paroolide ega allkirjade jaoks. Nende jaoks kasuta SHA-256 (samuti allpool saadaval) või spetsiaalset paroolide räsimist nagu bcrypt. MD5 sobib ikkagi mitteturvalisteks kasutusteks nagu kontrollsummad ja vahemälu võtmed.
MD5 pärineb aastast 1992, kui Ron Rivest avaldas selle kui RFC 1321 — mis on osaliselt põhjus, miks nii paljud pärandsüsteemid ootavad seda ikka veel, hoolimata selle tuntud nõrkustest.
Miks seda kasutada?
- Genereeri kontrollsummasid, et kontrollida, kas fail või string ei ole kogemata muudetud.
- Loo deterministlikke vahemälu võtmeid ja dubleerimise eemaldamise ID-sid.
- Võrdle tuntud MD5-ga andmete terviklikkuse kontrollimiseks.
- Saa lisaks SHA-1 ja SHA-256 — teist tööriista ei ole vaja.
- 100% kohalik: sinu sisend ei lahku kunagi brauserist.
Kuidas kasutada
- Kirjuta või kleebi oma tekst sisendkasti.
- Klõpsa "Generate Hash".
- Loe MD5, SHA-1 ja SHA-256 tulemused (märgi "Uppercase", kui su süsteem ootab suurtähti).
- Klõpsa "Copy" räsi kõrval, mida vajad.
Näide
Sisend
helloTulemus
MD5: 5d41402abc4b2a76b9719d911017c592
SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824Räsid on deterministlikud: "hello" annab need täpsed väärtused igas tööriistas, iga kord.
Millist räsi peaksid kasutama?
Kõik kolm on ühesuunalised räsid, kuid need ei ole omavahel asendatavad — õige valik sõltub täielikult sellest, kas vajad turvalisust või lihtsalt sõrmejälge.
| Algoritm | Väljundi suurus | Kasuta selle jaoks | Ära kasuta selle jaoks |
|---|---|---|---|
| MD5 | 128 bitti (32 hex-märki) | Kontrollsummad, vahemälu võtmed, dubleerimise eemaldamine, kogemata failimuudatuste tuvastamine | Paroolid, digitaalallkirjad, kõik turvalisustundlik — kollisioone saab konstrueerida |
| SHA-1 | 160 bitti (40 hex-märki) | Pärandsüsteemide ühilduvus (nt vanad Git commit-räsid) | Uued turvalisustundlikud disainid — praktilised kollisiooniründed on olemas alates 2017. aastast |
| SHA-256 | 256 bitti (64 hex-märki) | Digitaalallkirjad, TLS-sertifikaadid, plokiahel, kontrollsummad, kus manipuleerimiskindlus on oluline | Paroolide otsene hoidmine — isegi SHA-256 on selle jaoks liiga kiire; kasuta selle asemel bcrypt, scrypt või Argon2 |
Levinud kasutusjuhud
- Allalaaditud faili vastavuse kontrollimine väljaandja kontrollsummale enne selle käivitamist, räsides faili ja tulemust võrreldes.
- Deterministliku vahemälu võtme genereerimine URL-ist või päringustringist, nii et identsed päringud kaardistuvad alati samale vahemälu kirjele.
- Suure kirjete nimekirja dubleerimise eemaldamine, räsides igaüht ja võrreldes räsisid, mitte täisteksti.
- Kiire kontroll, kas kaks faili koopiat on baidi kaupa identsed, ilma neid otse avamata või võrdlemata.
Miks kollisioonid on turvalisuse jaoks olulised, kuid mitte kontrollsummade jaoks
Räsikollisioon tähendab, et kaks erinevat sisendit toodavad sama räsiväljundi — matemaatiliselt vältimatu iga räsifunktsiooni jaoks (kuna sisendeid on lõpmatult, aga väljundeid fikseeritud pikkusega), kuid praktiline risk sõltub täielikult kasutusjuhtumist. Turvalisusallkirja jaoks võimaldab tahtlikult konstrueeritud kollisioon ründajal asendada pahatahtliku faili legitiimsega, säilitades sama räsi, mis on täpselt see, mis on MD5 vastu tõestatud alates 2004. aastast ja SHA-1 vastu alates 2017. aastast. Kontrollsumma või vahemälu võtme jaoks ei üritagi keegi kollisiooni konstrueerida — sa lihtsalt kontrollid, kas fail on kogemata rikutud või kas kaks suvalist stringi juhtuvad olema identsed — nii et sama matemaatiline nõrkus, mis murrab MD5 turvalisusrakendust, ei mõjuta selle mitteturvalisi kasutusi peaaegu üldse.
Kas soovid võrrelda mitut algoritmi korraga?
Kui soovid näha sama teksti MD5, SHA-1, SHA-256, SHA-384 ja SHA-512 väärtusi kõrvuti, mitte ükshaaval, kasuta meie mitme algoritmi võrdlustööriista.
Korduma kippuvad küsimused
Kas ma saan MD5 räsi tagasi originaaltekstiks dekrüpteerida?
Ei — räsimine on disaini poolest ühesuunaline; originaali ei saa räsist arvutada. "MD5 dekrüpteerimise" saidid otsivad räsid lihtsalt üles hiiglaslikest ette arvutatud levinud sisendite tabelitest, mistõttu ei saa unikaalseid sisendeid pöörata.
Kas MD5 on paroolide hoidmiseks turvaline?
Ei, absoluutselt mitte. MD5-d on kiire jõuga murda ja sellel on teadaolevaid kollisiooniründeid. Kasuta paroolide jaoks bcrypt, scrypt või Argon2. MD5 on vastuvõetav ainult mitteturvalistel eesmärkidel nagu kontrollsummad.
Miks annab sama tekst teises tööriistas erineva räsi?
Tavaliselt nähtamatute erinevuste tõttu: lõpetav reavahetus või tühik, erinevad realõpud (\r\n vs \n) või erinev tekstikodeering. Baidi kaupa identne sisend annab alati identse räsi.
Mis vahe on MD5-l, SHA-1-l ja SHA-256-l?
Need erinevad väljundi pikkuse ja turvalisuse poolest: MD5 (128-bitine) ja SHA-1 (160-bitine) on mõlemad turvalisuse eesmärkidel murtud; SHA-256 (256-bitine) on praegune standard ja jääb turvaliseks. Kahtluse korral kasuta SHA-256.
Kas mu tekst saadetakse räsimiseks serverisse?
Ei. MD5 arvutatakse JavaScriptiga ja SHA-1/SHA-256 sinu brauseri sisseehitatud Web Crypto API-ga — kõik jääb sinu seadmesse.