CRC-32C Hash kod Kalkulator
Objavio: 19. mart 2025. 20:52:26 UTC
Kalkulator hash koda koji koristi CRC-32C (Cyclic Redundancy Check 32 bit, C varijanta) hash funkciju za izračunavanje hash koda na osnovu unosa teksta ili otpremanja datoteke.CRC-32C Hash Code Calculator
Ciklična redundantna provera (CRC) je kod za otkrivanje grešaka koji se obično koristi za otkrivanje slučajnih promena u sirovim podacima. Iako tehnički nije kriptografska hash funkcija, CRC-32 se često naziva hash zbog svoje sposobnosti da proizvede izlaz fiksne veličine (32 bita) iz ulaza promenljive dužine. Verzija predstavljena na ovoj stranici je CRC-32C varijanta, koja je novija, "pametnija" (bolje otkrivanje grešaka) verzija koja je često hardverski ubrzana na modernim procesorima (preko SSE 4.2).
Potpuno obelodanjivanje: Nisam napisao specifičnu implementaciju hash funkcije koja se koristi na ovoj stranici. To je standardna funkcija uključena u PHP programski jezik. Napravio sam samo veb interfejs da bi bio javno dostupan ovde radi lakšeg snalaženja.
O CRC-32C Haš Algoritmu
Nisam matematičar, ali ću pokušati da objasnim ovu haš funkciju kroz jednostavnu analogiju. Za razliku od mnogih kriptografskih haš funkcija, ovo nije naročito komplikovan algoritam, tako da će verovatno biti u redu ;-)
Zamislite da šaljete pismo poštom, ali se brinete da bi moglo da bude oštećeno pre nego što stigne do primaoca. Na osnovu sadržaja pisma, izračunate CRC-32 kontrolni zbir i napišete ga na koverti. Kada primalac primi pismo, on ili ona mogu da izračunaju kontrolni zbir i vide da li se poklapa sa onim što ste napisali. Ako se poklapa, pismo nije bilo oštećeno ili izmenjeno na putu.
Način na koji CRC-32 to radi je proces od četiri koraka:
Korak 1: Dodavanje Dodatnog Prostora (Padding)
- CRC dodaje malo dodatnog prostora na kraju poruke (kao pakovanje sa stiroporom u kutiji).
- To pomaže da lakše prepozna greške.
Korak 2: Magična Lenjir (Polinom)
- CRC-32 koristi posebnu "magičnu lenjir" za merenje podataka.
- Zamislite ovu lenjir kao obrazac udaraca i utora (ovo je polinom, ali ne brinite o toj reči).
- Najčešći "lenjir" za CRC-32 je fiksni obrazac.
Korak 3: Klizanje Lenjira (Proces Deličenja)
- Sada CRC klizi lenjir preko poruke.
- Na svakom mestu, proverava da li se udarci i utori poklapaju.
- Ako se ne poklapaju, CRC pravi belešku (ovo se radi korišćenjem jednostavnog XOR, kao uključivanje ili isključivanje prekidača).
- On nastavlja da klizi i uključuje ili isključuje prekidače dok ne stigne do kraja.
Korak 4: Konačan Rezultat (Kontrolni Zbir)
- Posle klizanja lenjira kroz celu poruku, ostaje vam mali broj (dolg 32 bita) koji predstavlja originalne podatke.
- Ovaj broj je kao jedinstveni otisak prsta za poruku.
- Ovo je CRC-32 kontrolni zbir.
Verzija predstavljena na stranici je CRC-32C varijanta, koja bi trebalo da bude preferirana varijanta, naročito ako koristite CPU koji ima hardversko ubrzanje (SSE 4.2 i noviji) i ne morate imati kompatibilnost sa drugim varijantama.
Imam i kalkulatore za druge varijante: