CodeKitHub
Generatorska orodja

Generator razpršilnih vrednosti za več algoritmov — primerjava drug ob drugem

Nazadnje posodobljeno:

Vtipkaj ali prilepi poljubno besedilo in takoj dobi njegove razpršilne vrednosti MD5, SHA-1, SHA-256, SHA-384 in SHA-512 druga ob drugi — brez uporabe petih ločenih orodij. Če potrebuješ le en določen algoritem, sta naša namenska orodja MD5 ali SHA-256 (povezavi spodaj) hitrejša za pregled. Vse se izračuna lokalno v tvojem brskalniku; tvoje besedilo se nikoli nikamor ne pošlje. Vnaprej opozorilo: razpršanje je enosmeren postopek, zato nobene od teh razpršilnih vrednosti ni mogoče »dešifrirati« nazaj v izvirno besedilo — poglej razdelek s pogostimi vprašanji spodaj za razlog.

MD5
SHA-1
SHA-256
SHA-384
SHA-512

Kaj je to orodje?

Razpršilna funkcija vzame poljuben vnos in ga spremeni v niz šestnajstiških znakov s fiksno dolžino, imenovan povzetek. Isti vnos vedno da isti povzetek, sprememba že enega znaka pa da povsem drugačen rezultat. To orodje na istem vnosu izvede pet razširjenih algoritmov — MD5, SHA-1, SHA-256, SHA-384 in SHA-512 — tako da jih lahko primerjaš ali vzameš tistega, ki ga potrebuješ.

Ti povzetki so enosmerni: matematično je neizvedljivo iz razpršilne vrednosti obnoviti izvirno besedilo. Kar ljudje imenujejo »dešifriranje« razpršilne vrednosti na spletu, je v resnici iskanje — stran preprosto preveri, ali se tvoja razpršilna vrednost ujema z eno od milijard vnaprej izračunanih razpršilnih vrednosti pogostih gesel in fraz. Če tvojega vnosa ni v njihovi tabeli, ga ni mogoče najti, ker inverzne funkcije preprosto ni.

Družina SHA-2 (SHA-256, SHA-384, SHA-512) je standardizirana s strani NIST v FIPS 180-4 in ostaja nezlomljena. MD5 in SHA-1 sta druga zgodba: praktični napadi s trki so bili demonstrirani proti MD5 leta 2004 in proti SHA-1 leta 2017 (napad »SHAttered«), zato se oba štejeta za kriptografsko zlomljena.

Zakaj ga uporabiti?

  • Izračuna pet algoritmov razpršanja hkrati namesto preklapljanja med orodji.
  • Primerjaj vsoto MD5, SHA-1 ali SHA-256 z objavljeno vrednostjo za preverjanje celovitosti.
  • Ustvari močnejše povzetke SHA-384 ali SHA-512 za aplikacije, ki zahtevajo daljši izpis.
  • Zgradi deterministične identifikatorje ali predpomnilniške ključe iz poljubnega besedila.
  • 100 % lokalno: tvoj vnos nikoli ne zapusti brskalnika, zato je varno za občutljivo besedilo.

Kako ga uporabljati

  1. Vtipkaj ali prilepi svoje besedilo v vnosno polje.
  2. Klikni »Generate«.
  3. Preberi rezultate MD5, SHA-1, SHA-256, SHA-384 in SHA-512 (označi »Uppercase output«, če tvoj ciljni sistem pričakuje velike črke).
  4. Klikni »Copy« ob razpršilni vrednosti, ki jo potrebuješ.

Primer

Vnos

hello

Rezultat

MD5:    5d41402abc4b2a76b9719d911017c592
SHA-1:  aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

Razpršilne vrednosti so deterministične: »hello« ustvari te natančne vrednosti v vsakem orodju, vsakič.

Potrebuješ samo en algoritem?

Če že veš, kateri algoritem potrebuješ, in ne želiš, da ti drugi zasedajo stran, so naša namenska orodja z enim algoritmom hitrejša za pregledovanje.

Generator MD5 · SHA-256 Šifriranje / Dešifriranje

Primerjava petih algoritmov

Vseh pet je enosmernih razpršilnih funkcij, razlikujejo pa se po dolžini izpisa in varnostni moči.

AlgoritemVelikost izpisaVarnostni statusTipična uporaba
MD5128-bitni (32 šestn. znakov)Zlomljen — trke je mogoče izdelatiKontrolne vsote, predpomnilniški ključi, odstranjevanje podvojitev
SHA-1160-bitni (40 šestn. znakov)Zlomljen — praktični napadi s trki obstajajo od 2017Samo združljivost s starejšimi sistemi
SHA-256256-bitni (64 šestn. znakov)Varen, trenutni panožni standardDigitalni podpisi, TLS, blockchain, preverjanje celovitosti
SHA-384384-bitni (96 šestn. znakov)Varen, daljši izpis kot SHA-256Podpisi z visoko stopnjo zaupanja, nekatere nastavitve TLS/PKI
SHA-512512-bitni (128 šestn. znakov)Varen, tu največji izpisAplikacije, ki zahtevajo največjo dolžino povzetka

Pogosti primeri uporabe

  • Preverjanje, da se prenesena datoteka ujema z objavljeno kontrolno vsoto založnika, preden jo zaženeš.
  • Ustvarjanje determinističnih predpomnilniških ključev ali identifikatorjev iz poljubnega besedila.
  • Preverjanje, ali sta dva dokumenta ali zapisa bajtno identična, brez neposredne primerjave.
  • Ustvarjanje močnejšega povzetka (SHA-384/SHA-512), kadar to posebej zahteva aplikacija.

Pogosta vprašanja

Ali lahko razpršilno vrednost dešifriram nazaj v izvirno besedilo?

Ne. Razpršanje je zasnovano kot enosmeren postopek — ni ključa in ni matematične operacije, ki bi povzetek obrnila nazaj v vnos. Strani, ki trdijo, da »dešifrirajo MD5« ali »dešifrirajo SHA-256«, v resnici iščejo po ogromni vnaprej izračunani tabeli pogostih vnosov in njihovih razpršilnih vrednosti. Če je bilo tvoje izvirno besedilo dovolj nenavadno, da ga ni v tej tabeli, ga preprosto ni mogoče obnoviti, nikomur.

Kako potem strani preverijo moje geslo, ne da bi ga shranile v navadnem besedilu?

Shranijo razpršilno vrednost tvojega gesla, ne gesla samega. Ko se prijaviš, razpršijo, kar si vtipkal, in primerjajo obe razpršilni vrednosti. Če se ujemata, sta se ujemali tudi gesli — ne da bi stran kdaj morala shraniti ali »dešifrirati« tvoje dejansko geslo.

Kateri algoritem naj uporabim?

Za namene, kjer je varnost pomembna (podpisi, potrdila, preverjanje prenosov), uporabi SHA-256 ali višje — MD5 in SHA-1 sta oba kriptografsko zlomljena in jima za varnost ne gre zaupati. Za nevarnostne namene, kot so vsote, predpomnilniški ključi ali odstranjevanje podvojenih vsebin, je MD5 še vedno v redu in hitrejši za izračun.

Zakaj dobim drugačno razpršilno vrednost kot drugo orodje za isto besedilo?

Po navadi zaradi nevidne razlike: presledek na koncu, drugačni konci vrstic (\r\n proti \n) ali drugačno kodiranje besedila. Bajtno identičen vnos vedno ustvari identično razpršilno vrednost v vsaki pravilni implementaciji.

Ali se moje besedilo pošlje na strežnik?

Ne. MD5 se izračuna z JavaScriptom, ki teče v tvojem brskalniku, SHA-1/SHA-256/SHA-384/SHA-512 pa uporabljajo vgrajeni Web Crypto API tvojega brskalnika. Nič ne zapusti tvoje naprave.

Katero razpršilno vrednost naj dejansko uporabim?

Če je od nje odvisno karkoli, povezano z varnostjo — preverjanje celovitosti datoteke, podpisi, uporabe blizu gesel — izberi SHA-256: to je standard NIST FIPS 180-4 in tisto, v čemer večina programske opreme distribuira kontrolne vsote. MD5 in SHA-1 sta sprejemljiva le za nevarnostne namene, kot so predpomnilniški ključi, odstranjevanje podvojenih vsebin ali ujemanje s starejšim sistemom, ki ju zahteva.

Sorodna orodja