SHA-256 (Secure Hash Algorithm 256) adalah fungsi hash kriptografi yang mengambil input dari ukuran acak dan menghasilkan output dari ukuran tetap. Fungsi hash sangat kuat karena mereka 'satu arah'. Artinya, adalah mungkin bagi siapa saja untuk menggunakan fungsi hash untuk menghasilkan output ketika diberi input; Namun, tidak mungkin untuk menggunakan output dari fungsi hash untuk merekonstruksi input yang diberikan. Fitur kuat dari fungsi hash SHA-256 ini membuatnya ideal untuk aplikasi dalam jaringan Bitcoin .
Fungsi hash SHA-256 digunakan dalam jaringan Bitcoin dalam dua cara utama:
- Pertambangan
- Pembuatan addressess Bitcoin
Pertambangan
Penambangan adalah proses dimana koin baru dimasukkan ke dalam pasokan beredar protokol Bitcoin yang ada, serta metode yang digunakan untuk mengamankan jaringan Bitcoin.
Untuk seseorang yang memenuhi syarat untuk menambahkan blok ke blockchain Bitcoin, mereka harus terlebih dahulu mengoperasikan apa yang dikenal sebagai simpul penambangan . Setelah berhasil membuat simpul penambangan, seseorang kemudian dapat mulai membangun blok kandidat yang kemudian diteruskan ke jaringan Bitcoin untuk diperiksa validitasnya. Di dalam blok adalah apa yang dikenal sebagai header blok ; untuk membangun blok ada 6 parameter yang harus diisi oleh penambang. Ini termasuk:
- Versi - Nomor versi perangkat lunak Bitcoin
- Blok hash sebelumnya - Referensi ke hash dari blok sebelumnya
- Merkle Root - Hash representatif dari semua transaksi yang termasuk dalam blok
- Stempel waktu - Waktu di mana blok dibuat
- Target - Algoritma kerja-bukti untuk blok
- Nonce - Variabel yang digunakan dalam proses proof-of-work

Seperti dapat dilihat dari gambar di atas, agar penambang dapat menghasilkan parameter blok hash sebelumnya , header blok dari blok sebelumnya harus dimasukkan melalui algoritma SHA-256 dua kali , ini juga dikenal sebagai double-SHA-256. Itu adalah:
Blok Sebelumnya Hash = SHA-256 (SHA-256 (Block Header))
Algoritma SHA-256 juga digunakan untuk menghasilkan akar merkle, yang kemudian dimasukkan ke header blok. Penjelasan komprehensif tentang aspek protokol Bitcoin ini dapat ditemukan di sini: Merkle Tree & Merkle Root Dijelaskan .
Setelah berhasil membangun blok, penambang sekarang dapat memulai proses penambangan, di mana kasus penggunaan lain dari algoritma SHA-256 akan muncul dengan sendirinya. Dalam contoh ini, satu parameter header blok, nonce , adalah variabel yang diubah berulang kali, dan setelah hashing header blok menggunakan fungsi SHA-256, jika hash di bawah target, penambang dianggap sebagai berhasil
Misalnya, jika nonce memiliki variabel "12345", ini akan ditempatkan di header blok bersama 5 parameter lainnya yang tercantum di atas. Header blok kemudian akan di-hash, namun, jika hash yang dihasilkan terbukti di atas target, penambang harus mencoba lagi. Penambang kemudian dapat mengubah nonce ke variabel lain, misalnya "90872", dan letakkan ini di dalam header blok, dengan 5 parameter lainnya tetap konstan. Hash yang dihasilkan terbukti berada di bawah target, dengan demikian, blok penambang kemudian diteruskan ke jaringan untuk memastikan bahwa itu valid.
Pembuatan alamat Bitcoin
Untuk menghasilkan alamat Bitcoin, kunci pribadi , yang merupakan nomor yang dipilih secara acak, dikalikan menggunakan kurva elips untuk menghasilkan kunci publik. Kunci publik ini kemudian dimasukkan melalui algoritma hashing SHA-256 dan RIPEMD160 .
Di mana K = kunci publik dan A = alamat Bitcoin:
A = RIPEMD160 (SHA-256 (K))
Penggunaan algoritma hashing SHA-256 dan RIPEMD160 untuk pembuatan alamat Bitcoin memiliki satu keuntungan berbeda:
- Alamat yang lebih pendek
Alamat lebih pendek: Kunci publik panjangnya 256 bit, sedangkan versi hash, yaitu alamat Bitcoin, panjangnya 160 bit. Ini membuatnya jauh lebih nyaman bagi pengguna untuk menggunakan karena panjang karakter yang lebih pendek.
Kesimpulan
Untuk menyimpulkan, algoritma hashing SHA-256 adalah bagian integral dari protokol Bitcoin. Ini telah terlihat implementasi dalam berbagai aspek teknologi seperti: penambangan bitcoin, pohon merkle dan penciptaan alamat Bitcoin.
Inilah daftar koin yang memiliki algoritma SHA 256
Komentar
Posting Komentar