Miklix

MurmurHash3A Хэш кодын тооцоолуур

Нийтэлсэн: 2025 оны гуравдугаар сарын 19 20:59:44 (UTC)

Текст оруулах эсвэл файл байршуулахад үндэслэн хэш кодыг тооцоолохын тулд MurmurHash3A хэш функцийг ашигладаг хэш кодын тооцоолуур.

Энэ хуудсыг аль болох олон хүнд хүртээмжтэй болгох үүднээс англи хэлнээс орчуулсан. Харамсалтай нь машин орчуулга нь төгс төгөлдөр технологи болоогүй байгаа тул алдаа гарч болзошгүй. Хэрэв та хүсвэл англи хэл дээрх эх хувилбарыг эндээс үзэх боломжтой.

MurmurHash3A Hash Code Calculator

MurmurHash3 нь 2008 онд Austin Appleby-ийн бүтээсэн криптографийн бус хэш функцийг юм. Энэ нь хурд, энгийн байдал, сайн тархалтын шинж чанаруудтай учраас ерөнхий зориулалтын хэшлэлтийг өргөн ашигладаг. MurmurHash функцууд нь хэш суурьтай өгөгдлийн бүтэцүүдэд, тухайлбал хэш хүснэгтүүд, bloom фильтрүүд болон өгөгдөл давхардлыг арилгах системүүдэд онцгой үр дүнтэй байдаг.

Энэхүү хуудас дээр танилцуулсан хувилбар нь 3A хувилбар бөгөөд 32 битийн системүүдэд зориулан оновчтой болсон. Энэ нь 32 бит (4 байт) хэш кодыг гаргадаг бөгөөд, ерөнхийдөө 8 оронтой аравтын тоо хэлбэрээр илэрхийлэгддэг.

Бүрэн тодруулга: Би энэ хуудсанд ашигласан хэш функцийн тодорхой хэрэгжилтийг бичээгүй. Энэ нь PHP програмчлалын хэлэнд багтсан стандарт функц юм. Би зөвхөн вэб интерфэйсийг энд олон нийтэд нээлттэй болгох үүднээс хийсэн.


Шинэ хэш кодыг тооцоолох

Энэ маягтаар илгээсэн өгөгдөл эсвэл байршуулсан файлууд сервер дээр зөвхөн хүссэн хэш кодыг үүсгэх хүртэл л хадгалагдах болно. Үр дүн нь таны хөтөч рүү буцаж ирэхээс өмнө шууд устгагдах болно.

Өгөгдөл оруулах:



Илгээсэн текст UTF-8 кодлогдсон байна. Хэш функц нь хоёртын өгөгдөл дээр ажилладаг тул үр дүн нь текст өөр кодчилолд байсантай харьцуулахад өөр байх болно. Хэрэв та тодорхой кодчилол дахь текстийн хэшийг тооцоолох шаардлагатай бол оронд нь файл байршуулах хэрэгтэй.



MurmurHash3A Хэш Алгоритмтай Танилцах

Би математикч биш ч, энэ хэш функцыг өөрийнхөө ойлгохуйц жишээгээр тайлбарлахыг хичээе. Хэрвээ та шинжлэх ухааны талаас нь зөв, бүрэн математик тайлбар хүсэж байгаа бол, би итгэлтэй байгаа ч түүнийг хаа нэгтээ олох болно ;-)

Одоо, төсөөлөөд үз дээ, танд том хайрцаг LEGO блокууд байна гэж. Та эдгээрийг тодорхой байдлаар байрлуулан зураг авдаг. Хамаагүй хэр том эсвэл өнгөлөг байлаа ч гэсэн, камертай зураг нь үргэлж жижиг, тогтмол хэмжээтэй зураг өгдөг. Энэ зураг нь таны LEGO бүтээлээр харуулж байгаа боловч, хурдан, компакт хэлбэрээр.

MurmurHash3 өгөгдөлтэй адилхан зүйл хийдэг. Энэ нь ямар ч төрлийн өгөгдлийг (текст, тоо, файлууд) авч, жижиг, тогтмол "хурууны хээ" буюу хэш утгад багтаадаг. Энэ хурууны хээ нь компьютеруудыг өгөгдлийг хурдан таньж, ангилж, харьцуулж хийхэд тусалдаг бөгөөд бүхэл өгөгдлийг харах шаардлагагүй.

Өөр нэг жишээ бол болтор торт хийх явдал бөгөөд MurmurHash3 нь энэ тортыг жижиг кекс (хэш) болгон хувиргах жор юм. Энэ нь гурван үе шаттай үйл явц юм:

1-р Алхам: Хэсэгт Таслах (Өгөгдлийг Таслах)

  • Эхлээд, MurmurHash3 таны өгөгдлийг тэгш хэсгүүдэд хувааж, тортыг тэгш квадратаар хуваах шиг.

2-р Алхам: Туузлах (Хэсгүүдийг Холих)

  • Тухайн хэсэг бүрийг галзуурсан холих үйл явцад оруулдаг:
    • Өргөх: Панкейк өргөх шиг, битүүдийг өөрчлөх.
    • Тамирдах: Санамсаргүй орц (математик үйлдлүүд) нэмэх, юуг ч эргэлдүүлэх.
    • Намсах: Өгөгдлийг хамт шахаж, анхны хэсэг нь ялгаатай байхгүй гэдгийг баталгаажуулах.

3-р Алхам: Төгс Смак Шалгах (Төгсгөл Шат)

  • Бүх хэсгүүдийг холихын дараа, MurmurHash3 үүнийг нэг сүүлчийн холих үйлдэл хийж, анхны өгөгдөлд хамгийн жижиг өөрчлөлт нь ч амт (хэш)-ийг бүрэн өөрчилдөг гэдгийг баталгаажуулдаг.
Bluesky дээр хуваалцаарайFacebook дээр хуваалцахLinkedIn дээр хуваалцахTumblr дээр хуваалцахX дээр хуваалцаарайLinkedIn дээр хуваалцахPinterest дээрх пин

Миккел Кристенсен

Зохиогчийн тухай

Миккел Кристенсен
Миккел бол miklix.com сайтыг бүтээгч, эзэмшигч юм. Тэрээр мэргэжлийн компьютерийн программист/програм хангамж хөгжүүлэгчээр 20 гаруй жил ажилласан туршлагатай бөгөөд одоогоор Европын томоохон мэдээллийн технологийн корпорацид бүтэн цагаар ажиллаж байна. Блог хөтлөөгүй үедээ тэрээр чөлөөт цагаа олон төрлийн сонирхол, хобби, үйл ажиллагаанд зарцуулдаг бөгөөд энэ нь энэ вэб сайтад багтсан олон янзын сэдвүүдэд тодорхой хэмжээгээр тусгагдсан байж магадгүй юм.