Kalkulator Kod Hash MurmurHash3A
Diterbitkan: 19 Mac 2025 pada 8:59:41 PTG UTC
Kalkulator kod cincang yang menggunakan fungsi cincang MurmurHash3A untuk mengira kod cincang berdasarkan input teks atau muat naik fail.MurmurHash3A Hash Code Calculator
MurmurHash3 adalah fungsi hash bukan kriptografi yang direka oleh Austin Appleby pada tahun 2008. Ia digunakan secara meluas untuk penghashan tujuan umum kerana kelajuan, kesederhanaan, dan sifat pengedaran yang baik. Fungsi MurmurHash sangat berkesan untuk struktur data berasaskan hash seperti jadual hash, penapis bloom, dan sistem deduplikasi data.
Varian yang dipersembahkan pada halaman ini adalah varian 3A, yang dioptimumkan untuk sistem 32 bit. Ia menghasilkan kod hash 32 bit (4 bait), biasanya diwakili sebagai nombor heksadesimal 8 digit.
Pendedahan penuh: Saya tidak menulis pelaksanaan khusus fungsi cincang yang digunakan pada halaman ini. Ia adalah fungsi standard yang disertakan dengan bahasa pengaturcaraan PHP. Saya hanya membuat antara muka web untuk menjadikannya tersedia secara umum di sini untuk kemudahan.
Mengenai Algoritma Hash MurmurHash3A
Saya bukan seorang ahli matematik, tetapi saya akan cuba menerangkan fungsi hash ini menggunakan analogi yang boleh difahami oleh rakan-rakan saya yang bukan ahli matematik. Jika anda lebih suka penjelasan yang betul secara saintifik dan matematik sepenuhnya, saya pasti anda boleh mencari itu di tempat lain ;-)
Sekarang, bayangkan anda mempunyai sekotak besar bata LEGO. Setiap kali anda menyusunnya dengan cara tertentu, anda mengambil gambar. Tidak kira seberapa besar atau berwarna-warni susunannya, kamera sentiasa memberikan anda gambar kecil yang bersaiz tetap. Gambar itu mewakili ciptaan LEGO anda, tetapi dalam bentuk padat.
MurmurHash3 melakukan sesuatu yang serupa dengan data. Ia mengambil apa-apa jenis data (teks, nombor, fail) dan mengecilkannya kepada "jejak jari" atau nilai hash yang kecil dan tetap. Jejak jari ini membantu komputer mengenal pasti, menyusun, dan membandingkan data dengan cepat tanpa perlu melihat keseluruhan data.
Satu lagi analogi adalah seperti membakar kek dan MurmurHash3 adalah resipi untuk mengubah kek itu menjadi kek cawan kecil (hash). Ini adalah proses tiga langkah:
Langkah 1: Potong kepada Kepingan (Memecahkan Data)
- Pertama, MurmurHash3 memotong data anda kepada bahagian-bahagian yang sama, seperti memotong kek kepada petak-petak yang sama besar.
Langkah 2: Kacau Seperti Gila (Mengacau Kepingan)
- Setiap kepingan melalui proses mengacau yang liar:
- Balikkan: Seperti membalikkan pancake, ia menyusun semula bit-bit tersebut.
- Kacau: Menambah bahan-bahan rawak (operasi matematik) untuk mencampurkan semuanya.
- Kepit: Menekan data bersama untuk memastikan tiada kepingan asal yang menonjol.
Langkah 3: Ujian Rasa Akhir (Penukaran Akhir)
- Setelah mengacau semua kepingan, MurmurHash3 memberi satu kacau terakhir untuk memastikan walaupun sekeping kecil perubahan dalam data asal akan mengubah rasa sepenuhnya (hash).