/ home / newsletters /
Bitcoin Optech Newsletter #360
今週のニュースレターでは、P2Pプロトコルのメッセージを使ったフルノードのフィンガープリンティングに関する研究と、
BIP380のディスクリプター仕様におけるBIP32パスでH
のサポートを削除する可能性についてのフィードバックについて掲載しています。
また、Bitcoin Stack Exchangeで人気の質問とその回答のまとめや、
新しいリリースとリリース候補の発表、人気のBitcoinインフラストラクチャソフトウェアの注目すべき更新など
恒例のセクションも掲載しています。
ニュース
-
●
addr
メッセージを使用したノードのフィンガープリンティング: Daniela Brozzoniは、 開発者のNaiyomaと共に行った研究についてDelving Bitcoinに投稿しました。 この研究では、ノードが送信するaddr
(アドレス)メッセージを使用して、 複数のネットワーク上で同じノードを識別することができました。 ノードは、P2Pプロトコルのaddr
(アドレス)メッセージをピアに送信することで、 他の潜在的なノードをアナウンスし、ピアが分散型のゴシップシステムを使用してお互いを見つけられるようにしています。 しかし、BrozzoniとNaiyomaは、個々のノード固有のアドレスメッセージの詳細を使ってフィンガープリンティングを行い、 複数のネットワーク(IPv4とTorなど)上で動作する同一ノードを識別することに成功しました。研究者らは、2つの可能な緩和策を提案しています: アドレスメッセージからタイムスタンプを削除するか、 タイムスタンプを残す場合は、特定のノードに固有にならないようにタイムスタンプをわずかにランダム化することです。
-
● ディスクリプターで
H
を使用しているソフトウェアはありますか? Ava Chow は、 強化導出のBIP32鍵導出ステップを示すために大文字のHを使ってディスクリプターを生成するソフトウェアがあるかどうかを Bitcoin-Devメーリングリストで尋ねました。もしない場合は、 アウトプットスクリプトディスクリプターのBIP380仕様は、 強化導出を示すために小文字のhと'
のみを使用するように変更される可能性があります。 Chowは、BIP32では大文字のHが許可されているものの、BIP380には以前、 大文字のHの使用を禁止するテストが含まれており、Bitcoin Coreは現在大文字のHを受け入れていないことを指摘しています。
Bitcoin Stack Exchangeから選ばれたQ&A
Bitcoin Stack ExchangeはOptech Contributor達が疑問に対して答えを探しに(もしくは他のユーザーの質問に答える時間がある場合に)アクセスする、 数少ない情報ソースです。この月刊セクションでは、前回アップデート以降にされた、最も票を集めた質問・回答を紹介しています。
-
● Bitcoin Knotsノードをピアとしてブロックする方法はありますか? Vojtěch Strnadは、Bitcoin Coreの2つのRPCを使って ユーザーエージェントの文字列に基づいてピアをブロックする方法を提供していますが、 この方法は推奨されておらず、同様の非推奨事項を指摘する関連するBitcoin CoreのGitHubの課題も示されています。
-
● OP_CATは整数をどのように処理しますか? Pieter Wuilleは、Bitcoin Scriptのスタック要素にはデータの型情報が含まれておらず、 opcodeによってスタック要素のbyteの解釈方法が異なると指摘しています。
-
● コンパクトブロックリレーによる非同期ブロックリレー(BIP152)について ユーザーbca-0353f40eは、Bitcoin Coreのコンパクトブロックの処理を概説し、 欠落したトランザクションがブロックの伝播に与える影響を推定しています。
-
● セルフィッシュマイニングにおける攻撃者の収益がハッシュパワーに不相応なのはなぜですか? Antoine Poinsotは、これと別の 古いセルフィッシュマイニングの質問をフォローアップし、 「難易度調整はステイルブロックを考慮しないため、競合するマイナーの実効ハッシュレートを下げると、 (十分に長い時間スケールで)自身のハッシュレートを増加させるのと同じくらいマイナーの利益を増加させる」 と指摘しています(ニュースレター #358参照)。
リリースとリリース候補
人気のBitcoinインフラストラクチャプロジェクトの新しいリリースとリリース候補。 新しいリリースにアップグレードしたり、リリース候補のテストを支援することを検討してください。
- ● Bitcoin Core 28.2は、主要なフルノード実装の以前のリリースシリーズのメンテナンスリリースです。 これには複数のバグ修正が含まれています。
注目すべきコードとドキュメントの変更
最近のBitcoin Core、Core Lightning、Eclair、LDK、 LND、libsecp256k1、Hardware Wallet Interface (HWI)、Rust Bitcoin、BTCPay Server、BDK、Bitcoin Improvement Proposals(BIP)、Lightning BOLTs、 Bitcoin InquisitionおよびBINANAsの注目すべき変更点。
-
● Bitcoin Core #31981は、プロセス間通信(IPC)
Mining
インターフェース(ニュースレター #310参照)にcheckBlock
メソッドを追加します。このメソッドは、proposal
モードのgetblocktemplate
RPCと同じ有効性チェックを実行します。これにより、Stratum v2を使用するマイニングプールは、 最大4MBのJSONをRPC経由でシリアライズするのではなく、 より高速なIPCインターフェースを介してマイナーから提供されたブロックテンプレートを検証できるようになります。 Proof-of-Workとマークルルートのチェックはオプションで無効化できます。 -
● Eclair #3109は、失敗の帰属のサポート( ニュースレター#356参照)をトランポリンペイメントに拡張しました。 トランポリンノードは、自身に割り当てられた帰属のペイロードの一部を復号して保存し、 残りのBLOBを次のトランポリンホップ用に準備するようになりました。このPRは、 トランポリンノードの帰属データのリレーを実装していません。これは後続のPRで予定されています。
-
● LND #9950は、
DescribeGraph
およびGetNodeInfo
、GetChanInfo
RPCと それらに対応するlncli
コマンドに新しいinclude_auth_proof
フラグを追加します。 このフラグを含めると、チャネルアナウンスの署名が返され、 サードパーティソフトウェアによるチャネルの詳細な検証が可能になります。 -
● LDK #3868は、タイミングフィンガープリンティングを軽減するため、 失敗の帰属(ニュースレター#349参照)のペイロードの HTLCのホールド時間の精度を1ミリ秒単位から100ミリ秒単位に削減します。 これにより、LDKはBOLTs #1044ドラフトの最新のアップデートに準拠します。
-
● LDK #3873は、スプライシングの更新を伝播できるようにするため、 ファンディングアウトプットが使用された後にSCID(Short Channel Identifier)を忘れるまでの遅延を 12ブロックから144ブロックに引き上げます。これは、Eclairが実装したBOLTs #1270で導入された 72ブロックの遅延(ニュースレター#359参照)の2倍です。 このPRでは、
splice_locked
メッセージ交換プロセスにも追加の変更が実装されています。 -
● Libsecp256k1 #1678は、ライブラリのすべてのオブジェクトファイルを公開する
secp256k1_objs
CMakeインターフェースライブラリを追加し、 Bitcoin Coreで計画されているlibbitcoinkernelなどの親プロジェクトから これらのオブジェクトを自分の静的ライブラリに直接リンクできるようにします。 これは、CMakeが静的ライブラリを別のライブラリにリンクするネイティブなメカニズムを欠いている問題を解決し、 下流ストリームのユーザーが独自のlibsecp256k1
バイナリを提供する必要をなくします。 -
● BIPs #1803は、すべての一般的な強化導出パスマーカーを許可することで、 BIP380のディスクリプターの文法を明確にし、 #1871、#1867および#1866は、 key-pathルールを厳格化し、参加者の鍵の繰り返しを許可し、マルチパス子導出を明示的に制限することで、 BIP390のMuSig2ディスクリプターを改良します。
もっと知りたいですか?
このニュースレターで言及されたトピックについてもっと議論したい方は、 (ニュース レターが公開された翌日の)木曜日の16:30 UTCから Riverside.fmで毎週開催されているBitcoin Optech Recapにご参加ください。この議 論は録画もされ、ポッドキャストページからご覧いただけます。