This article has been translated from English to Indonesian.
Bagaimana cara kerja hashing?
Pada pelajaran sebelumnya, saya memperkenalkan konsep hashing dan istilah-istilah yang relevan. Sekarang, mari kita pelajari cara kerjanya!
Hash adalah operasi matematika yang mudah dilakukan, tetapi sangat sulit untuk dibalik.
Proses hashing mengubah sepotong data menjadi kode biner, yang hanya berupa sekumpulan angka 0 dan 1.
Kemudian memecah angka-angka tersebut dan menerapkan beberapa"pencampuran" rahasia,yang dilakukan oleh sesuatu yang disebut "fungsi hash".
Bagaimana cara kerja hashing dalam kripto?
Ketika digunakan dalam Bitcoin dan mata uang kripto lainnya, hasil akhirnya biasanya berupa deretan angka dan huruf sepanjang 64 digit.
Karena konversi dilakukan dengan algoritma kriptografi ("fungsi hash"), rumus pencocokannya tidak diketahui sehingga string 64 digit tidak dapat dibalik.
String adalah urutan karakter.
String seperti kalimat. Mereka dibentuk oleh kombinasi karakter.
Bayangkan sebuah hash sebagai sekumpulan huruf dan angka acak.
Sepotong data yang unik akan selalu menghasilkan hash yang sama.
Sebagai contoh, setiap kali string di atas dijalankan melalui fungsi hash, ia akan selalu menghasilkan hash yang sama.
Namun, apa yang terjadi jika kita membuat perubahan kecil pada string tersebut? (Disorot dengan warna kuning).
Kalimat tersebut diakhiri dengan tanda tanya, bukan titik.
Meskipun hanya ada perubahan KECIL pada kalimat tersebut, hash-nya SAMA SEKALI berbeda.
Anda dapat melihat bagaimana penggunaan hash dapat digunakan untuk mendeteksi gangguan karena bahkan perubahan kecil pada input ke fungsi hash menghasilkan output yang sama sekali berbeda.
Sangat penting bagi Anda untuk mengingat hal ini karena, dalam pelajaran selanjutnya, Anda akan melihat bagaimana hal ini digunakan untuk mencegah transaksi-transaksi sebelumnya dirusak.
Fungsi hash hanya satu arah.
Anda tidak dapat mengambil hash yang sudah ada dan TRY membalikkan hash tersebut untuk menemukan string input.
Jadi, jika yang Anda ketahui hanyalah hash-nya, tidak ada cara untuk mengetahui apa input aslinya. Anda tidak dapat "merekayasa balik" atau meretas hash.
Terakhir, panjang output ("hash") TIDAK bertambah seiring dengan bertambahnya informasi dalam input. Fungsi hash mengambil data input dengan panjang berapapun dan mengembalikan nilai yang memiliki panjang TETAP.
Jika Anda memasukkan seluruh teks buku Harry Potter, yang memiliki lebih dari 76.000 kata, hasil hashnya MASIH hanya akan terdiri dari 64 karakter.
Dan lagi, jika Anda salah mengeja satu huruf saja dalam buku Harry Potter , dan menjalankannya melalui fungsi hash, maka akan menghasilkan hash yang sama sekali berbeda dengan yang di atas.
Hal ini akan memungkinkan Anda untuk langsung mengetahui bahwa buku tersebut telah dimodifikasi tanpa Anda harus memeriksa seluruh buku secara manual! Cukup rapi, bukan?




