MSTR Cat

Blockchain/Tahap IV · Kedalaman protokol/4.2 Naik taraf/Pelajaran 1

Taproot dan tandatangan Schnorr

Kunci yang menyembunyikan kontrak, dan tandatangan yang muat di dalam poket

BahanPenjelajah blok yang boleh memaparkan hex transaksi mentahDompet yang menyokong alamat Taproot (bc1p)Dokumen spesifikasi BIP341 dan BIP340

Ingin tahu

  1. Mengapa perjanjian pelbagai pihak yang kompleks kelihatan sama seperti pembayaran individu yang mudah di blockchain?
  2. Bagaimanakah beberapa kunci peribadi boleh digabungkan menjadi satu kunci awam tanpa pernah mendedahkan kewujudannya kepada pemerhati?
  3. Apakah sifat matematik yang membolehkan tandatangan daripada sepuluh orang tidak dapat dibezakan daripada tandatangan seorang individu sahaja?

Teroka

  1. Sebelum Taproot, syarat perbelanjaan yang kompleks didedahkan sepenuhnya setiap kali syiling dibelanjakan (dan, bagi skrip bare, terletak dalam output itu sendiri): perbelanjaan multisig menunjukkan kunci setiap peserta, timelock menunjukkan tempohnya, dan hashlock menunjukkan strukturnya. Ketelusan awam ini menimbulkan risiko privasi bagi pengguna canggih dan membebankan ruang blok dengan data berlebihan. Rangkaian menganggap semua skrip sebagai buku terbuka, memaksa susunan yang kompleks menyiarkan logik penuhnya kepada setiap nod dan pemerhati.
  2. Taproot (BIP341) mengubah model komitmen. Kini sesuatu output merujuk kepada satu kunci awam 32 bait, Q, yang dikira sebagai P + t·G. Di sini, P ialah kunci dalaman yang dikawal oleh pembelanja utama, manakala t membuat komitmen kepada akar Merkle bagi pokok pilihan yang mengandungi skrip alternatif. Di rantaian, output ini kelihatan seperti mana-mana pembayaran berkunci tunggal, sekali gus menyembunyikan apa jua kerumitan di sebaliknya.
  3. Tandatangan Schnorr (BIP340) menjadi asas kecekapan ini. Tidak seperti ECDSA yang menggunakan pengekodan DER berpanjang boleh ubah dengan purata 71–72 bait, Schnorr menghasilkan tandatangan bersaiz tetap 64 bait (65 bait dengan jenis hash tandatangan bukan lalai). Saiz tetap ini memudahkan penghuraian (parsing) dan mengurangkan berat transaksi. Sifat linear skema Schnorr juga membolehkan pengagregatan kunci: dengan protokol seperti MuSig2, beberapa kunci awam boleh digabungkan menjadi satu kunci agregat, membolehkan sekumpulan pihak menandatangani seolah-olah mereka satu entiti tanpa mendedahkan peserta individu.
  4. Perbelanjaan dilakukan melalui dua laluan yang berbeza. Dalam laluan kunci, semua pihak bekerjasama dan menandatangani menggunakan kunci agregat mereka; transaksi yang terhasil tidak dapat dibezakan daripada mana-mana pembayaran biasa berkunci tunggal. Tiada skrip didedahkan dan tiada data tambahan dilampirkan. Ini memelihara privasi bagi penutupan secara kerjasama saluran Lightning atau dompet multisig, memastikan susunan kewangan yang kompleks tidak membocorkan metadata ke lejar awam blockchain.
  5. Jika kerjasama gagal, laluan skrip diaktifkan. Pembelanja mendedahkan satu daun tertentu daripada pokok Merkle berserta bukti keahliannya. Cabang yang tidak digunakan kekal tersembunyi, sekali gus memelihara privasi syarat-syarat alternatif. Mekanisme ini, yang dikenali sebagai Merkelized Abstract Syntax Trees (MAST), membolehkan pelbagai peraturan perbelanjaan—seperti pengeluaran tertangguh atau kunci kecemasan—wujud bersama dalam satu output tanpa didedahkan sehingga benar-benar perlu.
  6. Kesan praktikalnya ketara. Alamat Taproot bermula dengan ‘bc1p’. MuSig2 (BIP327) menyeragamkan pengagregatan kunci, membolehkan multisig yang saling boleh beroperasi merentas pelbagai pembekal dompet. Skim ambang (threshold) seperti FROST sedang dibangunkan untuk tujuan yang serupa. Pada November 2021, pada blok 709,632, rangkaian menerima pakai struktur ini, menjadikan skrip kompleks lebih kecil, lebih murah dan peribadi secara lalai apabila digunakan secara kerjasama.

Fakta utama

  • Taproot (BIP341) diaktifkan pada bulan November 2021 pada blok 709,632.
  • Output Taproot membuat komitmen kepada satu kunci, Q = P + t·G, dengan t ialah hash bertag bagi P dan, jika ada, akar pokok skrip.
  • Tandatangan Schnorr (BIP340) mempunyai saiz tetap sebanyak 64 bait, sekali gus menghapuskan beban pengkodan DER.
  • Perbelanjaan laluan kunci tidak menunjukkan sebarang skrip dan tidak dapat dibezakan daripada pembayaran menggunakan kunci tunggal.
  • Perbelanjaan melalui laluan skrip hanya mendedahkan daun skrip tertentu yang digunakan, manakala cabang-cabang lain kekal tersembunyi.
  • MuSig2 (BIP327) membolehkan pengagregatan kunci n-of-n untuk dompet multisig yang saling boleh beroperasi.

Latihan sembilan, enam, tiga, satu

9KumpulSenaraikan 9 jenis syarat perbelanjaan atau skrip Bitcoin berbeza yang wujud sebelum Taproot. Catatkan kebocoran privasi khusus atau penalti saiz yang berkaitan dengan setiap satu di rantaian (on-chain).
6KelompokkanKumpulkan 9 syarat tersebut ke dalam 6 kategori berdasarkan cara ia dikendalikan dalam output Taproot: disembunyikan sepenuhnya melalui laluan kunci, didedahkan hanya apabila berlaku pertikaian, digabungkan melalui MuSig2, atau perubahan struktur yang lain.
3SaringKurangkan 6 kluster tersebut kepada 3 sebab utama mengapa menyembunyikan skrip di sebalik satu kunci dapat meningkatkan kecekapan rangkaian dan privasi pengguna.
1KristalkanTulis satu ayat yang menerangkan bagaimana struktur pokok Merkle dalam Taproot membolehkan perjanjian kewangan yang kompleks tanpa pendedahan terma-termanya kepada umum.

Semakan fakta

Tarikh, angka dan dakwaan telah disemak berbanding dengan sumber yang diterbitkan yang disenaraikan di bawah.

Buka dalam akademi interaktif →

EN PT ES ZH JA KO RU DE FR