Kalkulator Kod Hash MD2
Diterbitkan: 19 Mac 2025 pada 8:45:55 PTG UTC
Kalkulator kod cincang yang menggunakan fungsi cincang Message Digest 2 (MD2) untuk mengira kod cincang berdasarkan input teks atau muat naik fail.MD2 Hash Code Calculator
Fungsi cincang MD2 (Message Digest 2) ialah fungsi cincang kriptografi yang direka oleh Ronald Rivest pada tahun 1989. Ia dioptimumkan khusus untuk komputer 8-bit. Walaupun kini dianggap usang dan tidak selamat untuk tujuan kriptografi, ia disertakan di sini sekiranya seseorang perlu mengira kod cincang yang serasi ke belakang. Ia tidak boleh digunakan semasa mereka bentuk sistem baru.
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 MD2
Saya cukup mahir dalam matematik asas, tetapi tidak terlalu hebat dan sama sekali tidak menganggap diri saya seorang ahli matematik, jadi saya akan cuba menerangkan bagaimana fungsi hash ini berfungsi dalam istilah yang boleh difahami oleh bukan ahli matematik. Jika anda lebih suka versi matematik penuh, ia cukup mudah untuk ditemui di banyak tempat lain di web ;-)
Sekarang, bayangkan anda mempunyai resipi yang mengambil apa-apa bahan (mesej anda) dan sentiasa menjadikannya satu bar coklat kecil dengan 16 keping (hash). Tidak kira apa bahan anda atau berapa besar atau kecilnya, anda akan sentiasa mendapat bar coklat dengan saiz yang sama.
Matlamat resipi ini adalah:
- Anda tidak boleh meneka bahan hanya dengan melihat coklat.
- Walaupun perubahan kecil dalam bahan akan membuatkan rasa coklat itu berbeza sama sekali, jadi anda akan tahu jika seseorang mengubah bahan atau resipi.
Mencipta bar coklat adalah proses tiga langkah:
Langkah 1: Menambah Padding pada Mesej (Menyesuaikan Bahan)
Katakan anda mempunyai bakul yang memegang tepat 16 epal (atau bahan). Tetapi bagaimana jika anda hanya mempunyai 14 epal? Anda perlu menambah 2 lagi untuk mengisi bakul. Jika anda kekurangan, anda hanya tambah epal tambahan. Sebagai contoh:
- Jika anda memerlukan dua lagi, anda tambah dua epal.
- Jika anda mempunyai lebih daripada 16, anda perlu mengisi bakul seterusnya. Sebagai contoh, jika anda mempunyai 28, anda tambah empat untuk mencapai 32 (dua kali 16).
Ini memastikan setiap bakul penuh sebelum kita beralih ke langkah seterusnya.
Langkah 2: Menambah Cek Sum (Senarai Bahan Rahsia)
Sekarang, kita mencipta senarai bahan rahsia berdasarkan segala-galanya dalam bakul.
- Anda melalui setiap bakul, melihat epal, dan menulis kod rahsia untuk setiap satu.
- Ini bukan sekadar salinan - ia seperti menambah nombor dengan cara yang aneh supaya walaupun seseorang menyelinap masuk dan mengubah epal, senarai itu akan kelihatan salah.
Senarai ini membantu anda memeriksa semula bahawa bahan-bahan tidak diubah kemudian.
Langkah 3: Mengacau Semuanya Bersama (Pengadun Ajaib)
Sekarang tiba bahagian yang seronok - pengacauan!
- Anda mempunyai pengadun dengan 48 slot.
- Anda masukkan:
- Epal (mesej anda).
- Campuran lama dari sebelum ini (mula kosong untuk batch pertama).
- Campuran kedua-dua perkara pertama.
Kemudian anda mengacaukan. Tetapi bukan hanya sekali. Anda mengacaukan sebanyak 18 kali, mengubah kelajuan dan arah setiap pusingan. Ini bukan pengacauan biasa - setiap pusingan mengacau campuran dengan cara istimewa supaya walaupun satu epal yang berbeza boleh membuatkan keseluruhan coklat rasa berbeza.
Bar Coklat Akhir (Hash)
Selepas semua pengacauan itu, anda tuang hanya 16 keping atas campuran tersebut. Itu adalah bar coklat akhir anda - hash MD2. Ia tidak kelihatan langsung seperti epal asal, dan jika anda cuba meneka bahan asal hanya daripada coklat itu, anda tidak akan pernah berjaya.
Ingat:
- Bahan yang sama = coklat yang sama.
- Ubah walaupun satu epal = coklat yang berbeza sama sekali.
- Anda tidak boleh kembali - anda tidak boleh mengetahui epal asal hanya daripada coklat.