SHA-1 maišos kodo skaičiuoklė
Paskelbta: 2025 m. vasario 16 d. 23:22:57 UTC
Maišos kodo skaičiuotuvas, kuris naudoja 1 saugaus maišos algoritmo (SHA-1) maišos funkciją, kad apskaičiuotų maišos kodą pagal teksto įvestį arba failo įkėlimą.SHA-1 Hash Code Calculator
SHA-1 (Secure Hash Algorithm 1) yra kriptografinė maišos funkcija, sukurta NSA ir paskelbta NIST 1995 m. Ji sukuria 160 bitų (20 baitų) maišos reikšmę, paprastai vaizduojama kaip 40 simbolių šešioliktainė eilutė. SHA-1 buvo plačiai naudojamas duomenų vientisumui, skaitmeniniams parašams ir sertifikatams apsaugoti, tačiau dabar jis laikomas nesaugiu dėl susidūrimo atakų pažeidžiamumo. Jis įtrauktas čia, jei reikia apskaičiuoti maišos kodą, kuris turi būti suderinamas su senesne sistema, tačiau jis neturėtų būti naudojamas kuriant naujas sistemas.
Visiškai atskleidžiu informaciją: šiame puslapyje naudojamos hash funkcijos konkrečios realizacijos nerašiau. Tai standartinė PHP programavimo kalbos funkcija. Aš tik sukūriau žiniatinklio sąsają, kad patogumo dėlei ji būtų viešai prieinama.
Apie SHA-1 maišos algoritmą
Nesu matematikas, todėl pabandysiu paaiškinti šią maišos funkciją taip, kad ją suprastų kiti ne matematikai – jei norite tikslios mokslinės matematinės paaiškinimo versijos, tai rasite daugybėje kitų svetainių ;-)
Pagalvokite apie SHA-1 kaip apie specialų popieriaus smulkintuvą, kuris priima bet kokį pranešimą – ar tai būtų vienas žodis, sakinys ar visa knyga – ir susmulkina ją labai specifiniu būdu. Tačiau užuot tiesiog susmulkinęs, jis stebuklingai išspjauna unikalų „smulkinimo kodą“, kuris visada yra lygiai 40 šešioliktainių simbolių.
- Pavyzdžiui, jūs įdėjote "Labas"
- Gaunate 40 šešioliktainių skaitmenų, pvz., f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
Nesvarbu, kuo jį maitinate – trumpą ar ilgą – išvestis visada yra tokio pat ilgio.
„Stebuklingasis smulkintuvas“ veikia keturiais etapais:
1 veiksmas: paruoškite popierių (pamušalas)
- Prieš smulkindami, turite paruošti popierių. Įsivaizduokite, kad pranešimo pabaigoje pridėsite tuščių tarpų, kad jis puikiai tilptų į smulkintuvo dėklą.
- Tai kaip tada, kai kepate sausainius ir įsitikinate, kad tešla tolygiai užpildo formą.
2 veiksmas: supjaustykite jį į vienodus gabalus (padalykite)
- Smulkintuvas nemėgsta didelių gabalų. Taigi, jis susmulkina jūsų paruoštą pranešimą į mažesnius vienodo dydžio gabalėlius – tarsi didelį pyragą supjaustytumėte tobulomis riekelėmis.
3 veiksmas: slaptas receptas (maišymas ir trynimas)
- Dabar ateina šaunioji dalis! Smulkintuvo viduje kiekviena jūsų pranešimo dalis pereina per maišytuvus ir volelius:
- Maišymas: sumaišoma jūsų žinutė su tam tikrais slaptais ingredientais (įtaisytomis taisyklėmis ir skaičiais).
- Trinti: susmulkina, apverčia ir sukasi dalis ypatingu būdu.
- Sukimas: kai kurios dalys yra susuktos arba apverstos, pavyzdžiui, popieriaus lankstymas į origami.
Kiekvienas veiksmas daro pranešimą dar sudėtingesnį, tačiau labai specifiniu būdu, kuriuo mašina visada seka.
4 veiksmas: galutinis kodas (maišos)
- Po viso maišymo ir maišymo išeina tvarkingas, sumaišytas kodas – tarsi unikalus žinutės piršto atspaudas.
- Net jei pasikeisi tik viena raidė pradiniame pranešime, išvestis bus visiškai kitokia. Tuo jis ypatingas.
Priežastis, kodėl SHA-1 nebereikėtų naudoti, yra ta, kad kai kurie labai protingi žmonės sugalvojo, kaip apgauti smulkintuvą, kad jis sukurtų tą patį kodą dviem skirtingiems pranešimams (tai vadinama susidūrimu ).
Vietoj SHA-1 dabar turime stipresnius, išmanesnius „smulkintuvus“. Rašymo metu mano numatytasis maišos algoritmas daugeliu atvejų yra SHA-256 – ir taip, aš taip pat turiu tam skirtą skaičiuotuvą: SHA-256 maišos kodo skaičiuoklė