This article has been translated from English to Indonesian.

Sebelum masuk ke dalam topik penambangan Bitcoin, kita perlu mengambil jalan memutar dan belajar tentang konsep tertentu yang menjadi dasar dari mata uang kripto.

Untuk benar-benar memahami cara kerja Bitcoin dan mata uang kripto lainnya, sangat penting untuk terlebih dahulu memahami konsep "hashing".

Ketika Anda melihat kata "hash", beberapa orang mungkin berpikir tentang hash browns, makanan sarapan populer di Amerika, sementara orang lain seperti Snoop Dogg, mungkin berpikir tentang produk konsentrat ganja. 🌿

Wrong kind of hash

Dalam pelajaran ini, saya akan berbicara tentang jenis hash yang berbeda!

Ini adalah konsep teknis, tetapi Anda pasti sudah familiar, jadi saya akan menjabarkannya untuk Anda dengan mudah.

Pemahaman tentang konsep hashing juga diperlukan untuk memahami cara kerja penambangan Bitcoin (yang merupakan panduan selanjutnya) jadi jangan lewatkan pelajaran ini. 👁️

Apa yang dimaksud dengan hashing?

Hashing adalah sebuah metode kriptografi yang mengubah segala bentuk data menjadi sebuah string teks yang unik dengan panjang yang tetap.

Kriptografi adalah praktik dan studi tentang teknik komunikasi yang aman dari pengamat luar. Di era internet, kriptografi digunakan untuk melindungi informasi atau "data" komputer.

Jika belum jelas, "crypto" dalam mata uang digital adalah singkatan dari kriptografi.

Hashing adalah bagian mendasar dari kriptografi. Dan memainkan peran besar di balik "crypto" dalam mata uang kripto.

Secara sederhana, hashing berarti memasukkan teks dengan panjang APAPUN melalui fungsi hash yang menghasilkan output dengan panjang TETAP.

Hash Function

Setiap bagian dari data dapat"di-hash", tidak peduli ukuran, jenis, atau panjangnya.

Hash yang dihasilkan selalu memiliki panjang yang sama.

Pada contoh di bawah ini, dengan menggunakan fungsi hash SHA-1, berapa pun panjang "input", "output" selalu sepanjang 40 karakter.

Hashing Example - Hello

Hashing Example - BabyPips.com

Hashing Example - i

Berikut ini adalah perbandingan singkat dari ketiga contoh tersebut:

Masukan Hash
Halo f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
BabyPips.com 8c8780d0b70c5ef42a534846cc042629cf07a440
I ca73ab65568cd125c2d27a22bbd9e863c10b675d

Perhatikan bahwa meskipun "input" bervariasi, ketiga hash tersebut masih memiliki panjang 40 karakter.

Dalam contoh khusus ini, panjang tetapnya adalah 40 karakter, yang ditentukan oleh fungsi hash tertentu yang digunakan ("SHA-1 "), yang akan dijelaskan nanti.

Untuk saat ini, ketahuilah bahwa fungsi hash lainnya mungkin menghasilkan panjang tetap yang berbeda. Sebagian besar memiliki panjang tetap yang lebih panjang dari 40 karakter.

Hash bertindak sebagai sidik jari digital.

Sepotong data yang unik akan selalu menghasilkan hash yang sama.

Sebagai contoh, jika Anda menjalankan "Hello" sejuta kali melalui fungsi hash, hash di atas adalah yang akan muncul sejuta kali.

Untuk kata "Hello", hash SHA-1-nya akan selalu sama:

f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0

Dan hanya "Hello" yang akan menghasilkan hash tersebut.

Perubahan apa pun pada "Hello" meskipun hanya mengubahnya menjadi "hello" dan fungsi hash akan menghasilkan nilai hash yang sama sekali berbeda.

Inilah sebabnya mengapa hash dikenal sebagai"sidik jari" digital.

Sama seperti sidik jari Anda yang unik untuk Anda, hash juga unik untuk input data tertentu.

A hash is like a fingerprint

Hash tidak dapat dibalik.

Masukan ke dalam fungsi hash disebut"preimage" Tetapi untuk mempermudah, saya hanya akan menggunakan kata "input".

KELUARAN dari fungsi hash disebut"nilai hash" atau "intisari"atau hanyasebagai "hash".

Fungsi hash didesain untuk bekerja secara satu arah.

Hash Function is One-Way

Karena fungsi hash adalah fungsi satu arah, output, "hash", tidak dapat digunakan untuk mengungkapkan input, "gambar awal".

Ini berarti bahwa jika yang Anda lihat hanyalah hash, Anda TIDAK akan dapat menguraikan data asli ("gambar awal") yang diwakili oleh hash.

Fungsi hash menghasilkan hash yang tidak dapat diubah.

Tidak dapat dipulihkan berarti bahwa jika Anda hanya memiliki hash, Anda tidak dapat menggunakannya untuk mencari tahu apa bagian data aslinya. Hal ini memungkinkan data asli tetap aman dan tidak diketahui.

Apa yang dimaksud dengan fungsi hash?

Fungsi hash adalah operasi matematika yang mengubah data input dengan panjang yang berubah-ubah menjadi output dengan panjang tetap yang dieksekusi menggunakan algoritme tertentu.

Algoritma hanyalah seperangkat instruksi langkah demi langkah untuk melakukan penghitungan yang dilakukan oleh program perangkat lunak.

Tidak masalah jika inputnya adalah satu huruf, satu kata, satu kalimat penuh, satu halaman dari sebuah buku, atau satu buku penuh, Itu adalah bagian yang sewenang-wenang.

Setiap input akan menghasilkan output unik yang dinyatakan sebagai string alfanumerik dengan panjang tetap.

Alfanumerik berarti sesuatu yang terdiri dari huruf dan angka.

Fungsi hash berguna untuk menyembunyikan petunjuk apa pun tentang seperti apa bentuk masukannya.

Sebagai contoh, tidak mungkin untuk menentukan apakah masukannya panjang atau pendek atau berisi angka atau huruf. Selain itu, mengubah satu karakter saja pada input akan menghasilkan output yang sangat berbeda.

Fungsi Hash yang Populer

Semua fungsi hash bekerja dengan cara yang sama. Anda memasukkan data, dan fungsi hash "mengacak" data dan mengeluarkan hash.

Fungsi-fungsi hash yang umum meliputi:

  • MD-5: Message Digest 5 (MD5) adalah fungsi hash yang umum. Di masa lalu, fungsi ini dianggap aman, tetapi saat ini, para peretas telah menemukan cara memecahkan algoritme ini dan dapat melakukannya dalam hitungan detik.
  • SHA: Secure Hash Algorithm (SHA) adalah jenis fungsi hash lainnya. Ada beberapa variasi SHA yang dikelompokkan ke dalam empat keluarga: SHA-0, SHA-1, SHA-2, dan SHA-3: Secara umum, semakin tinggi angkanya, semakin baru rilisnya dan semakin aman algoritmanya.

Untuk tujuan kita, satu-satunya fungsi hash yang perlu Anda ketahui saat ini adalah Secure Hash Algorithm (SHA). Lebih khusus lagi, keluarga SHA-2 karena memiliki anggota khusus dalam keluarga ini yang bernama SHA-256.

SHA-256 adalah fungsi hash yang mengubah sebuah string teks menjadi string lain yang panjangnya selalu sama: 64 karakter alfanumerik. Ini setara dengan 256 bit, yang merupakan asal kata "256" pada namanya.

Fungsi ini spesial karena merupakan fungsi hash yang digunakan di beberapa bagian sistem Bitcoin, yang akan Anda pelajari di pelajaran selanjutnya. Untuk saat ini, penting untuk mengetahui bahwa SHA-256 adalah salah satu jenis fungsi hash yang digunakan oleh Bitcoin.

Baik inputnya adalah sebuah halaman dari buku Harry Potter atau seluruh seri buku Harry Potter, output dari fungsi hash SHA-256 akan selalu memiliki panjang yang SAMA, yaitu 64 karakter alfanumerik.

Sekarang mari kita lihat bagaimana cara kerja hashing dalam mata uang kripto.