Adler-32 Hash-koodilaskin
Julkaistu: 17. helmikuuta 2025 klo 18.01.48 UTC
Viimeksi päivitetty: 12. tammikuuta 2026 klo 9.14.01 UTC
Adler-32 Hash Code Calculator
Adler-32-tiivistefunktio on yksinkertainen, nopea ja usein datan eheyden varmentamiseen käytetty tarkistussumma-algoritmi. Sen suunnitteli Mark Adler, ja sitä käytetään yleisesti sovelluksissa, kuten zlib, datan pakkaamiseen. Toisin kuin kryptografiset tiivistefunktiot (kuten SHA-256), Adler-32 ei ole suunniteltu turvallisuutta, vaan nopeaa virheentarkistusta varten. Se laskee 32-bittisen (4 tavua) tarkistussumman, joka yleensä esitetään 8 heksadesimaalimerkkinä.
Täydellinen paljastus: en ole kirjoittanut tällä sivulla käytetyn hash-funktion toteutusta. Se on PHP-ohjelmointikielen mukana tuleva vakiofunktio. Tein vain web-käyttöliittymän, jotta se olisi julkisesti saatavilla täällä.
Tietoja Adler-32-hajautusalgoritmista
En ole matemaatikko, mutta yritän selittää tätä tiivistefunktiota arkipäivän analogialla, jonka toivon muidenkin kuin matemaatikkojen ymmärtävän. Toisin kuin monet kryptografiset tiivistefunktiot, Adler32 on melko yksinkertainen tarkistussummafunktio, joten tämän ei pitäisi olla liian huono ;-)
Kuvittele, että sinulla on pussi pieniä numeroituja laattoja, joista jokainen edustaa kirjainta tai osaa tiedoistasi. Esimerkiksi sanassa "Hei" on kaksi laattaa: yksi H-kirjaimelle ja yksi i-kirjaimelle.
Nyt teemme näillä laatoilla kaksi yksinkertaista asiaa:
Vaihe 1: Laske ne yhteen (summa A)
- Aloita numerosta 1 (yleensä näin).
- Lisää kunkin laatan numero tähän kokonaismäärään.
Vaihe 2: Pidä kaikkien summien juoksevaa yhteissummaa (Summa B)
- Joka kerta, kun lisäät uuden laatan numeron Sum A:han, lisäät myös Sum A:n uuden arvon Sum B:hen.
- Se on kuin kolikoiden pinoamista: lisäät yhden kolikon päälle (Summa A) ja sitten kirjoitat muistiin uuden pinon kokonaiskorkeuden (Summa B).
Lopuksi liimataan kaksi kokonaissummaa yhteen yhdeksi suureksi luvuksi. Tämä suuri luku on Adler-32-tarkistussumma.
Lisälukemista
Jos pidit tästä postauksesta, saatat pitää myös näistä ehdotuksista:
