MurmurHash3A Хэш кодын тооцоолуур
Нийтэлсэн: 2025 оны гуравдугаар сарын 19 20:59:44 (UTC)
Текст оруулах эсвэл файл байршуулахад үндэслэн хэш кодыг тооцоолохын тулд MurmurHash3A хэш функцийг ашигладаг хэш кодын тооцоолуур.MurmurHash3A Hash Code Calculator
MurmurHash3 нь 2008 онд Austin Appleby-ийн бүтээсэн криптографийн бус хэш функцийг юм. Энэ нь хурд, энгийн байдал, сайн тархалтын шинж чанаруудтай учраас ерөнхий зориулалтын хэшлэлтийг өргөн ашигладаг. MurmurHash функцууд нь хэш суурьтай өгөгдлийн бүтэцүүдэд, тухайлбал хэш хүснэгтүүд, bloom фильтрүүд болон өгөгдөл давхардлыг арилгах системүүдэд онцгой үр дүнтэй байдаг.
Энэхүү хуудас дээр танилцуулсан хувилбар нь 3A хувилбар бөгөөд 32 битийн системүүдэд зориулан оновчтой болсон. Энэ нь 32 бит (4 байт) хэш кодыг гаргадаг бөгөөд, ерөнхийдөө 8 оронтой аравтын тоо хэлбэрээр илэрхийлэгддэг.
Бүрэн тодруулга: Би энэ хуудсанд ашигласан хэш функцийн тодорхой хэрэгжилтийг бичээгүй. Энэ нь PHP програмчлалын хэлэнд багтсан стандарт функц юм. Би зөвхөн вэб интерфэйсийг энд олон нийтэд нээлттэй болгох үүднээс хийсэн.
MurmurHash3A Хэш Алгоритмтай Танилцах
Би математикч биш ч, энэ хэш функцыг өөрийнхөө ойлгохуйц жишээгээр тайлбарлахыг хичээе. Хэрвээ та шинжлэх ухааны талаас нь зөв, бүрэн математик тайлбар хүсэж байгаа бол, би итгэлтэй байгаа ч түүнийг хаа нэгтээ олох болно ;-)
Одоо, төсөөлөөд үз дээ, танд том хайрцаг LEGO блокууд байна гэж. Та эдгээрийг тодорхой байдлаар байрлуулан зураг авдаг. Хамаагүй хэр том эсвэл өнгөлөг байлаа ч гэсэн, камертай зураг нь үргэлж жижиг, тогтмол хэмжээтэй зураг өгдөг. Энэ зураг нь таны LEGO бүтээлээр харуулж байгаа боловч, хурдан, компакт хэлбэрээр.
MurmurHash3 өгөгдөлтэй адилхан зүйл хийдэг. Энэ нь ямар ч төрлийн өгөгдлийг (текст, тоо, файлууд) авч, жижиг, тогтмол "хурууны хээ" буюу хэш утгад багтаадаг. Энэ хурууны хээ нь компьютеруудыг өгөгдлийг хурдан таньж, ангилж, харьцуулж хийхэд тусалдаг бөгөөд бүхэл өгөгдлийг харах шаардлагагүй.
Өөр нэг жишээ бол болтор торт хийх явдал бөгөөд MurmurHash3 нь энэ тортыг жижиг кекс (хэш) болгон хувиргах жор юм. Энэ нь гурван үе шаттай үйл явц юм:
1-р Алхам: Хэсэгт Таслах (Өгөгдлийг Таслах)
- Эхлээд, MurmurHash3 таны өгөгдлийг тэгш хэсгүүдэд хувааж, тортыг тэгш квадратаар хуваах шиг.
2-р Алхам: Туузлах (Хэсгүүдийг Холих)
- Тухайн хэсэг бүрийг галзуурсан холих үйл явцад оруулдаг:
- Өргөх: Панкейк өргөх шиг, битүүдийг өөрчлөх.
- Тамирдах: Санамсаргүй орц (математик үйлдлүүд) нэмэх, юуг ч эргэлдүүлэх.
- Намсах: Өгөгдлийг хамт шахаж, анхны хэсэг нь ялгаатай байхгүй гэдгийг баталгаажуулах.
3-р Алхам: Төгс Смак Шалгах (Төгсгөл Шат)
- Бүх хэсгүүдийг холихын дараа, MurmurHash3 үүнийг нэг сүүлчийн холих үйлдэл хийж, анхны өгөгдөлд хамгийн жижиг өөрчлөлт нь ч амт (хэш)-ийг бүрэн өөрчилдөг гэдгийг баталгаажуулдаг.