今週のニュースレターでは、古いwitnessなしでフルノードを同期させる方法の分析を共有しています。 また、コンセンサスの変更に関する議論や、新しいリリースとリリース候補の発表、 人気のBitcoinインフラストラクチャソフトウェアの注目すべき更新など、 恒例のセクションも含まれています。

ニュース

  • witnessなしのフルノードの同期: Jose SKは、 特定の設定で新しく起動したフルノードが、過去のブロックチェーンデータのダウンロードを回避した場合の セキュリティ上のトレードオフについての分析の要約をDelving Bitcoinに投稿しました。 Bitcoin Coreはデフォルトで、実行中のBitcoin Coreのバージョンのリリースより1〜2ヶ月以上前に作成されたブロックについて、 ブロック内のスクリプトの検証をスキップするassumevalid設定を使用しています。 またデフォルトでは無効になっていますが、多くのBitcoin Coreユーザーは、 ブロックの検証後しばらくしてからそのブロックを削除するprune設定を使用しています( ブロックの生存期間はブロックのサイズとユーザーが選択した設定によって異なります)。

    SKは、スクリプトの検証に使用されず最終的に削除されるため、 プルーニングノードはassumevalidの対象のブロックについて、 スクリプトの検証にだけ使われるwitnessデータをダウンロードしなくていいと主張しています。 witnessのダウンロードをスキップすることで、「帯域幅の使用量を40%以上削減できる」 と書いています。

    Ruben Somsenは、これは少なくともセキュリティモデルに何ら化の変化をもたらすと主張しています。 スクリプトは検証されませんが、ダウンロードされたデータはブロックヘッダーのマークルルートから コインベーストランザクション、そしてwitnessデータを含むコミットメントに対して検証されます。 これにより、ノードが最初に同期された時点でデータが利用可能であり、 破損していないことが保証されます。もし誰もデータの存在を定期的に検証しなければ、 少なくとも1つのアルトコインで発生したように、データが失われる可能性があります。

    記事の執筆時点で、この議論は継続中でした。

コンセンサスの変更

Bitcoinのコンセンサスルールの変更に関する提案と議論をまとめた月次セクション

  • 量子コンピューターに関するレポート: Clara Shikhelmanは、高速な量子コンピューターがBitcoinユーザーにもたらすリスク、 量子耐性への複数のアプローチの概要、 Bitcoinプロトコルのアップグレードに伴うトレードオフの分析について、 Anthony Miltonと共同執筆したレポートをDelving Bitcoinに投稿しました。 著者らは、400万BTCから1000万BTCが量子コンピューターによる盗難の潜在的なリスクにさらされていること、 現在ある程度の緩和策があること、Bitcoinマイニングが短期的または中期的に量子コンピューターの脅威にさらされる可能性は低いこと、 そしてアップグレードには幅広い合意が必要であることを明らかにしています。

  • 没収防止のための例外付きのトランザクションweight制限: Vojtěch Strnadは、ブロック内のほとんどのトランザクションの最大weightを制限するコンセンサス変更のアイディアを Delving Bitcoinに投稿しました。このシンプルなルールは、 ブロック内で400,000 weight単位(100,000 vbyte)を超えるトランザクションは、 そのブロック内でコインベーストランザクションを除いて1つのみ許可するというものです。 Strnadらは、トランザクションの最大weightを制限する理由を次のように述べています:

    • ブロックテンプレートの最適化が容易: ナップサック問題に対する最適解に近い解を見つけるのは、 全体の制限と比較してアイテムが小さいほど容易です。これはアイテムが小さいほど未使用のスペースが少なくなり、 最終的に残るスペースが最小限に抑えられるためです。

    • リレーポリシーの簡素化: ノード間の未承認トランザクションのリレーポリシーは、 帯域幅の浪費を避けるために、どのトランザクションがマイニングされるかを予測します。 巨大なトランザクションは、最上位の手数料率のわずかな変化でも遅延や排除につながる可能性があるため、 正確な予測を難しくします。

    • マイニングの集中化の回避: リレーフルノードがほぼすべてのトランザクションを処理できるようにすることで、 特別なトランザクションのユーザーが帯域外手数料を支払う必要がなくなり、 マイニングの集中化につながるリスクを回避できます。

    Gregory Sandersは、Bitcoin Coreの12年間にわたる一貫したリレーポリシーに基づき、 例外なく最大weight制限をソフトフォークするのが合理的かもしれないと指摘しました。 Gregory Maxwellは、ソフトフォーク前に作成されたUTXOのみを使用するトランザクションについては、 没収を防ぐための例外を認めることができ、また一時的なソフトフォークとすることで、 コミュニティが更新を望まなければ制限を失効させられると付け加えました。

    追加の議論では、大規模なトランザクションを求める当事者(主に短期的にはBitVMのユーザーなど)のニーズと、 彼らが利用可能な代替アプローチがあるかどうかが検討されました。

  • 金額と時間に基づいてUTXOセットからアウトプットを削除する: Robin Linusは、一定期間後に金額の小さいアウトプットをUTXOセットから削除するためのソフトフォークの提案を Delving Bitcoinに投稿しました。このアイディアではいくつかのバリエーションが議論され、 主に以下の2つの代替案が挙げられました:

    • 古くて経済的ではない資金を破棄する: 長期間使われていない少額のアウトプットは使用できなくなります。

    • 古くて経済的ではない資金の使用には存在証明を求める: utreexoや同様のシステムを使用することで、 トランザクションは使用するアウトプットがUTXOセットの一部であることを証明できます。 古くて経済合理性のないアウトプットは、 この証明を含める必要があり、新しくて多額のアウトプットはUTXOセットに引き続き保持されます。

    どちらの解決策も、UTXOセットの最大サイズを実質的に制限します(最小値と2100万ビットコインの制限を想定)。 これを適用するために、より実用的になる可能性のあるutreexo証明の代替案など、 設計の興味深い技術的側面がいくつか議論されました。

リリースとリリース候補

人気のBitcoinインフラストラクチャプロジェクトの新しいリリースとリリース候補。 新しいリリースにアップグレードしたり、リリース候補のテストを支援することを検討してください。

  • Core Lightning 25.05rc1は、この人気のLNノード実装の次期メジャーバージョンのリリース候補です。

  • LND 0.19.1-beta.rc1は、この人気のLNノード実装のメンテナンスバージョンのリリース候補です。

注目すべきコードとドキュメントの変更

最近のBitcoin CoreCore LightningEclairLDKLNDlibsecp256k1Hardware Wallet Interface (HWI)Rust BitcoinBTCPay ServerBDKBitcoin Improvement Proposals(BIP)Lightning BOLTsBitcoin InquisitionおよびBINANAsの注目すべき変更点。

  • Bitcoin Core #32582では、 コンパクトブロックの再構築のパフォーマンスを測定するための新しいログが追加されました。 これは、ノードがピアに要求するトランザクション(getblocktxn)の合計サイズ、 ノードがピアに送信する(blocktxn)トランザクションの数と合計サイズを追跡し、 PartiallyDownloadedBlock::InitData()の開始時にタイムスタンプを追加することで、 mempoolのルックアップ手順のみにかかる時間(高帯域幅モードと低帯域幅モードの両方)を追跡します。 コンパクトブロックの再構築に関する以前の統計レポートについては、ニュースレター#315をご覧ください。

  • Bitcoin Core #31375では、マルチプロセスバイナリである bitcoin nodebitcoind)、bitcoin gui(bitcoinqt)、bitcoin rpcbitcoin-cli -named)をラップして実行する新しいbitcoin -m CLIツールが追加されました。 現在、これらはモノリシックバイナリと同様に機能しますが、 -ipcbindオプション(ニュースレター#320参照)をサポートしています。 ただし、将来の改良により、ノードランナーが異なるマシンや環境でコンポーネントを独立して起動・停止できるようになります。 このPRを取り上げているBitcoin Core PR Review Clubについては、ニュースレター#353をご覧ください。

  • BIPs #1483は、送信者と受信者が暗号化されたPSBTをメッセージの保存と転送のみを行う payjoinディレクトリサーバーに渡す、非同期サーバーレス版であるpayjoin v2を提案する BIP77をマージしました。ディレクトリサーバーは、ペイロードの読み取りや変更ができないため、 どちらのウォレットも公開サーバーをホストしたり、同時にオンラインにしたりする必要はありません。 payjoin v2の詳細については、ニュースレター#264をご覧ください。