CodeKitHub
Generatorių įrankiai

Kelių algoritmų maišos generatorius — palyginimas greta vieną kito

Paskutinį kartą atnaujinta:

Įveskite ar įklijuokite bet kokį tekstą ir akimirksniu gaukite jo MD5, SHA-1, SHA-256, SHA-384 ir SHA-512 maišos kodus greta vieną kito — nereikia naudoti penkių atskirų įrankių. Jei jums reikia tik vieno konkretaus algoritmo, mūsų specializuoti MD5 ar SHA-256 įrankiai (nuorodos žemiau) peržiūrimi greičiau. Viskas apskaičiuojama vietoje jūsų naršyklėje; jūsų tekstas niekada niekur nesiunčiamas. Iš karto pastebėtina: maišymas yra vienpusis procesas, todėl nė vienas iš šių kodų negali būti „iššifruotas“ atgal į pradinį tekstą — kodėl, paaiškinta DUK skyriuje žemiau.

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

Kas yra šis įrankis?

Maišos funkcija paima bet kokią įvestį ir paverčia ją fiksuoto ilgio šešioliktainių simbolių eilute, vadinama santrauka (angl. digest). Ta pati įvestis visada duoda tą pačią santrauką, o pakeitus nors vieną simbolį, rezultatas visiškai skiriasi. Šis įrankis tai pačiai įvesčiai vykdo penkis plačiai naudojamus algoritmus — MD5, SHA-1, SHA-256, SHA-384 ir SHA-512, kad galėtumėte juos palyginti ar pasiimti reikiamą.

Šios santraukos yra vienpusės: matematiškai neįmanoma atkurti pradinio teksto iš maišos kodo. Tai, ką žmonės vadina maišos kodo „iššifravimu“ internete, iš tikrųjų yra paieška — svetainė tiesiog tikrina, ar jūsų maišos kodas sutampa su vienu iš milijardų iš anksto apskaičiuotų dažniausiai naudojamų slaptažodžių ir frazių maišos kodų. Jei jūsų įvestis nėra jų lentelėje, ji tiesiog negali būti rasta, nes nėra jokios atvirkštinės funkcijos, kurią būtų galima pritaikyti.

SHA-2 šeimą (SHA-256, SHA-384, SHA-512) standartizavo NIST dokumente FIPS 180-4, ir ji lieka nesulaužyta. MD5 ir SHA-1 istorija kitokia: praktinės kolizijų atakos prieš MD5 pademonstruotos 2004 m., o prieš SHA-1 — 2017 m. („SHAttered“ ataka), todėl abu laikomi kriptografiškai sulaužytais.

Kodėl jį naudoti?

  • Vienu metu apskaičiuoja penkis maišos algoritmus, nereikia keisti įrankių.
  • Palyginkite MD5, SHA-1 ar SHA-256 kontrolinę sumą su paskelbta reikšme, kad patikrintumėte vientisumą.
  • Sugeneruokite stipresnes SHA-384 ar SHA-512 santraukas programoms, kurioms reikia ilgesnės išvesties.
  • Kurkite deterministinius ID ar podėlio raktus iš bet kokio teksto.
  • 100 % vietinis apdorojimas: jūsų įvestis niekada nepalieka naršyklės, todėl tinka jautriam tekstui.

Kaip naudoti

  1. Įveskite arba įklijuokite tekstą į įvesties langelį.
  2. Spustelėkite „Generuoti“.
  3. Peržiūrėkite MD5, SHA-1, SHA-256, SHA-384 ir SHA-512 rezultatus (pažymėkite „Didžiosios raidės“, jei jūsų sistema tikisi didžiųjų raidžių).
  4. Spustelėkite „Kopijuoti“ prie reikiamo maišos kodo.

Pavyzdys

Įvestis

hello

Išvestis

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

Maišos kodai yra deterministiniai: „hello“ kiekviename įrankyje ir kiekvieną kartą duoda tas pačias reikšmes.

Reikia tik vieno algoritmo?

Jei jau žinote, kurio algoritmo jums reikia, ir nenorite, kad kiti užimtų vietą puslapyje, mūsų specializuoti vieno algoritmo įrankiai peržiūrimi greičiau.

MD5 generatorius · SHA-256 šifravimas / iššifravimas

Penkių algoritmų palyginimas

Visos penkios yra vienpusės maišos funkcijos, tačiau jos skiriasi išvesties ilgiu ir saugumo lygiu.

AlgoritmasIšvesties dydisSaugumo būklėTipinis naudojimas
MD5128 bitai (32 šešioliktainiai simboliai)Sulaužytas — kolizijas galima sukurti dirbtinaiKontrolinės sumos, podėlio raktai, dublikatų aptikimas
SHA-1160 bitų (40 šešioliktainių simbolių)Sulaužytas — praktinės kolizijų atakos žinomos nuo 2017 m.Tik suderinamumui su senesnėmis sistemomis
SHA-256256 bitai (64 šešioliktainiai simboliai)Saugus, dabartinis pramonės standartasSkaitmeniniai parašai, TLS, blokų grandinė, vientisumo patikros
SHA-384384 bitai (96 šešioliktainiai simboliai)Saugus, ilgesnė išvestis nei SHA-256Aukšto patikimumo parašai, kai kurie TLS/PKI diegimai
SHA-512512 bitų (128 šešioliktainiai simboliai)Saugus, čia didžiausia išvestisProgramoms, kurioms reikia maksimalaus santraukos ilgio

Įprasti naudojimo atvejai

  • Patikrinimas, ar atsisiųstas failas atitinka leidėjo paskelbtą kontrolinę sumą prieš jį paleidžiant.
  • Deterministinių podėlio raktų ar ID generavimas iš bet kokio teksto.
  • Patikrinimas, ar du dokumentai ar įrašai yra identiški baitas į baitą, jų tiesiogiai nelyginant.
  • Stipresnės santraukos (SHA-384/SHA-512) generavimas, kai to konkrečiai reikalauja programa.

Dažniausiai užduodami klausimai

Ar galiu iššifruoti maišos kodą atgal į pradinį tekstą?

Ne. Maišymas sukurtas kaip vienpusis procesas — nėra jokio rakto ir jokios matematinės operacijos, kuri paverstų santrauką atgal į jos įvestį. Svetainės, kurios teigia „iššifruojančios MD5“ ar „iššifruojančios SHA-256“, iš tikrųjų tiesiog ieško milžiniškoje iš anksto apskaičiuotoje dažniausių įvesčių ir jų maišos kodų lentelėje. Jei jūsų pradinis tekstas buvo pakankamai neįprastas, kad jo nebūtų toje lentelėje, jo tiesiog negalima atkurti — niekam.

Tai kaip svetainės patikrina mano slaptažodį, jo nesaugodamos paprastu tekstu?

Jos saugo jūsų slaptažodžio maišos kodą, o ne patį slaptažodį. Kai prisijungiate, jos sumaišo tai, ką įvedėte, ir palygina abu maišos kodus. Jei jie sutampa, sutampa ir slaptažodžiai — svetainei niekada nereikia saugoti ar „iššifruoti“ jūsų tikrojo slaptažodžio.

Kurį algoritmą turėčiau naudoti?

Su saugumu susijusiais tikslais (parašams, sertifikatams, atsisiuntimų tikrinimui) naudokite SHA-256 ar aukštesnį — MD5 ir SHA-1 abu yra kriptografiškai sulaužyti ir jais nereikėtų pasitikėti saugumo klausimais. Ne saugumo tikslams, pvz., kontrolinėms sumoms, podėlio raktams ar dublikatų aptikimui, MD5 vis dar tinka ir greičiau apskaičiuojamas.

Kodėl gaunu kitokį maišos kodą nei kitame įrankyje tam pačiam tekstui?

Dažniausiai dėl nematomo skirtumo: naujos eilutės ar tarpo pabaigoje, skirtingų eilučių pabaigos simbolių (\r\n vs \n) arba skirtingo teksto koduotės. Baitas į baitą identiška įvestis visada duoda identišką maišos kodą su bet kuria teisinga realizacija.

Ar mano tekstas siunčiamas į serverį?

Ne. MD5 apskaičiuojamas su jūsų naršyklėje veikiančiu JavaScript, o SHA-1/SHA-256/SHA-384/SHA-512 naudoja jūsų naršyklės integruotą Web Crypto API. Niekas nepalieka jūsų įrenginio.

Kurį maišos kodą man tikrai naudoti?

Jei nuo to priklauso kažkas susijusio su saugumu — failo vientisumo patikra, parašai, su slaptažodžiais susiję naudojimo atvejai — rinkitės SHA-256: tai NIST FIPS 180-4 standartas, kuriuo dauguma programinės įrangos platina kontrolines sumas. MD5 ir SHA-1 priimtini tik ne saugumo tikslams, pvz., podėlio raktams, dublikatų aptikimui ar suderinamumui su senesne sistema, kuriai jų reikia.

Susiję įrankiai