Materi Teori Blockchain
Diktat komprehensif teori UTS: prinsip kriptografi desentralisasi, hashing SHA-256, struktur blok, pohon Merkle, perbandingan konsensus, ekosistem Ethereum EVM, dan analisis kerentanan smart contract.
1. Kriptografi Hashing SHA-256 & Merkle Tree
Blockchain adalah buku besar terdistribusi (Distributed Ledger Technology / DLT) yang tersusun atas rantai blok data yang dihubungkan secara kriptografis melalui nilai hash blok sebelumnya (PrevHash).
Karakteristik SHA-256 (Secure Hash Algorithm 256-bit):
- Deterministic: Input yang sama pasti menghasilkan digest 256-bit (64 karakter heksadesimal) yang identik.
- Pre-image Resistance (One-Way): Sangat mustahil secara komputasi mencari input
Mjika hanya diketahui nilai hashH(M). - Second Pre-image Resistance: Diberikan
M1, mustahil mencariM2sedemikian rupa sehinggaH(M1) == H(M2). - Collision Resistance: Mustahil mencari dua input acak yang menghasilkan output hash yang sama persis.
- Avalanche Effect: Perubahan 1 bit saja pada input akan mengubah lebih dari 50% bit output hash secara dramatis.
Struktur Merkle Tree (Pohon Hash Biner)
Merkle Tree merangkum seluruh transaksi dalam sebuah blok menjadi satu string tunggal berukuran 32-byte yang disebut Merkle Root.
| Tingkatan Node | Proses Perhitungan Hash | Kegunaan Utama |
|---|---|---|
| Leaf Node (Daun) | H(Tx1), H(Tx2), H(Tx3), H(Tx4) |
Hash dari data transaksi mentah masing-masing. |
| Intermediate Node | H(1-2) = SHA256(H(Tx1) + H(Tx2)) |
Penggabungan dua hash anak (concatenation) lalu di-hash ulang. |
| Merkle Root (Akar) | Root = SHA256(H(1-2) + H(3-4)) |
Disimpan di Header Blok. Memungkinkan verifikasi SPV (Simplified Payment Verification) dengan kompleksitas O(log N) tanpa perlu mengunduh seluruh transaksi. |
2. Mekanisme Konsensus Terdistribusi
Konsensus menjamin seluruh node dalam jaringan peer-to-peer (P2P) mencapai kesepakatan mutlak mengenai satu-satunya versi sejarah buku besar yang sah tanpa otoritas sentral.
| Mekanisme Konsensus | Prinsip Penentuan Pembuat Blok | Kelebihan | Kelemahan & Keamanan |
|---|---|---|---|
| Proof of Work (PoW) (Bitcoin, Dogecoin) |
Miner berlomba memecahkan teka-teki kriptografis: mencari Nonce sedemikian hingga SHA256(SHA256(BlockHeader)) < Target. |
Sangat aman, teruji waktu, true decentralization. | Boros energi listrik (high energy consumption), TPS rendah (Bitcoin ~7 TPS), rentan terhadap 51% Hashrate Attack. |
| Proof of Stake (PoS) (Ethereum 2.0 / The Merge) |
Validator dipilih secara pseudo-acak berbobot berdasarkan jumlah koin yang dijaminkan (staked) dalam kontrak deposit. | Hemat energi (>99.9% reduction), throughput lebih tinggi, mekanisme slashing bagi validator curang. | Rentan masalah "Nothing at Stake" (diatasi dengan slashing protocol), konsentrasi kekayaan pada pemilik modal besar. |
| Delegated Proof of Stake (DPoS) (EOS, TRON) |
Pemilik token memilih sejumlah kecil delegasi (misal 21 Block Producers) untuk memvalidasi transaksi secara bergantian. | Kecepatan transaksi sangat tinggi (ribuan TPS), konfirmasi sub-detik. | Cenderung tersentralisasi (oligarki delegasi), rentan kolusi validator. |
| PBFT (Practical Byzantine Fault Tolerance) (Hyperledger Fabric) |
Voting multi-ronde (Pre-prepare, Prepare, Commit) antar node yang telah teridentifikasi (Permissioned). | Finalitas mutlak instan, toleran hingga f = (N - 1) / 3 node jahat/rusak. |
Tidak scalable ke ribuan node publik karena overhead komunikasi jaringan kuadratik O(N²). |
3. Mining, Halving, & Difficulty Adjustment
Mining & Difficulty Target
Pada jaringan Bitcoin, tingkat kesulitan (difficulty) disesuaikan secara otomatis setiap 2016 blok (~2 minggu). Jika blok ditemukan lebih cepat dari rata-rata 10 menit akibat pertambahan miner, target diturunkan (membuat hash puzzle lebih sulit), dan sebaliknya.
Bitcoin Halving Cycle
Reward blok Bitcoin dipotong 50% setiap 210.000 blok (~4 tahun). Dimulai dari 50 BTC (2009), 25 BTC (2012), 12.5 BTC (2016), 6.25 BTC (2020), dan 3.125 BTC (2024). Menjamin pasokan maksimum Bitcoin tidak akan pernah melebihi 21.000.000 BTC (kebijakan deflasi).
4. Arsitektur Ethereum & Ethereum Virtual Machine (EVM)
Berbeda dari model UTXO (Unspent Transaction Output) pada Bitcoin, Ethereum menggunakan Account-Based Model dan merupakan komputer terdistribusi Turing-Complete.
Tipe Akun Ethereum
- EOA (Externally Owned Account): Dikendalikan oleh private key manusia. Memiliki saldo ETH dan Nonce transaksi. Bebas biaya pembuatan akun.
- Contract Account: Dikendalikan oleh kode bytecode EVM. Memiliki saldo ETH, Nonce, kode smart contract, dan penyimpanan persisten (Storage root).
Mekanisme Gas (Anti Halting-Problem)
- Setiap opcode EVM (ADD, SLOAD, SSTORE) memiliki tarif Gas tetap.
- Gas Limit: Batas maksimum komputasi yang rela dibayar pengirim transaksi.
- EIP-1559: Total Fee =
Units of Gas * (Base Fee + Priority Tip). Base Fee di-burn secara otomatis, mengurangi suplai sirkulasi ETH.
5. Ekosistem Decentralized Finance (DeFi)
Aplikasi finansial tanpa perantara bank yang berjalan di atas protokol blockchain:
- AMM (Automated Market Maker): Bursa terdesentralisasi (DEX seperti Uniswap) yang menggunakan formula produk konstan
x * y = kalih-alih order book terpusat. - Lending Protocols: Pinjam-meminjam terdesentralisasi (Aave, Compound) menggunakan over-collateralization (rasio jaminan lebih besar dari pinjaman) dan liquidator bot.
- Stablecoins: Aset kripto terpatok mata uang fiat (Fiat-backed seperti USDT/USDC, Crypto-collateralized seperti DAI, dan Algorithmic).
6. Kerentanan Keamanan Smart Contract (Vulnerabilities)
1. Reentrancy Attack (Kasus The DAO Hack 2016)
Terjadi ketika kontrak eksternal yang dipanggil melakukan pemanggilan balik (fallback/receive) ke fungsi penarikan dana kontrak pemanggil SEBELUM status saldo pengirim diperbarui.
Solusi: Menerapkan pola Checks-Effects-Interactions atau menggunakan ReentrancyGuard (OpenZeppelin nonReentrant modifier).
2. Integer Overflow / Underflow
Pada Solidity versi sebelum v0.8.0, variabel uint8 dengan nilai 255 yang ditambah 1 akan memutar kembali menjadi 0 tanpa error. Sejak Solidity v0.8+, compiler menyertakan built-in arithmetic overflow check otomatis (revert bila overflow).
3. Front-Running & MEV (Maximal Extractable Value)
Transaksi di Ethereum berada di public mempool sebelum dimasukkan ke dalam blok. Miner/bot dapat melihat transaksi pengguna dan menyelipkan transaksi mereka sendiri dengan Gas Fee yang lebih tinggi untuk mengeksploitasi selisih harga (sandwich attack).