Kalkulator Kod Hash MurmurHash3C
Diterbitkan: 19 Mac 2025 pada 8:58:48 PTG UTC
Kalkulator kod cincang yang menggunakan fungsi cincang MurmurHash3C untuk mengira kod cincang berdasarkan input teks atau muat naik fail.MurmurHash3C Hash Code Calculator
MurmurHash3 ialah 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 amat berkesan untuk struktur data berasaskan hash seperti jadual hash, penapis bloom, dan sistem deduplikasi data.
Varian yang dipersembahkan di halaman ini adalah varian 3C, yang dioptimumkan untuk sistem 32 bit, sama seperti varian 3A. Walau bagaimanapun, tidak seperti varian 3A, ia menghasilkan kod hash 128 bit (16 byte), biasanya diwakili sebagai nombor heksadesimal 32 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.
Tentang Algoritma Hash MurmurHash3C
Saya bukan seorang ahli matematik, tetapi saya akan cuba menjelaskan fungsi hash ini dengan menggunakan analogi yang boleh difahami oleh rakan-rakan saya yang bukan ahli matematik. Jika anda lebih suka penjelasan matematik yang betul secara saintifik, saya pasti anda boleh mencari penjelasan itu di tempat lain ;-)
Sekarang, bayangkan anda mempunyai kotak besar berisi bata LEGO. Setiap kali anda menyusunnya dengan cara tertentu, anda mengambil gambar. Tidak kira betapa besar atau berwarnanya susunan itu, kamera sentiasa memberikan anda gambar kecil dengan saiz tetap. Gambar itu mewakili ciptaan LEGO anda, tetapi dalam bentuk yang lebih padat.
MurmurHash3 melakukan sesuatu yang serupa dengan data. Ia mengambil apa-apa jenis data (teks, nombor, fail) dan mengecilkannya menjadi "cap jari" kecil atau nilai hash yang tetap. Cap jari ini membantu komputer mengenal pasti, menyusun, dan membandingkan data dengan cepat tanpa perlu melihat keseluruhan data tersebut.
Analogi lain adalah seperti membakar kek dan MurmurHash3 adalah resipi untuk mengubah kek itu menjadi kek cawan kecil (hash). Ini akan menjadi proses tiga langkah:
Langkah 1: Potong kepada Kepingan (Memecah Data)
- Pertama, MurmurHash3 memotong data anda kepada kepingan yang sama, seperti memotong kek menjadi kotak yang sama besar.
Langkah 2: Gaul dengan Gila (Mengacau Kepingan)
- Setiap kepingan melalui proses pengacauan yang liar:
- Balikkan: Seperti membalikkan pancake, ia menyusun semula bit-bit tersebut.
- Kacau: Menambah bahan-bahan rawak (operasi matematik) untuk mengacaukan semuanya.
- Peras: Menekan data bersama-sama untuk memastikan tiada kepingan asal yang menonjol.
Langkah 3: Ujian Rasa Akhir (Penukaran)
- Selepas mengacau semua kepingan, MurmurHash3 memberikan satu kacau terakhir untuk memastikan bahawa walaupun sebutir serbuk kecil perubahan dalam data asal akan benar-benar mengubah rasa (hash).