MSTR Cat

Blockchain/Tahap X · Kitaran penuh/10.3 Hidup dengan bitcoin/Pelajaran 5

Membina di atas Bitcoin

Regtest, deskriptor, dan disiplin semakan awam

BahanKomputer yang menjalankan Bitcoin Core (diumum dan disahkan)Rujukan bitcoin-cli (bitcoin-cli help)Dokumentasi untuk BIP 174 dan BIP 380

Ingin tahu

  1. Mengapa perubahan pada satu baris kod dalam Bitcoin Core memerlukan bulan-bulan perbincangan sebelum ia dapat dikeluarkan dalam versi yang stabil?
  2. Bagaimanakah para pembangun menguji logik yang kritikal untuk mencapai konsensus tanpa mempertaruhkan dana sebenar atau merosakkan rangkaian utama?
  3. Apa perbezaan antara deskriptor dan PSBT, dan mengapa kedua-duanya penting untuk pembangunan dompet moden?

Teroka

  1. Bitcoin Core menyediakan dua persekitaran utama untuk ujian: regtest dan Signet. Regtest membolehkan para pembangun menambang blok dengan segera tanpa memerlukan proses proof-of-work, menjadikannya sesuai untuk ujian unit dan pengubahsuaian cepat terhadap peraturan konsensus. Signet (BIP 325) pula merupakan rangkaian ujian awam di mana setiap blok mesti mempunyai tandatangan daripada penandatang yang ditetapkan; ini memastikan masa penghasilan blok yang tetap dan menghalangnya daripada dipenuhi oleh hashrate yang tinggi. Ia sesuai untuk menguji perisian orang lain tanpa menggunakan wang sebenar.
  2. Antaramuka Remote Procedure Call (RPC) membenarkan akses kepada keadaan dalaman Bitcoin Core oleh skrip luaran. Para pembangun menggunakan arahan RPC untuk mengubah suai rantaian transaksi, memeriksa transaksi, dan melancarkan proses perlombongan dalam mod regtest. Akses berbentuk programatik ini sangat penting untuk membina perisian dompet yang perlu berinteraksi secara langsung dengan struktur data nod, tanpa perlu menggunakan antaramuka pengguna grafik sama sekali.
  3. Penerangan tersebut menentukan cara kunci dijadikan sebagai syarat untuk membuat transaksi, manakala Transaksi Bitcoin yang Ditandatangani Sebahagiannya (PSBT) memudahkan proses penandatanganan oleh pelbagai pihak. BIP 174 telah menyeragamkan format PSBT, membolehkan entiti berbeza—dompet perkakasan, peranti mudah alih, atau pelayan—menambah tandatangan pada sesuatu transaksi tanpa mendedahkan kunci peribadi. Pemisahan pengurusan kunci daripada proses pembinaan transaksi ini sangat penting untuk memastikan keselamatan sistem multisig.
  4. Bitcoin Dev Kit (BDK) dan Lightning Dev Kit (LDK) mengabstrakkan kerumitan pengurusan nod bagi para pembangun aplikasi. BDK ialah perpustakaan Rust untuk dompet berasaskan deskriptor yang boleh membaca data daripada Bitcoin Core, pelayan Electrum atau API Esplora, manakala LDK menyediakan pelaksanaan protokol Lightning Network yang ringan dan sesuai untuk peranti mudah alih. Perpustakaan ini mengurangkan halangan untuk membina aplikasi berasaskan Bitcoin tanpa memerlukan pengetahuan mendalam dalam pengaturcaraan sistem.
  5. Ulasan awam merupakan asas kepada model keselamatan Bitcoin. Perubahan yang dicadangkan melalui pull request akan diteliti dengan teliti oleh komuniti pembangun di seluruh dunia. PR Review Club memudahkan proses ini dengan mengadakan sesi berkala di mana para penyumbang menganalisis perbezaan kod baris demi baris. Kecerdasan kolektif ini membantu mengesan ralat yang halus dan memastikan perubahan yang dipersetujui difahami sepenuhnya sebelum diterima pakai, iaitu proses yang berbeza daripada kitaran pelancaran yang cepat yang biasa digunakan dalam ekosistem perisian lain.
  6. Mulakan rangkaian peribadi: jalankan bitcoind -regtest -daemon, cipta dompet menggunakan bitcoin-cli -regtest createwallet dev, dan lombong 101 blok ke salah satu alamatnya dengan generatetoaddress supaya coinbase pertama matang. Bina transaksi pembayaran menggunakan walletcreatefundedpsbt, baca ia dengan decodepsbt, kemudian tandatangan dan siarkan ia dengan walletprocesspsbt serta sendrawtransaction. Lombong satu blok lagi dan perhatikan pengesahannya.

Fakta utama

  • Regtest membenarkan perlombongan blok secara segera tanpa keperluan proof-of-work untuk ujian terpencil.
  • Blok Signet (BIP 325) mesti ditandatangani menggunakan kunci yang ditetapkan, sekaligus menghasilkan rangkaian ujian awam yang stabil.
  • BIP 174 menentukan format Transaksi Bitcoin yang Disign Sebahagiannya (PSBT) untuk aliran kerja penandatanganan pelbagai pihak.
  • Penerangan skrip dalam BIP 380 menentukan laluan penghasilan kunci dan syarat perbelanjaan untuk dompet.
  • Bitcoin Dev Kit (BDK) ialah perpustakaan Rust untuk membina dompet berasaskan penerangan pada pelbagai backend rantai.
  • Semakan permintaan tarik balik awam memastikan perubahan yang dipersetujui melalui penelitian yang ketat dan berlapis sebelum dikeluarkan.

Latihan sembilan, enam, tiga, satu

9KumpulKenal pasti 9 komponen berbeza dalam ekosistem pembangunan Bitcoin: regtest, Signet, Mainnet, antaramuka RPC, descriptors, PSBTs, BDK, LDK, dan PR Review Club. Untuk setiap satu, nyatakan tujuan utamanya dalam kitaran hayat perisian.
6KelompokkanKumpulkan 9 komponen ini kepada 6 kategori mengikut fungsinya: ujian peribadi, ujian awam, antaramuka nod, standard dompet, perpustakaan pembangunan, dan semakan.
3SaringKurangkan 6 kumpulan tersebut kepada 3 prinsip asas yang mengatur pembangunan perisian Bitcoin: pengasingan untuk keselamatan, penseragaman untuk keserasian, dan ketelusan untuk keamanan.
1KristalkanPSBT diperlukan kerana dompet perkakasan yang tidak dapat bersambung secara langsung ke nod rangkaian memerlukan cara untuk berkomunikasi.

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