Pohon Merkle: Integritas Transaksi dalam Skala Besar
Bangun pohon Merkle dan buat pembuktian inklusi secara efisien.
Pohon Merkle: Integritas Transaksi dalam Skala Besar adalah pelajaran Cryptology Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Cryptology Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Cryptology Academy mencakup 4 pelajaran total.
Masalah: Memverifikasi Transaksi secara Efisien
Blok Bitcoin memuat ~2000 transaksi. Untuk membuktikan transaksi T disertakan tanpa mengunduh seluruh 2000 transaksi, kita memerlukan bukti ringkas. Pohon Merkle mengatasi ini: ukuran bukti = hash O(log n), bukan transaksi O(n).
Konstruksi Pohon Merkle
Daun: SHA256d (SHA-256 ganda) dari setiap transaksi. Induk: SHA256d(left_child_hash || right_child_hash). Ulangi hingga tersisa satu hash akar. Jika jumlah simpul ganjil, gandakan simpul terakhir. Akar tersebut adalah akar Merkle yang disimpan di kepala blok (32 byte).
Akar Merkle dengan Python
import hashlib def sha256d(x): return hashlib.sha256(hashlib.sha256(x).digest()).digest() def merkle_root(txids): if len(txids)%2: txids.append(txids[-1]) while len(txids)>1: txids=[sha256d(txids[i]+txids[i+1]) for i in range(0,len(txids),2)] return txids[0].hex()
Bukti Merkle (Bukti Inklusi)
Untuk membuktikan transaksi T berada di posisi i: berikan hash saudara pada setiap tingkat, dari daun T ke akar (hash O(log n)). Verifikator menghitung ulang akar dari T dan jalur saudara. Jika akar hasil perhitungan cocok dengan akar Merkle pada kepala blok, T terbukti disertakan.
Contoh Ukuran Bukti
1024 transaksi → bukti Merkle = 10 hash = 320 byte. Blok penuh = ~1 MB. Klien SPV hanya mengunduh kepala 80 byte + bukti Merkle 320 byte untuk setiap transaksi yang diperlukan — penghematan bandwidth 99.97% dibandingkan mengunduh blok penuh.
Deteksi Manipulasi
Jika transaksi mana pun dalam pohon berubah, hash daunnya berubah, lalu perubahan itu merambat ke atas dan mengubah akar Merkle. Akar yang berubah tidak lagi cocok dengan kepala blok (yang disegel oleh PoW). Setiap perubahan dapat dideteksi dengan menghitung akar dari transaksi.
Trie Merkle Patricia (Ethereum)
Ethereum memperluas pohon Merkle dengan trie (Trie Merkle Patricia): trie radix berkode awalan heksadesimal yang setiap simpulnya di-hash dengan Merkle. Digunakan untuk: trie status (saldo akun), trie transaksi, trie tanda terima. Memungkinkan pembuktian status akun secara efisien tanpa data simpul penuh.
Rentang Pegunungan Merkle
Rentang Pegunungan Merkle (MMR) adalah struktur Merkle yang hanya dapat ditambahi untuk data seperti catatan. Elemen baru ditambahkan; puncak (akar subtree berukuran pangkat 2) dipertahankan. Digunakan di Grin/MimbleWimble dan ZCash untuk bukti ringkas yang efisien atas catatan yang hanya dapat ditambahi.
Pohon Verkle
Pohon Verkle menggantikan pohon Merkle dalam peta jalan Ethereum (EIP-6800): gunakan komitmen vektor (komitmen polinomial KZG), bukan hash. Ukuran bukti: O(1) dibandingkan O(log n) untuk Merkle. Memungkinkan klien tanpa status memverifikasi status tanpa menyimpan trie lengkap.
Transparansi Sertifikat sebagai Catatan Merkle
Transparansi Sertifikat (RFC 6962) menggunakan catatan Merkle yang hanya dapat ditambahi: setiap sertifikat yang diterbitkan CA adalah daun. Bukti inklusi memverifikasi bahwa sertifikat telah dicatat. Bukti konsistensi memverifikasi bahwa catatan hanya ditambahi (tanpa penghapusan atau penyisipan). Vendor peramban memverifikasi SCT melalui catatan ini.
Model Objek Git
Pohon Git (cuplikan direktori) adalah pohon Merkle: setiap simpul pohon menghitung hash objek data berkas dan subtree-nya. Hash komit secara unik mengidentifikasi keadaan seluruh basis kode. Inilah sebabnya git checkout
Pemeriksaan Singkat
Berapa banyak hash yang diperlukan oleh bukti Merkle untuk membuktikan inklusi dalam pohon dengan 1024 daun?
Ringkasan
Pohon Merkle memungkinkan bukti inklusi O(log n). Bitcoin menyimpan akar Merkle di kepala blok; klien SPV menggunakan bukti. Ethereum memperluasnya menjadi Trie Merkle Patricia. Pohon Verkle akan menggantikan pohon Merkle untuk bukti O(1). Berikutnya: penambangan Bukti Kerja dan kesulitan.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Pohon Merkle: Integritas Transaksi dalam Skala Besar” gratis?
Ya — teks lengkap “Pohon Merkle: Integritas Transaksi dalam Skala Besar” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Cryptology Academy, upgrade ke CoddyKit PRO. Kursus Cryptology Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Pohon Merkle: Integritas Transaksi dalam Skala Besar”?
Bangun pohon Merkle dan buat pembuktian inklusi secara efisien. Kamu berlatih Cryptology Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Cryptology Academy?
Tidak diperlukan pengalaman sebelumnya. Cryptology Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Pohon Merkle: Integritas Transaksi dalam Skala Besar” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Cryptology Academy ini?
Ya. Setiap pelajaran Cryptology Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Rantai Hash & Penautan Blok
- Pohon Merkle: Integritas Transaksi dalam Skala Besar
- Bukti Kerja: Penambangan & Penyesuaian Kesulitan
- Skrip Bitcoin & Verifikasi Tanda Tangan UTXO