Bitcoin (BTC) Core、限定ブロードキャスト修正を32.x系統にマージ
Bitcoin Coreは10月1日、プライバシー保護の限定ブロードキャスト機能の修正を32.x系統にマージした。安定版31.xへのバックポートはマージ待ちで、31.2の期日は未定。ノード運営者向けの現状と背景を解説する。
修正は32.x系統へ、安定版は対応待ち
安定版を運用するノード運営者がいまだ修正を待つ立場にある。
Bitcoin (BTC) Coreの開発チームは10月1日、プライバシー保護機能である限定プライベートブロードキャストの修正を32.x系統にマージした。だが現行の安定版シリーズである31.xには、この修正が一切取り込まれていない。プルーフオブワークネットワーク上のフルノードの大部分を支えるリファレンス実装がBitcoin Coreであり、そのトラフィック中継方式の変更は、取引所や各種サービス、ウォレットにも波及する。トランザクションのブロードキャストをこうしたノードに依存しているためだ。当該機能はBitcoin Core 31.0で実験的オプションとして搭載されたもので、既定では無効になっている。仕組みとしては、TorやI2Pなどの匿名ネットワーク経由で短命の専用接続を確立し、その接続を通じて生トランザクションを送信する。これにより、取引を最初に受信するピアに対して送信者のIPアドレスが露出しない。今回のパッチが扱う欠陥は、直接的な露出ではなく相関の問題だ。旧来の動作では、専用接続上で不正な挙動を受け取ったノードは、通常接続と同じペナルティをそのピアに適用し、拒否状態とすることができた。このペナルティ状態はノードの外側から観測可能であり、通常ピアへの処分は同じアドレス宛ての他の接続も断ち切る。接続の入れ替わりを監視する観測者は、こうしてプライベートブロードキャスト用接続を同一ノードの通常トラフィックと紐付けられ、機能の目的そのものが失われる。改修後のロジックでは、専用接続を通常の拒否経路から切り離した。専用接続上で不正を行ったピアは依然として切断されるが、通常の処分が同じアドレスの専用接続を巻き込んで切断することはなくなった。10月9日時点の公開開発記録によれば、修正は未リリースの32.0を抱える32.x系統に存在し、31.1を含む安定版シリーズは手つかずのまま待っている。変更対象はリレー関連のコードであって、Bitcoin (BTC)の価格には触れていない。
31.xへのバックポートはマージ未了
マージの履歴は、修正がどうたどり着き、どこで足止めされたかを示す。元のパッチは9月25日に開発マスターへ投入され、10月1日に32.x系統へ到達した。32.0とともにリリースされる予定である。31.xへの直接の移植はクリーンに適用できなかったため、開発者が安定版向けにバックポートを組み直し、9月27日に提案した。レビュー担当者の承認は9月28日、10月6日、10月9日と続いたが、マージ自体は未了で、安定ラインの次のメンテナンス版である31.2についても期日は設定されていない。プロジェクトはマージをすべて公開記録しており、最新の承認からマージまでの空白は公開中のプルリクエストで誰でも確認できる。バージョン構造を押さえれば利害関係は明瞭になる。
Bitcoin (BTC) Coreは番号付きシリーズの中でポイントリリースを出す仕組みで、31.1も今後の31.2も31.x系統に属し、32.0が次のシリーズを開く。32.xにマージされた修正は、バックポートされ、マージされ、リリースされるまで、安定版に固定されたノードには何も及ぼさない。なお、この一連の修正と混同しやすい先行修正がある。Bitcoin Core 31.1はすでに別のプライバシー不具合を修正済みで、それは専用接続が匿名層ではなく通常ネットワークへフォールバックし、ノードのIPアドレスそのものを漏らすというものだった。こちらは直接的な露出である。一方、いま審査待ちのバックポートは、専用接続上のペナルティ挙動を外部観測者がノードの通常接続と結び付け得るという、より間接的な経路を閉じるものだ。31.2が出るまで、安定ブランチを運用するノード運営者はIP漏洩修正を持ちつつ相関問題の修正を持たない。実験的機能を意図的に有効化し、安定版に全修正が含まれていると想定していた利用者にとって、この隙間が最も重くのしかかる。
最後の一手はノード運営者の側に
誰が保護されるかは、順序次第で決まる。Bitcoinはプライバシー関連の変更をノード運営者のペースで進めてきた前例を持つ。Segregated Witnessは活性化後も採用が広がるまで数か月を要し、初めて既定のトランザクション経路になった。限定プライベートブロードキャストも同じ型をたどる。既定ではオフで、有効化する少数派にのみ機能する。31.xでの待機は退行ではないが、安定版の中で機能を有効化した最も慎重でない層の利用者は、31.2がリリースされるまで欠陥のあるペナルティロジック下で運用し続けることになる。プライバシー保護の整備はビットコイン・マキシマリズム系の論者にとって恒常的な優先事項だが、ソフトウェアは世論ではなくマージの日程で動く。いま動いていないのはリリースチームであり、31.x向けパッチがマージされ、31.2の期日が付くまで、安定ブランチにはこの隙間が残る。
AIによって生成され、AIによるレビューを経て、COINOTAGの編集監督のもとで公開されました。

