Teka-Teki Matematika Proof-of-Work

Teka-Teki Matematika Proof-of-Work

March 1, 2024 Blockchain 0
Teka-Teki Matematika Proof-of-Work

Proof-of-Work (PoW) adalah mekanisme konsensus dalam blockchain yang digunakan untuk mengamankan jaringan dan memvalidasi transaksi dengan cara menyelesaikan teka-teki matematika yang kompleks. Dalam sistem ini, penambang bersaing untuk menemukan solusi dari sebuah persoalan kriptografi, yang membutuhkan daya komputasi tinggi dan proses coba-coba (brute-force). Setelah solusi ditemukan, blok transaksi baru dapat ditambahkan ke rantai, dan penambang yang berhasil diberikan insentif dalam bentuk mata uang kripto. Konsep ini memastikan bahwa memanipulasi data dalam blockchain menjadi sangat sulit dan mahal, sementara verifikasi solusi dapat dilakukan dengan cepat oleh seluruh jaringan.

Teka-teki matematika yang digunakan dalam Proof-of-Work (PoW) pada teknologi blockchain biasanya berbentuk puzzle kriptografi yang harus dipecahkan oleh para penambang untuk mendapatkan hak menambahkan blok baru ke dalam rantai. Berikut adalah contoh teka-teki matematika sederhana yang menggambarkan prinsip di balik PoW:


Teka-Teki Matematika Proof-of-Work:

Diberikan fungsi hash SHA-256, temukan angka X sedemikian rupa sehingga hasil hash dari concatenation “BlockchainX” menghasilkan hash yang dimulai dengan dua nol di depan (“00”).

Formalitas:

Temukan nilai X sehingga:SHA-256(“Blockchain”+X) dimulai dengan “00”

Contoh kode Python untuk penyelesaiannya:

import hashlib

prefix = "00"
base_string = "Blockchain"
X = 0

while True:
    test_string = base_string + str(X)
    hash_result = hashlib.sha256(test_string.encode()).hexdigest()
    
    if hash_result.startswith(prefix):
        print(f"X ditemukan: {X}")
        print(f"Hash: {hash_result}")
        break
    
    X += 1

Berikut adalah keluaran dari program Python di atas:

X ditemukan: 23

Hash: 0015274a73e43de5c3e086b1787dc2339135fefb24c8f41d6494bbea6824a4ee

Nilai X = 23 menghasilkan hash SHA-256 yang dimulai dengan “00”, sesuai dengan tantangan Proof-of-Work yang diberikan

Penjelasan Konsepnya:

  1. Menggunakan fungsi hash kriptografi (dalam hal ini SHA-256) untuk mengenkripsi string.
  2. Menambahkan angka acak (X) ke dalam string dan menghitung hash-nya.
  3. Mencari nilai X yang menghasilkan hash dengan pola tertentu (misalnya, harus dimulai dengan “00”).
  4. Prosesnya bersifat brute-force karena tidak ada cara langsung untuk menemukan X selain mencoba berbagai nilai secara iteratif.
  5. Kesulitan teka-teki bisa disesuaikan dengan menambah jumlah nol di awal hash (contoh: “0000” lebih sulit dibanding “00”).

Bagaimana Ini Berkaitan dengan Proof-of-Work di Blockchain?

  1. Dalam Bitcoin, teka-teki ini disebut sebagai puzzle mining, di mana penambang harus menemukan Nonce (X)yang membuat hash blok memiliki jumlah nol tertentu di depannya.
  2. Meningkatkan kesulitan berarti meningkatkan jumlah nol yang harus dicocokkan di awal hash.
  3. Siapa yang lebih cepat menemukan solusi (nilai X yang sesuai) akan mendapatkan hadiah dalam bentuk cryptocurrency.
  4. Keamanan Blockchain berasal dari fakta bahwa memecahkan teka-teki ini butuh daya komputasi yang besar, tetapi verifikasinya sangat cepat.

Variasi Kesulitan Teka-Teki

  • Mudah: Mencari nilai X agar hash dimulai dengan “00”.
  • Menengah: Mencari nilai X agar hash dimulai dengan “0000”.
  • Sulit (setingkat Bitcoin): Mencari nilai X agar hash dimulai dengan “000000000000000000000000” (sangat sulit, perlu miliaran percobaan).

Teka-teki ini memberikan ilustrasi bagaimana konsep Proof-of-Work bekerja dalam blockchain seperti Bitcoin.

 

Leave a Reply

Your email address will not be published. Required fields are marked *