Generator Hash

Hitung digest MD5, SHA-1, SHA-256, SHA-384, SHA-512, SHA-3, Keccak-256, RIPEMD-160, BLAKE2b atau BLAKE2s dari teks atau berkas apa pun — berguna untuk checksum, pemeriksaan integritas, dan kunci cache. Tempel digest yang diharapkan untuk memverifikasinya terhadap masukan Anda, atau tempel string hash yang tidak diketahui untuk mengidentifikasi algoritma mana yang kemungkinan menghasilkannya. SHA-1/256/384/512 berasal dari WebCrypto asli browser Anda; sisanya adalah implementasi JavaScript murni yang mandiri, sehingga semuanya berjalan secara lokal. Lihat juga Generator Angka Acak untuk urutan acak berbasis seed.
Berjalan sepenuhnya secara lokal — tidak ada yang diunggah. Masukan hingga 200 MB.
Input: Algoritma:
Format output: SHA-1 adalah warisan — utamakan SHA-256/512 kecuali Anda memerlukannya.
Baris digest menggunakan bentuk “ALGORITMA  hash” sehingga dapat disalin ke catatan rilis atau manifes unduhan.
Tempel digest yang diberikan halaman unduhan atau manifes kepada Anda. Alat ini menerima huruf besar/kecil, spasi, titik dua, awalan gaya sha256=, pembungkus gaya MD5 (file.exe) =, dan keluaran md5sum multi-baris, lalu membandingkannya dengan algoritma yang dicentang di atas.
Tempel string hash yang tidak diketahui. Alat ini membaca panjang, himpunan karakter, dan prefiksnya, lalu mendaftar algoritma yang mungkin menghasilkannya — mulai dari digest hex polos hingga hash kata sandi gaya PHC seperti $2b$… atau $argon2id$….
Memilih algoritma:
SHA-256 adalah default yang masuk akal untuk pemeriksaan integritas saat ini. SHA-512 lebih kuat dan berjalan lebih cepat pada perangkat keras 64-bit, dengan konsekuensi keluaran yang lebih panjang; SHA-384 adalah opsi tengah ketika Anda memerlukan digest SHA-2 dengan panjang terpotong. SHA-3 adalah standar NIST yang dirancang secara independen (bukan peningkatan SHA-2) dan merupakan jawaban standar ketika Anda menginginkan algoritma tanpa garis keturunan bersama dengan SHA-2; Keccak-256 adalah varian pra-standar yang digunakan Ethereum dan beberapa sistem lain, dan berbeda dari SHA3-256 pada satu byte padding. BLAKE2b/BLAKE2s adalah hash modern yang cepat dan dirancang untuk penggunaan perangkat lunak; RIPEMD-160 adalah desain yang lebih tua namun masih dipakai dalam konteks Bitcoin dan OpenPGP. SHA-1 dan MD5 telah rusak secara kriptografis untuk masukan yang bersifat permusuhan, tetapi tetap benar dan luas digunakan untuk deduplikasi, sistem lama, dan checksum non-adversarial — jangan pernah menggunakannya di tempat penyerang dapat memilih isinya. Tidak ada hash saat ini yang “tahan kuantum” dalam arti kuantum yang mengancam tanda tangan dan pertukaran kunci terlebih dahulu — algoritma Grover hanya memangkas separuh panjang hash efektif, sehingga SHA-256 sudah berada jauh di atas batas praktis. Hash bersifat deterministik: bytes yang sama selalu menghasilkan digest yang sama, dan itulah yang membuatnya berguna untuk memverifikasi bahwa unduhan atau berkas konfigurasi masih utuh.
Mencari hash nasional Tiongkok?
SM3 (GB/T 32905-2016), digest yang diwajibkan dalam kriptografi komersial Tiongkok, tidak termasuk dalam halaman ini — ia memiliki alat tersendiri dengan dukungan HMAC-SM3 di halaman Generator Hash SM3, bersama rangkaian SM lainnya: SM4 (cipher blok), SM2 (tanda tangan dan enkripsi), dan SM9 (kriptografi berbasis identitas).
Generator Hash — setiap algoritma dijelaskan dari nol
Dalam satu kalimat: fungsi hash kriptografis adalah blender satu arah — ia menerima sejumlah byte apa pun dan memadatkannya menjadi sidik jari panjang tetap sedemikian rupa sehingga masukan yang sama selalu menghasilkan sidik jari yang sama, namun sidik jari itu tidak memberi tahu cara membangun kembali masukannya. Halaman ini menjalankan sebelas di antaranya sepenuhnya di dalam tab browser.

Setiap algoritma di bawah dijelaskan dengan empat langkah yang sama: apa itu dengan kata-kata biasa, intuisi cara kerjanya tanpa rumus, apakah masih layak digunakan hari ini, dan kesalahan yang paling sering dibuat orang dengannya.

MD5

Apa itu. MD5 (1992) memadatkan masukan apa pun menjadi sidik jari 128-bit (32 karakter hex). Ia dirancang agar cepat di komputer tahun 1990-an, dan memang begitu — itulah sebabnya ia masih ada di mana-mana: halaman unduhan perangkat lunak, cache deduplikasi berkas, kunci basis data lama.

Cara kerjanya, secara intuitif. Masukan dipotong menjadi potongan 64-byte. Setiap potongan diaduk ke dalam status bergulir 128-bit sebanyak empat kali (empat putaran pencampuran yang sedikit berbeda), dan setelah potongan terakhir statusnya dicetak sebagai digest. Pengadukan dibangun dari penjumlahan, rotasi, dan pencarian tabel — murah dulu, murah sekarang.

Apakah sebaiknya digunakan? Untuk checksum ketika tidak ada yang berusaha menipu Anda — mendeteksi unduhan yang rusak, menemukan berkas duplikat — ya, ia tetap melaporkan kerusakan dengan sempurna. Untuk apa pun yang bersifat adversarial, tidak: sejak 2004 para peneliti dapat membuat dua berkas berbeda dengan MD5 yang sama dalam hitungan detik, dan pemalsuan sertifikat sungguhan yang memanfaatkan tabrakan MD5 terjadi pada 2008. Perlakukan ia sebagai nomor seri, bukan kunci.

Kesalahan umum. Menggunakan MD5 untuk kata sandi (terlalu cepat — lihat Generator Hash Kata Sandi untuk mengetahui apa yang seharusnya digunakan di sana); mempercayai berkas karena “MD5-nya cocok” padahal penyerang juga menerbitkan MD5-nya; dan menempelkan seluruh baris MD5 (file) = hash alih-alih hanya hash-nya — kotak Verifikasi di atas menerima keduanya.

SHA-1

Apa itu. SHA-1 (1995, NSA) menghasilkan digest 160-bit (40 karakter hex). Selama dua dekade ia adalah hash integritas bawaan Git, sertifikat TLS, dan tanda tangan PGP.

Cara kerjanya, secara intuitif. Resep keluarga yang sama dengan MD5 tetapi dengan status 160-bit, 80 putaran pencampuran per potongan 64-byte, dan rangkaian operasi yang lebih luas. Putaran tambahan dimaksudkan untuk membuat blender lebih sulit direkayasa balik.

Apakah sebaiknya digunakan? Tidak, untuk apa pun yang bersifat adversarial. Pematahan teoretisnya menjadi praktis pada 2017 ketika Google menghasilkan dua PDF berbeda dengan nilai SHA-1 yang identik (serangan SHAttered, sekitar 6500 tahun-CPU). Git masih menyimpan objek di bawah SHA-1 tetapi hanya memperlakukannya sebagai pengenal, dan sejak itu telah menambahkan deteksi tabrakan. Untuk pekerjaan baru gunakan SHA-256 atau SHA-3.

Kesalahan umum. Percaya bahwa 160 bit “masih cukup panjang” — pematahannya menyangkut struktur internal, bukan brute force; dan mencampuradukkan RIPEMD-160 dengan SHA-1 karena keduanya sama-sama 40 karakter hex (kotak identifikasi di atas membedakannya).

SHA-2: SHA-256, SHA-384 dan SHA-512

Apa itu. Keluarga SHA-2 (2001, NSA) adalah kuda pekerja pemeriksaan integritas modern. SHA-256 memberikan 256 bit (64 karakter hex), SHA-512 memberikan 512 bit, dan SHA-384 adalah SHA-512 dengan hasil dipotong menjadi 384 bit — berguna ketika sebuah protokol mewajibkan tag yang lebih pendek.

Cara kerjanya, secara intuitif. Potongan 64-byte (atau 128-byte untuk varian 512-bit) dilipat ke dalam status 8-kata melalui 64 (atau 80) putaran langkah tambah-rotasi-campur. Berbeda dengan MD5, jadwalnya terlebih dahulu memanjangkan setiap potongan menjadi buffer yang diperluas, dan itulah yang mengalahkan gaya serangan yang memecahkan MD5 dan SHA-1. Satu keunikan yang patut diketahui: pada CPU 64-bit SHA-512 lebih cepat daripada SHA-256, karena ia memproses dua kali data per putaran dengan aritmetika 64-bit.

Apakah sebaiknya digunakan? Ya — SHA-256 adalah jawaban default untuk checksum berkas, penandatanganan kode, dan sidik jari sertifikat saat ini, dengan tidak ada pematahan praktis yang diketahui setelah dua dekade analisis. Gunakan SHA-384/512 ketika Anda menginginkan margin lebih besar atau ketika platform menjalankannya lebih cepat.

Kesalahan umum. Menggunakan SHA-256 saja untuk kata sandi — ia adalah hash cepat, dan kecepatan adalah musuh di sana (gunakan bcrypt/scrypt/Argon2id); dan mencampuradukkan panjang digest dengan kekuatan untuk pengaturan ketahanan tabrakan adversarial — panjang hanya menetapkan batas atas.

SHA-3 (SHA3-256 / SHA3-512) dan Keccak-256

Apa itu. SHA-3 (2015, distandarkan dari pengajuan Keccak oleh Bertoni, Daemen, Peeters, dan Van Assche) adalah standar hash NIST ketiga. Ia tidak berbagi apa pun dengan internal SHA-2 — ia dipilih justru agar menjadi cadangan independen seandainya SHA-2 pernah jatuh.

Cara kerjanya, secara intuitif. Alih-alih mengaduk potongan melalui status kecil, Keccak berulang kali “menyerap dan memeras”: masukan diserap bit demi bit ke dalam spons 5×5×64-bit, seluruh spons diacak oleh permutasi tetap (24 putaran operasi bitwise pada seluruh status), lalu bit digest diperas keluar. Gambaran spons itulah inti idenya: bit kapasitas tidak pernah dikeluarkan, dan merekalah yang membuat fungsi ini satu arah.

Keccak-256 vs SHA3-256. Keduanya berbeda tepat pada satu byte padding. Pengajuan asli tim Keccak mem-padding blok terakhir dengan 0x01; NIST mengubah padding standar menjadi 0x06 (pemisahan domain yang digunakan Keccak era SHA-2). Ethereum mengadopsi padding asli, sehingga “keccak256”-nya berbeda dari SHA3-256 standar untuk setiap masukan. Halaman ini menawarkan keduanya, dicentang secara terpisah.

Apakah sebaiknya digunakan? Ya — baik sebagai pilihan utama ketika kebijakan menginginkan algoritma non-SHA-2, atau di mana pun ekosistemnya sudah menggunakannya. Kesalahan umum: menganggap SHA3-256 dan Keccak-256 dapat saling menggantikan (tidak — bandingkan dua baris yang dihasilkan halaman ini untuk masukan yang sama); dan menganggap “SHA-3” menggantikan SHA-2 — keduanya aman, SHA-2 tetap yang lebih banyak diterapkan.

RIPEMD-160

Apa itu. RIPEMD-160 (1996, konsorsium RIPE para akademisi Eropa, diperkuat oleh Dobbertin, Bosselaers, dan Preneel) menghasilkan 160 bit. Ini adalah desain sepenuhnya Eropa, sengaja independen dari keluarga SHA yang dirancang NSA.

Cara kerjanya, secara intuitif. Setiap potongan 64-byte diproses oleh dua jalur paralel berisi 80 putaran dengan konstanta dan jumlah rotasi yang berbeda; di akhir, kedua jalur dan status lama digabungkan. Struktur dua jalur itulah cara perancang menahan serangan diferensial yang sedang memecahkan hash 1990-an lainnya.

Apakah sebaiknya digunakan? Dalam praktik ia bertahan terutama di dalam sistem lain: alamat Bitcoin menghasilkan hash kunci publiknya dengan RIPEMD-160(SHA-256(pk)), kunci OpenPGP lama menawarkannya sebagai opsi hash, dan ia adalah hash tradisional untuk potongan BitTorrent v1 bersama SHA-1. Tidak ada serangan tabrakan praktis terhadapnya, tetapi ukuran 160-bit memberinya margin keamanan terkecil di halaman ini. Untuk penggunaan mandiri yang baru, utamakan SHA-256 atau SHA-3.

Kesalahan umum. Percaya bahwa dua jalur paralel itu membuatnya “dua kali lebih kuat” — ukuran keluaran adalah yang membatasi ketahanan tabrakan; dan mencampuradukkannya dengan SHA-1 (panjang 40 karakter hex yang sama; kotak identifikasi di atas mendaftar keduanya berdampingan).

BLAKE2b-512 dan BLAKE2s-256

Apa itu. BLAKE2 (2013, Aumasson, Neves, Wilcox-O’Hearn dan Winnerlein) adalah hash yang dirancang untuk kecepatan perangkat lunak: BLAKE2b ditujukan untuk platform 64-bit dengan keluaran hingga 512-bit, BLAKE2s ditujukan untuk platform 32-bit dengan keluaran hingga 256-bit.

Cara kerjanya, secara intuitif. Ia berasal dari finalis SHA-3 BLAKE, yang intinya adalah permutasi berkunci yang dipinjam dari cipher aliran ChaCha: matriks 4×4 kata diacak dengan mengganti langkah pencampuran kolom dan diagonal — seperti mengocok kisi dari atas ke bawah, lalu sepanjang diagonal — sebanyak 12 (BLAKE2b) atau 10 (BLAKE2s) putaran per potongan. Karena langkah-langkah itu terpetakan dengan baik ke instruksi CPU, BLAKE2 sering lebih cepat daripada MD5 sambil menawarkan keamanan yang sebanding dengan SHA-3.

Apakah sebaiknya digunakan? Ya — ini desain modern yang sepenuhnya, dan belum pernah dipecahkan, populer di perangkat lunak yang sensitif terhadap kinerja (integritas paket di beberapa ekosistem, penyimpanan berbasis konten, deduplikasi cadangan) dan sebagai MAC yang cepat. Di halaman ini, BLAKE2b-512 menghasilkan digest terpanjang dan BLAKE2s-256 adalah opsi modern yang ringkas.

Kesalahan umum. Berpikir “lebih cepat pasti berarti lebih lemah” — BLAKE2 lebih cepat karena desainnya, bukan karena memotong sudut; dan tidak menyadari bahwa BLAKE2 juga menerima kunci (menjadikannya MAC) atau string personalisasi — halaman ini selalu menggunakannya dalam mode tanpa kunci.

Membaca kotak Verifikasi dan Identifikasi

Verifikasi. Kotak verifikasi menormalkan apa pun yang Anda tempel — huruf besar atau kecil, titik dua setiap dua digit, awalan sha256=, pembungkus gaya BSD SHA256 (file) = hash, baris GNU md5sum dengan nama berkas setelah hash, \r\n yang tersesat — lalu menghitung ulang setiap algoritma yang dicentang atas masukan Anda saat ini (teks atau berkas yang dipilih) dan melaporkan setiap algoritma yang cocok. Kecocokan hijau berarti “byte ini persis yang di-hash oleh penerbit”; merah berarti tidak ada algoritma yang dicentang menghasilkannya — coba centang lebih banyak algoritma, atau periksa apakah tempelan terpotong.

Identifikasi. Kotak identifikasi tidak menghitung hash apa pun; ia membaca bentuk string. Panjang mempersempit kandidat: 32 karakter hex bisa berupa MD5, 40 bisa SHA-1 atau RIPEMD-160, 64 bisa SHA-256 / SHA3-256 / Keccak-256 / BLAKE2s-256, 96 SHA-384, 128 SHA-512 / SHA3-512 / BLAKE2b-512. Prefiks mengungkap hash kata sandi ($2a$/$2b$/$2y$ bcrypt, $argon2id$, $scrypt$, $6$ sha512crypt, $1$ MD5-crypt) — itu spesies yang berbeda (lihat Generator Hash Kata Sandi) dan sengaja tidak dihitung oleh halaman ini. String dengan +, /, dan = yang panjangnya kelipatan 4 lebih mungkin berupa data berkode Base64 daripada digest hex; alat ini mendekodenya dan melaporkan panjang byte yang sesuai.

Apa yang bisa dan tidak bisa diberitahukan identifikasi. Panjang dan himpunan karakter adalah sidik jari dari format, bukan bukti algoritma: dua string 64-karakter hex bisa berasal dari SHA-256 atau dari SHA-512 yang dipotong. Identifier memberi peringkat kemungkinan; kotak Verifikasilah yang membuktikan algoritma mana yang sesuai dengan byte Anda.

Kesebelas algoritma dalam satu pandangan
Algoritma Digesti Diciptakan Digest dari “The quick brown fox jumps over the lazy dog”
MD5128 bit19929e107d9d372bb6826bd81d3542a419d6
SHA-1160 bit19952fd4e1c67a2d28fced849ee1bb76e7391b93eb12
SHA-256256 bit2001d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592
SHA-384384 bit2001ca737f1014a48f4c0b6dd43cb177b0afd9e5169367544c494011e3317dbf9a509cb1e5dc1e85a941bbee3d7f2afbc9b1
SHA-512512 bit200107e547d9586f6a73f73fbac0435ed76951218fb7d0c8d788a309d785436bbb642e93a252a954f23912547d1e8a3b5ed6e1bfd7097821233fa0538f3db854fee6
SHA3-256256 bit201569070dda01975c8c120c3aada1b282394e7f032fa9cf32f4cb2259a0897dfc04
SHA3-512512 bit201501dedd5de4ef14642445ba5f5b97c15e47b9ad931326e4b0727cd94cefc44fff23f07bf543139939b49128caf436dc1bdee54fcb24023a08d9403f9b4bf0d450
Keccak-256256 bitsebelum 20154d741b6f1eb29cb2a9b9911c82f56fa8d73b04959d3d9d222895df6c0b28aa15
RIPEMD-160160 bit199637f332f68db77bd9d7edd4969571ad671cf9dd3b
BLAKE2b-512512 bit2013a8add4bdddfd93e4877d2746e62817b116364a1fa7bc148d95090bc7333b3673f82401cf7aa2e4cb1ecd90296e3f14cb5413f8ed77be73045b13914cdcd6a918
BLAKE2s-256256 bit2013606beeec743ccbeff6cbcdf5d5302aa855c256c29b88c8ed331ea1a6bf3c8812

Setiap digest dalam tabel di atas dihasilkan oleh mesin di halaman ini sendiri — centang semua algoritma, klik Sampel, dan bandingkan. Baris SHA-3, Keccak, RIPEMD-160, dan BLAKE2 berasal dari kernel crypto-shared.js yang dihosting sendiri dan digunakan di seluruh alat kriptografi situs ini.

FAQ

Kotak mana yang bisa dipercaya untuk sebuah unduhan? Kotak Verifikasi, dengan SHA-256 dicentang — sebagian besar penerbit saat ini menandatangani SHA-256 atau SHA-512. Kotak Identifikasi hanya menamai kandidat; ia tidak pernah membuktikan apa pun tentang berkas Anda.

Mengapa Keccak-256 ada dalam daftar? Karena Ethereum, Swarm, dan beberapa sistem buku besar menstandarkan padding pra-standar. Jika memverifikasi keccak256 Ethereum, Anda harus menggunakan baris itu, bukan SHA3-256.

Bisakah dua masukan berbeda berbagi digest? Secara teori, bisa — tak terhingga banyaknya masukan dipetakan ke himpunan digest yang terbatas (prinsip sarang merpati). Dalam praktik, menemukan pasangan seperti itu sebelum kematian panas alam semesta adalah inti dari “ketahanan tabrakan”, dan setiap algoritma di atas kecuali MD5 dan SHA-1 masih tegak.

Apakah hash itu enkripsi? Tidak. Enkripsi dapat dibalik dengan kunci; hash adalah blender satu arah. Tidak ada yang di halaman ini dapat “didekripsi” kembali menjadi teks Anda — dan itu adalah fitur, bukan keterbatasan.