MSTR Cat

Blockchain/Tahap III · Rangkaian/3.2 Perlombongan/Pelajaran 5

Templat blok dan Stratum V2

Tugas pengepala, pilihan templat, dan siapa yang memegang pena

BahanSpesifikasi Stratum V2 (stratumprotocol.org)BIP22 dan BIP23

Ingin tahu

  1. Mengapakah pelombong yang mempunyai perkakasan khusus masih bergantung kepada pengendali kolam untuk menentukan transaksi yang dimasukkan ke dalam blok?
  2. Apakah yang membolehkan pelombong dalam kolam memilih transaksi dalam bloknya sendiri sambil masih berkongsi ganjaran kolam?
  3. Bagaimanakah peralihan daripada JSON kepada protokol binari membantu menangani aspek keselamatan dan kecekapan dalam operasi perlombongan berkelajuan tinggi?

Teroka

  1. Sejak protokol ini bermula, setiap blok yang sah memerlukan pilihan transaksi. Pada hari-hari awal, pelombong yang menjalankan nod penuh memilih transaksi ini sendiri. Menjelang tahun 2012, apabila perkakasan menjadi khusus dan mahal, kebanyakan pelombong menyertai kolam. Protokol Stratum, yang diperkenalkan oleh Slush pada tahun itu, menyeragamkan cara pelayan kolam mengagihkan kerja kepada ahlinya. Kolam telah membina blok sejak tahun 2010; Stratum menjadikan susunan itu jauh lebih cekap dan mewarisi pemusatan pembinaan blok yang sedia ada.
  2. Di bawah Stratum V1, pengendali kolam bertindak sebagai arkitek tunggal bagi setiap blok calon. Pelayan mengumpulkan transaksi daripada mempoolnya sendiri, dan menghantar kepada pelombong bahagian-bahagian sesuatu tugas: dua separuh transaksi coinbase, cabang Merkle, hash blok sebelumnya, sasaran dan masa. Pelombong memasukkan extra-nonce sendiri, mengira akar Merkle dan mencari hash yang sah, tetapi tidak mempunyai sebarang suara dalam menentukan transaksi yang dimasukkan.
  3. Seni bina ini memberikan pengendali kolam kuasa yang besar ke atas pemilihan transaksi. Kolam yang mengawal sebahagian besar kadar hash rangkaian boleh menapis transaksi secara berkesan hanya dengan mengecualikannya daripada templatnya. Walaupun kuasa ini jarang digunakan, keupayaan strukturnya tetap wujud. Ini juga bermakna jika pelayan kolam terhenti atau diserang melalui serangan penafian perkhidmatan, semua pelombong yang bersambung dengannya akan terbiar, sekali gus mewujudkan titik kegagalan tunggal bagi pendapatan mereka.
  4. Pada tahun 2012, BIP22 dan BIP23 memperkenalkan `getblocktemplate`, yang membolehkan perisian perlombongan meminta templat blok lengkap daripada nod dan direka supaya ahli kolam dapat membina blok mereka sendiri. Kolam menggunakan getblocktemplate secara dalaman untuk mendapatkan templat daripada nod mereka sendiri, tetapi membenarkan ahli membina blok sendiri merumitkan pengesahan dan perakaunan share, dan hanya sedikit kolam yang menawarkannya (Eligius ialah pengecualian).
  5. Stratum V2, yang dibangunkan mulai tahun 2019 oleh Braiins dan Matt Corallo serta pihak lain, mereka bentuk semula protokol ini untuk menangani isu-isu tersebut. Ia memperkenalkan format binari untuk overhed yang lebih rendah dan penyulitan untuk keselamatan. Paling penting, ia merangkumi Protokol Pengisytiharan Kerja (Job Declaration Protocol). Protokol ini membolehkan pelombong yang menjalankan nod penuh sendiri mengisytiharkan templat bloknya sendiri kepada pelayan kolam. Kolam kemudian menerima share daripada tugas tersuai ini dan membahagikan ganjaran mengikut skim standardnya, manakala pelombong mengekalkan kawalan ke atas kemasukan transaksi.
  6. Usaha alternatif seperti protokol DATUM oleh Ocean (2024) mengejar matlamat yang serupa, iaitu mendesentralisasikan pembinaan templat. Baca bahagian Pengisytiharan Kerja (Job Declaration) dalam spesifikasi Stratum V2 dan bandingkannya dengan cara sebuah kolam yang anda kenali membina templatnya. Di mana protokol ini diguna pakai, pilihan transaksi beralih semula kepada pemilik perkakasan.

Fakta utama

  • Stratum V1, yang diperkenalkan oleh Slush pada tahun 2012, memusatkan proses penciptaan templat blok di tangan pengendali kolam.
  • Dalam Stratum V1, pelombong hanya menerima tugas pengepala dan tidak mempunyai pengaruh terhadap pemilihan transaksi.
  • BIP22/BIP23 (2012) mentakrifkan getblocktemplate; hanya sedikit kolam yang membenarkan ahlinya menggunakannya untuk membina blok mereka sendiri.
  • Stratum V2 (mulai tahun 2019) menggunakan protokol binari dengan penyulitan untuk meningkatkan keselamatan dan kecekapan.
  • Protokol Pengisytiharan Kerja (Job Declaration Protocol) dalam Stratum V2 membolehkan pelombong menghantar templat blok mereka sendiri kepada kolam.
  • Protokol DATUM oleh Ocean (2024) ialah satu lagi usaha yang bertujuan mendesentralisasikan pemilihan transaksi dalam kalangan pelombong berkolam.

Latihan sembilan, enam, tiga, satu

9KumpulSenaraikan 9 keputusan yang terlibat dalam penghasilan sebuah blok (contohnya transaksi yang hendak dimasukkan, mesej coinbase, cap masa, nonce) dan catatkan siapa yang membuat setiap keputusan di bawah Stratum V1.
6KelompokkanKumpulkan 9 itu kepada 6 mengikut siapa yang mengawalnya: kolam, pelombong, perisian nod, peraturan konsensus, kebetulan, atau lain-lain.
3SaringKurangkan 6 kategori tersebut kepada 3 sebab utama mengapa kuasa pemilihan transaksi mempunyai kepentingan dari segi ekonomi dan politik bagi pengeluar blok.
1KristalkanTulis 1 ayat yang menerangkan bagaimana Pengisytiharan Kerja (Job Declaration) dalam Stratum V2 mengubah keseimbangan kuasa antara pengendali kolam dan pelombong individu.

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