Miklix

CRC-32B Hash Code Calculator

Nai-publish: Marso 19, 2025 nang 8:50:39 PM UTC

Hash code calculator na gumagamit ng CRC-32B (Cyclic Redundancy Check 32 bit, B variant) hash function upang kalkulahin ang isang hash code batay sa text input o pag-upload ng file.

Ang pahinang ito ay isinalin sa makina mula sa Ingles upang gawin itong naa-access sa pinakamaraming tao hangga't maaari. Sa kasamaang palad, ang pagsasalin ng makina ay hindi pa isang perpektong teknolohiya, kaya maaaring mangyari ang mga error. Kung gusto mo, maaari mong tingnan ang orihinal na bersyong Ingles dito:

CRC-32B Hash Code Calculator

Ang Cyclic Redundancy Check (CRC) ay isang error-detecting code na karaniwang ginagamit upang makita ang mga hindi sinasadyang pagbabago sa raw data. Bagama't hindi teknikal na isang cryptographic na hash function, ang CRC-32 ay madalas na tinutukoy bilang isang hash dahil sa kakayahang gumawa ng fixed-size na output (32 bits) mula sa variable-length na input. Ang bersyon na ipinakita sa pahinang ito ay ang variant ng CRC-32B, na talagang isang quirk lamang sa wikang PHP na nagpapaikot-ikot sa paligid (little-endian vs big-endian sa orihinal na CRC-32).

Buong pagsisiwalat: Hindi ko isinulat ang partikular na pagpapatupad ng hash function na ginamit sa pahinang ito. Ito ay isang karaniwang function na kasama sa PHP programming language. Ginawa ko lang ang web interface para gawin itong available sa publiko dito para sa kaginhawahan.


Kalkulahin ang Bagong Hash Code

Ang data na isinumite o mga file na na-upload sa pamamagitan ng form na ito ay itatago lamang sa server hangga't kinakailangan upang mabuo ang hiniling na hash code. Matatanggal ito kaagad bago maibalik ang resulta sa iyong browser.

Input na data:



Ang isinumiteng text ay UTF-8 na naka-encode. Dahil gumagana ang mga hash function sa binary data, magiging iba ang resulta kaysa kung nasa ibang encoding ang text. Kung kailangan mong kalkulahin ang isang hash ng isang text sa isang partikular na encoding, dapat kang mag-upload ng file sa halip.



Tungkol sa CRC-32B Hash Algorithm

Hindi ako isang mathematician, ngunit susubukan kong ipaliwanag ang hash function na ito gamit ang isang simpleng analohiya. Hindi tulad ng maraming cryptographic hash functions, hindi ito isang komplikadong algorithm, kaya't malamang ay okay lang ito ;-)

Isipin mong nagpapadala ka ng isang liham sa koreo, ngunit nag-aalala kang baka masira ito bago ito makarating sa tatanggap. Batay sa nilalaman ng liham, kinakalkula mo ang isang CRC-32 checksum at isinusuulat ito sa sobre. Kapag natanggap ng tatanggap ang liham, maaari rin niyang kalkulahin ang checksum at tingnan kung ito ay tumutugma sa isinulat mo. Kung tumutugma, ibig sabihin hindi nasira o nabago ang liham sa daan.

Ang paraan ng CRC-32 ay isang apat na hakbang na proseso:

Hakbang 1: Magdagdag ng Kaunting Espasyo (Padding)

  • Nagdaragdag ang CRC ng kaunting ekstra na espasyo sa dulo ng mensahe (parang packing peanuts sa isang kahon).
  • Nakakatulong ito para madali nitong makita ang mga pagkakamali.

Hakbang 2: Ang Magic Ruler (Ang Polynomial)

  • Gumagamit ang CRC-32 ng isang espesyal na "magic ruler" para sukatin ang data.
    • Isipin mong ang ruler na ito ay parang pattern ng mga bukol at uka (ito ang polynomial, pero huwag mag-alala tungkol sa salitang iyon).
    • Ang pinakakaraniwang "ruler" para sa CRC-32 ay isang nakatakdang pattern.

Hakbang 3: Pag-slide ng Ruler (Division Process)

  • Ngayon, isinuslide ng CRC ang ruler sa buong mensahe.
    • Sa bawat spot, tinitingnan nito kung nakaline up ang mga bukol at uka.
    • Kung hindi sila nagkakasunod, gumagawa ang CRC ng tala (ito ay ginagawa gamit ang simpleng XOR, tulad ng pagpapalit ng mga switch on o off).
    • Patuloy itong nagsuslide at nagpapalit ng mga switch hanggang makarating sa dulo.

Hakbang 4: Ang Huling Resulta (Ang Checksum)

  • Pagkatapos islide ang ruler sa buong mensahe, may natirang maliit na numero (32 bits ang haba) na kumakatawan sa orihinal na data.
    • Ang numerong ito ay parang isang natatanging fingerprint para sa mensahe.
    • Ito ang CRC-32 checksum.

Ang bersyon na ipinapakita sa pahinang ito ay ang CRC-32B variant, na karaniwang isang kakaibang katangian ng PHP na nag-iiba ng order ng mga bits (little-endian vs big-endian). Dapat mo lamang gamitin ang bersyon na ito kung kailangan mo ng partikular na compatibility sa ibang PHP application na gumagamit nito.

Mayroon din akong mga kalkulador para sa iba pang mga variant:

Ibahagi sa BlueskyIbahagi sa FacebookIbahagi sa LinkedInIbahagi sa TumblrIbahagi sa XIbahagi sa LinkedInI-pin sa Pinterest

Mikkel Christensen

Tungkol sa May-akda

Mikkel Christensen
Si Mikkel ang lumikha at may-ari ng miklix.com. Siya ay may higit sa 20 taong karanasan bilang isang propesyonal na computer programmer/software developer at kasalukuyang nagtatrabaho ng full-time para sa isang malaking European IT corporation. Kapag hindi nagba-blog, ginugugol niya ang kanyang bakanteng oras sa isang malawak na hanay ng mga interes, libangan, at aktibidad, na maaaring sa ilang lawak ay makikita sa iba't ibang mga paksang sakop sa website na ito.