Hash SHA-256

Sebelum paham Bitcoin, kalian harus kenal satu mesin kecil bernama hash. Ketik apa pun di kotak bawah, dan lihat sidik jari digitalnya berubah di setiap ketikan. Kelihatannya sederhana, tapi dari sinilah seluruh keamanan Bitcoin dibangun.

# Kenapa ini penting?

Hash itu sidik jari digital. Data apa pun, mau satu huruf atau seluruh isi perpustakaan, diringkas jadi 64 karakter heksadesimal yang panjangnya selalu sama. Di saham, laporan keuangan diaudit akuntan supaya tidak ada yang mengubah angka diam-diam. Di Bitcoin, peran auditor itu dimainkan hash: satu karakter saja berubah, sidik jarinya berubah total, dan semua orang langsung tahu.

Simulator Bitcoin Mining dan Blockchain di menu sebelah semuanya dibangun di atas mesin kecil ini.

» Cara pakai simulatornya

Ketik apa pun di kotak Data: nama kalian, angka, atau satu paragraf penuh. Hash SHA-256 dihitung ulang di setiap ketikan. Coba tiga eksperimen: pertama, ketik nama kalian, hapus, lalu ketik lagi, hash-nya kembali sama persis. Kedua, ubah satu huruf saja, hash-nya berubah total. Ketiga, hapus semua isi kotak: ternyata kotak kosong pun punya hash.

SHA-256 hash (selalu 64 karakter hex, 256 bit)
/ empat sifat yang bikin hash berguna

1 Deterministik

Input yang sama selalu menghasilkan hash yang sama. Dihitung hari ini atau 10 tahun lagi, di laptop kalian atau di server NASA, hasilnya identik. Inilah yang membuat semua orang bisa saling mengecek tanpa saling percaya.

2 Satu arah

Dari data ke hash butuh sekejap. Dari hash balik ke data? Praktis mustahil. Satu-satunya cara adalah menebak semua kemungkinan input satu per satu, dan jumlah kemungkinannya jauh melebihi jumlah atom di alam semesta yang teramati.

3 Efek longsor

Ubah satu huruf, dan sekitar separuh isi hash ikut berubah. Tidak ada pola yang bisa ditebak, tidak ada "hash-nya mirip berarti datanya mirip". Coba sendiri di kotak atas: ganti huruf besar jadi kecil dan bandingkan.

4 Panjang selalu sama

Input 1 huruf atau 1 GB, outputnya tetap 256 bit (64 karakter hex). Perhatikan penghitung karakter di bawah kotak Data: input boleh tumbuh terus, sidik jarinya tidak pernah ikut memanjang.

Sudah kenal si sidik jari? Sekarang lihat dia dipakai buat kerja nyata di simulator Bitcoin Mining.