TOOL HASH GENERATOR LENGKAP UNTUK MURID TKJ
KLIK ATAU SERET FILE KE SINI
Mendukung semua jenis file - hash dihitung di browser (tidak diunggah)
Hash function adalah fungsi matematika yang mengubah data input berukuran bebas menjadi nilai keluaran berukuran tetap (disebut hash value, digest, atau checksum).
Bayangkan hash seperti sidik jari digital - setiap file/teks memiliki sidik jari unik yang panjangnya selalu sama, tidak peduli seberapa besar file aslinya.
INPUT (bebas) OUTPUT (tetap) "hello" -> 2cf24dba5fb0a30e... (SHA-256, 64 char) "file 100GB" -> 9f86d081884c7d6... (SHA-256, 64 char)
Output: 128 bit (32 karakter hex). Ditemukan tahun 1991 oleh Ron Rivest. SUDAH TIDAK AMAN untuk keamanan karena rentang collision. Masih dipakai untuk checksum file non-kritis.
Output: 160 bit (40 karakter hex). Dikeluarkan NIST tahun 1995. Tahun 2017 Google membuktikan collision (SHAttered attack). TIDAK LAGI DIREKOMENDASIKAN.
Dikeluarkan NIST tahun 2001. Masih AMAN dan banyak dipakai. SHA-256 (256 bit) adalah standar untuk TLS/SSL, Bitcoin, sertifikat digital.
Standar terbaru NIST tahun 2012. Arsitektur berbeda dari SHA-2 (sponge construction). Lebih tahan terhadap serangan tertentu.
Salt adalah data acak yang ditambahkan ke password sebelum di-hash. Tujuannya:
password: "admin123"
tanpa salt: SHA256("admin123") = 240be518fabd2724...
dengan salt: SHA256("admin123" + "x7f9k2") = 9a3c8e... (berbeda total!)
Algoritma password hashing modern: bcrypt, scrypt, Argon2.
HMAC menggabungkan hash function dengan kunci rahasia.
Kegunaan:
Selalu cek hash file yang diunduh (ISO, installer, firmware router) dengan hash resmi dari vendor. Gunakan SHA-256. Jika hash berbeda, file mungkin rusak atau disisipi malware. Di Linux: sha256sum file.iso, di Windows: Get-FileHash file.iso.
Jika membuat aplikasi, JANGAN simpan password sebagai plaintext atau MD5/SHA1. Gunakan bcrypt, argon2, atau minimal SHA-256 + salt + banyak iterasi.
Salt harus acak dan unik per user. Minimal 16 byte (128 bit). Simpan salt bersama hash di database untuk mencegah rainbow table attack.
Untuk konfigurasi jaringan (VPN, SSL cert, IPsec), pilih SHA-256 atau lebih tinggi. Jangan pakai MD5/SHA-1 untuk sertifikat digital.
Saat membuat/menggunakan API, pakai HMAC-SHA256 untuk signing request. Jangan kirim API key di URL. Contoh: AWS Signature V4, GitHub Webhook Secret.
MD5 dan SHA-1 sudah BROKEN. Collision bisa dibuat dalam hitungan detik. Gunakan hanya untuk checksum non-kritis.
Jika pakai SHA-256 untuk password, lakukan ribuan iterasi (key stretching). Contoh: PBKDF2 dengan 100.000 iterasi. Atau pakai bcrypt/scrypt/argon2.
Saat backup data penting, simpan juga hash SHA-256 tiap file. Saat restore, verifikasi hash untuk memastikan data tidak corrupt.
Hash BUKAN pengganti validasi input. Tetap sanitasi input user. Hash hanya untuk integritas/autentikasi, bukan mencegah SQL injection.
Saat membandingkan hash, gunakan fungsi perbandingan konstan waktu (hash_equals() di PHP, hmac.compareDigest() di JS).
Password enable/SSH di router di-hash. Cisco type 5 (MD5) mudah di-crack. Gunakan type 8 (PBKDF2) atau type 9 (scrypt).
Saat install SSL/TLS, verifikasi fingerprint sertifikat (SHA-256). Perintah: openssl x509 -in cert.pem -fingerprint -sha256 -noout
TIDAK BISA secara langsung. Hash adalah fungsi satu arah. Namun attacker bisa mencoba brute force, dictionary attack, atau rainbow table. Itulah kenapa kita butuh salt dan algoritma lambat seperti bcrypt.
Untuk keamanan modern, minimal pakai SHA-256.
MD5 masih dipakai untuk keperluan non-kriptografi: checksum file (deteksi corrupt), hash table (karena cepat), legacy system. JANGAN pakai untuk password, sertifikat digital, atau tanda tangan digital.
Salt adalah data acak yang ditambahkan ke password sebelum di-hash. Tujuan: mencegah rainbow table attack, memastikan password sama menghasilkan hash berbeda di setiap user. Generate salt acak 16+ byte, gabungkan dengan password, hash, simpan salt + hash di database.
Langkah: Download file, cari hash resmi, hitung hash file yang diunduh, bandingkan - harus SAMA PERSIS.
Perintah:
Get-FileHash file.iso -Algorithm SHA256sha256sum file.isocertutil -hashfile file.iso SHA256Jika hash berbeda, JANGAN pakai file tersebut!
Rainbow table adalah tabel besar berisi hash yang sudah dihitung untuk jutaan password umum. Attacker tinggal lookup untuk dapat password asli. Pencegahan: pakai salt unik per user.
Collision adalah 2 input berbeda menghasilkan hash sama. Berbahaya karena attacker bisa buat file jahat yang hash-nya sama dengan file asli. Contoh: SHAttered attack (SHA-1, 2017). Solusi: pakai SHA-256+.
Untuk TKJ, SHA-256 paling aman dan serbaguna.
HMAC adalah hash + kunci rahasia. Hash biasa: siapa saja bisa hitung. HMAC: hanya yang punya kunci. Kegunaan: API auth, JWT, session signing, mencegah replay attack.
SSL/TLS pakai hash untuk: certificate fingerprint (SHA-256), digital signature, handshake verification, PRF (HMAC-based), record integrity. TLS 1.3 pakai SHA-256 atau SHA-384.
TIDAK DIREKOMENDASIKAN untuk password sensitif. Tool ini untuk edukasi dan testing. Semua proses di browser (tidak diupload), tapi tetap ada risiko keylogger/malware. Untuk password nyata, gunakan password manager (Bitwarden, KeePass, 1Password).
Bitcoin pakai SHA-256. Miner membuat block header, lakukan double SHA-256, cari nonce sehingga hash < target difficulty. Ini Proof of Work - butuh banyak komputasi tapi mudah diverifikasi.
BELUM ADA RIWAYAT