SHA-1 maišos kodo skaičiuoklė
Paskelbta: 2025 m. vasario 16 d. 23:22:57 UTC
Paskutinį kartą atnaujinta: 2026 m. sausio 12 d. 09:09:39 UTC
SHA-1 Hash Code Calculator
SHA-1 (angl. Secure Hash Algorithm 1) yra NSA sukurta ir NIST 1995 m. paskelbta kriptografinė maišos funkcija. Ji sukuria 160 bitų (20 baitų) maišos reikšmę, dažniausiai pateikiamą 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 pažeidžiamumo susidūrimų atakoms. Jis įtrauktas čia tuo atveju, jei reikia apskaičiuoti maišos kodą, kuris turi būti suderinamas su senesne sistema, tačiau jo nereikėtų naudoti 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ų ir kiti ne matematikai – jei norite tikslios mokslinės matematinės paaiškinimo versijos, ją galite rasti daugybėje kitų svetainių ;-)
Įsivaizduokite SHA-1 kaip specialų dokumentų smulkintuvą, kuris paima bet kokį pranešimą – nesvarbu, ar tai vienas žodis, sakinys, ar visa knyga – ir labai specifiniu būdu jį susmulkina. Tačiau užuot tiesiog susmulkinęs, jis stebuklingai išspaudžia unikalų „smulkinimo kodą“, kuris visada yra lygiai 40 šešioliktainių simbolių ilgio.
- Pavyzdžiui, įvedate „Sveiki“
- Gaunate 40 šešioliktainių skaitmenų, tokių kaip f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
Nesvarbu, kuo jį paduosite – trumpu ar ilgu – rezultatas visada bus tokio paties ilgio.
„Stebuklingas smulkintuvas“ veikia keturiais etapais:
1 veiksmas: paruoškite popierių (paminkštinimą)
- Prieš naikindami, turite paruošti savo popierių. Įsivaizduokite, kad pridedate tuščių tarpų savo laiško pabaigoje, kad jis idealiai tilptų į naikintuvo dėklą.
- Tai tarsi kepant sausainius ir užtikrinant, kad tešla tolygiai užpildytų formą.
2 veiksmas: supjaustykite jį į lygias dalis (padalijimas)
- Naikiklis nemėgsta didelių gabalų. Todėl jis supjausto jūsų paruoštą laišką į mažesnius, vienodo dydžio gabalėlius – tarsi didelį tortą supjaustytų idealiai įstrižai.
Žingsnis: slaptas receptas (maišymas ir košė)
- Dabar ateina šaunioji dalis! Naikintuve kiekviena jūsų žinutės dalis keliauja per maišytuvų ir volelių seriją: Maišymas: Jūsų žinutė maišoma naudojant slaptus ingredientus (įmontuotas taisykles ir skaičius). Minkymas: Dalys specialiu būdu suspaudžiamos, apverčiamos ir sukamos. Sukimas: Kai kurios dalys susukamos arba apverčiamos vietomis, kaip lankstant popierių į origami.
Kiekvienas žingsnis žinutę daro dar painesnę, bet labai specifiniu būdu, kuriuo mašina visada seka.
4 veiksmas: galutinis kodas (maišos kodas)
- Po viso maišymo ir trintimo gaunamas tvarkingas, sumaišytas kodas – tarsi unikalus jūsų žinutės piršto atspaudas.
- Net jei pakeisite tik vieną raidę originalioje žinutėje, rezultatas bus visiškai kitoks. Tuo jis ypatingas.
SHA-1 nebereikėtų naudoti, nes keli 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 ir išmanesnius „smulkintuvus“. Rašymo metu mano numatytasis maišos algoritmas daugumai tikslų yra SHA-256 – ir taip, turiu ir tam skirtą skaičiuotuvą: Nuoroda
Papildoma literatūra
Jei jums patiko šis įrašas, jums taip pat gali patikti šie pasiūlymai:
- Tiger-192/4 maišos kodo skaičiuoklė
- HAVAL-224/3 maišos kodo skaičiuoklė
- GOST CryptoPro maišos kodo skaičiuoklė
