CRC-32 Хэш кодын тооцоолуур
Нийтэлсэн: 2025 оны гуравдугаар сарын 19 20:50:19 (UTC)
Текст оруулах эсвэл файл байршуулах зэрэгт үндэслэн хэш кодыг тооцоолохын тулд CRC-32 (Циклийн илүүдэл шалгах 32 бит) хэш функцийг ашигладаг хэш кодын тооцоолуур.CRC-32 Hash Code Calculator
Cyclic Redundancy Check (CRC) нь түүхий өгөгдлийн санамсаргүй өөрчлөлтийг илрүүлэхэд түгээмэл хэрэглэгддэг алдаа илрүүлэх код юм. Техникийн хувьд криптограф хэш функц биш ч гэсэн CRC-32 нь хувьсах урттай оролтоос тогтмол хэмжээтэй гаралт (32 бит) гаргах чадвартай тул ихэвчлэн хэш гэж нэрлэдэг.
Бүрэн тодруулга: Би энэ хуудсанд ашигласан хэш функцийн тодорхой хэрэгжилтийг бичээгүй. Энэ нь PHP програмчлалын хэлэнд багтсан стандарт функц юм. Би зөвхөн вэб интерфэйсийг энд олон нийтэд нээлттэй болгох үүднээс хийсэн.
CRC-32 Хэш Алгоритмын Тухай
Би математикч биш ч энэ хэш функцийг энгийн аналогитойгоор тайлбарлахыг оролдъё. Олон криптографийн хэш функцийг бодвол энэ нь онцгой төвөгтэй алгоритм биш бөгөөд магадгүй сайн байх болно ;-)
Танд захидал илгээж байгаад, тэр нь хүлээн авагчид очихоос өмнө гэмтэж болзошгүй талаар санаа зовж байна гэж төсөөлөөд үзье. Захидлын агуулгаас үндэслэн та CRC-32 хяналтын утгыг тооцоолж, тэр утгаа хавтас дээр бичнэ. Хүлээн авагч захидлыг хүлээж авмагцаа хяналтын утгыг тооцоолж, таны бичсэнтэй таарч байгаа эсэхийг шалгаж чадна. Хэрэв тохирох бол захидал замдаа гэмтээгүй эсвэл өөрчлөгдөөгүй байна.
CRC-32 иймэрхүү байдлаар ажилладаг: дөрвөн үе шаттай процесс:
1-р Алхам: Бага зэрэг Нэмэлт Орон (Padding)
- CRC мэдээний төгсгөлд бага зэрэг нэмэлт орон (багцны хийлүүд шиг) нэмж өгдөг.
- Энэ нь алдааг илрүүлэхэд хялбар болгодог.
2-р Алхам: Шидэт Хэмжүүр (Полиномиал)
- CRC-32 нь өгөгдлийг хэмжихэд тусгай "шидэт хэмжүүр" ашигладаг.
- Энэ хэмжүүрийг овоо болон завсрын загвараар төсөөлөөд үзье (энэ нь полиномиал, гэхдээ энэ үгийг санаа зовох хэрэггүй).
- CRC-32-ийн хамгийн түгээмэл "хэмжүүр" бол тогтсон загвар байдаг.
3-р Алхам: Хэмжүүрийг Слайдлах (Хуваах Процесс)
- Одоо CRC хэмжүүрийг захидлын дагуу слайдлаж байна.
- Тус бүрийн байрлалд энэ нь овоо болон завсрын загварууд нь тохирч байна уу гэдгийг шалгана.
- Хэрэв тохирохгүй бол, CRC тэмдэглэл хөтөлнө (энэ нь энгийн XOR ашиглан хийгдэнэ, жишээ нь унтраалга асаах эсвэл унтраахтай адил).
- Тэрээр слайдлах болон унтраалгыг асааж унтрааж байгаад төгсгөлд нь хүрнэ.
4-р Алхам: Эцсийн Үр Дүн (Хяналтын Утга)
- Бүхэлдээ хэмжүүрийг слайдлаад дуусахад, та анхны өгөгдлийг илэрхийлэх жижиг тоо (32 бит урттай) үлддэг.
- Энэ тоо нь захидлын онцгой хурууны хээтэй төстэй юм.
- Энэ бол CRC-32 хяналтын утга юм.
Хуудас дээр үзүүлсэн хувилбар нь анхны CRC-32 функц бөгөөд энэ нь бусад системүүдтэй хамгийн сайн нийцдэг байх хэрэгтэй.
Би бусад хувилбаруудынх нь тооцоологчдыг бас санал болгож байна: