Kaj je to orodje?
SHA-256 (Secure Hash Algorithm 256-bit) poljuben vnos spremeni v fiksen 64-znakovni šestnajstiški prstni odtis. Enak vnos vedno ustvari enako zgoščeno vrednost, in celo sprememba enega znaka ustvari popolnoma drugačen rezultat. Je del družine SHA-2, ki jo je objavila NSA in leta 2001 standardiziral NIST.
Za razliko od MD5 in SHA-1 SHA-256 nima znanih praktičnih napadov na kolizijo ali predsliko in ostaja trenutni varnostni standard. Stoji za TLS certifikati, Bitcoinom in drugimi verigami blokov, podpisovanjem kode ter shemami za zgoščevanje gesel (običajno v kombinaciji s počasno funkcijo za izpeljavo ključev).
"Dešifriranje" zgoščene vrednosti SHA-256 — izračun izvirnega vnosa zgolj iz zgoščene vrednosti — je po zasnovi računsko neizvedljivo: obstaja 2^256 možnih izpisov, funkcija pa namerno zavrže informacije, tako da je ni mogoče izvesti nazaj. Tako imenovana spletna mesta za "dešifriranje SHA-256" delujejo tako, da iščejo zgoščene vrednosti v ogromnih vnaprej izračunanih tabelah pogostih vnosov (besede iz slovarja, pogosta gesla) — algoritma dejansko ne obrnejo, edinstveni ali naključni vnosi pa preprosto ne bodo najdeni.
Zakaj ga uporabiti?
- Ustvari SHA-256 zgoščeno vrednost, da preveriš, ali datoteka ali niz nista bila spremenjena.
- Preveri, ali se geslo ali datoteka ujemata z znano SHA-256 kontrolno vsoto, ne da bi razkril izvirno vrednost.
- Ustvari deterministične, proti kolizijam odporne ključe predpomnilnika in kontrolne vsote za celovitost.
- Potrdi SHA-256 prenesene datoteke glede na kontrolno vsoto, ki jo je objavil izdajatelj.
- 100 % lokalno: tvoj vnos nikoli ne zapusti brskalnika.
Kako ga uporabljati
- Vtipkaj ali prilepi svoje besedilo v vnosno polje.
- Klikni "Ustvari zgoščeno vrednost".
- Preberi 64-znakovni rezultat SHA-256 (obkljukaj "Izpis z velikimi črkami", če tvoj sistem pričakuje velike črke).
- Klikni "Kopiraj", da kopiraš zgoščeno vrednost, ali jo neposredno primerjaj z znano vrednostjo za preverjanje ujemanja.
Primer
Vnos
helloRezultat
SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824Zgoščevanje je deterministično: "hello" ustvari natanko to 64-znakovno vrednost na vsakem orodju, vsakič.
Zakaj je "dešifriraj" napačna beseda za SHA-256
Šifriranje in zgoščevanje se pogosto zamenjujeta, a rešujeta različne probleme. Šifriranje je po zasnovi obrnljivo — s pravim ključem se šifrirano besedilo spremeni nazaj v navadno. Zgoščevanje je namerno enosmerno: SHA-256 vnos poljubne velikosti stisne na fiksen 256-bitni prstni odtis, pri tem pa zavrže informacije, zato ne obstaja ključ, ki bi ga obrnil. To je natanko lastnost, zaradi katere je uporaben za preverjanje celovitosti in digitalne podpise — če bi ga bilo mogoče obrniti, mu ne bi mogli zaupati.
Kaj dejansko potrebujejo ljudje, ki iščejo "dekodiraj SHA-256"
- Ustvariti zgoščeno vrednost iz znanega vnosa, za objavo kot kontrolno vsoto ali kasnejšo primerjavo — to neposredno pokriva to orodje.
- Preveriti, ali se kandidatna vrednost zgosti v znani SHA-256 izpis, npr. potrditev ugibanja gesla ali da datoteka ni bila spremenjena — zgosti kandidata in primerjaj nize.
- Preveriti, ali se zgoščena vrednost ujema s pogostim, že znanim vnosom (kot je beseda iz slovarja) prek storitve iskanja v mavrični tabeli — to ni dešifriranje, temveč zgolj obraten indeks že zgoščenih pogostih vrednosti, ki odpove pri vsakem edinstvenem ali dovolj naključnem vnosu.
- Potrditi, da se prenesena datoteka ujema s SHA-256 kontrolno vsoto, ki jo je objavil njen vir, za odkrivanje poškodb ali sprememb.
SHA-256 v resničnem svetu
SHA-256 zavaruje rokovanje TLS/SSL za ikono ključavnice v tvojem brskalniku in preverja, da certifikati niso bili spremenjeni. Je algoritem zgoščevanja za Bitcoinovo dokazovanje z delom (proof-of-work) in povezovanje blokov, uporablja pa se tudi za podpisovanje programskih paketov in slik vsebnikov, tako da je prenos mogoče preveriti glede na kontrolno vsoto izdajatelja. Njegov 256-bitni izhodni prostor (2^256 možnih vrednosti) naredi naključne ali namerne kolizije astronomsko malo verjetne s trenutno in predvidljivo prihodnjo računsko močjo, zaradi česar ostaja privzeta izbira, ko MD5 ali SHA-1 ne bi bila več sprejemljiva.
Potrebuješ primerjati več algoritmov hkrati?
Če želiš videti MD5, SHA-1, SHA-256, SHA-384 in SHA-512 istega besedila drug ob drugem namesto enega za drugim, uporabi naše orodje za primerjavo več algoritmov.
Pogosta vprašanja
Ali lahko SHA-256 zgoščeno vrednost dešifriram nazaj v izvirno besedilo?
Ne — SHA-256 je po zasnovi enosmerna funkcija; izvirnega vnosa ni mogoče matematično izračunati iz zgoščene vrednosti. Spletna orodja za "dešifriranje SHA-256" zgoščene vrednosti zgolj poiščejo v ogromnih vnaprej izračunanih tabelah pogostih vnosov, zato edinstvenega ali naključnega besedila na ta način nikoli ni mogoče obrniti nazaj.
Če je ne morem dešifrirati, kako "dekodiram" SHA-256 zgoščeno vrednost?
Večina ljudi, ki to iščejo, dejansko želi eno od treh stvari: ustvariti zgoščeno vrednost iz besedila (uporabi to orodje), preveriti, ali del besedila ustvari določeno znano zgoščeno vrednost (zgostiti in primerjati), ali preveriti celovitost datoteke glede na objavljeno kontrolno vsoto. Vse tri je mogoče narediti tukaj — nobena ne zahteva obračanja zgoščene vrednosti.
Je SHA-256 varen za shranjevanje gesel?
Sam SHA-256 ni idealen — je hiter, kar omogoča poceni grobo silo pri šibkih geslih na sodobni strojni opremi. Za gesla uporabi počasno funkcijo za izpeljavo ključev, kot je bcrypt, scrypt ali Argon2, idealno s SHA-256 kot eno od sestavin, ne kot celotno shemo.
Zakaj isto besedilo na drugem orodju da drugačno zgoščeno vrednost?
Običajno gre za nevidne razlike: zaključna nova vrstica ali presledek, drugačni konci vrstic (\r\n proti \n) ali drugačno kodiranje besedila. Bajtno enak vnos vedno ustvari identično SHA-256 zgoščeno vrednost.
Je SHA-256 pokvarjen tako kot MD5 ali SHA-1?
Ne. MD5 (128-bitni) in SHA-1 (160-bitni) imata oba praktične napade na kolizijo in veljata za pokvarjena za varnostno rabo. SHA-256 (256-bitni) nima znanega praktičnega napada in ostaja trenutni standard za TLS, verige blokov in digitalne podpise.
Ali se moje besedilo pošlje na strežnik za zgoščevanje?
Ne. SHA-256 se izračuna v celoti z vgrajenim Web Crypto API tvojega brskalnika — vse ostane na tvoji napravi in se nikoli ne prenaša.