/ home / newsletters /
Bitcoin Optech Newsletter #327
今週のニュースレターでは、タイムアウトツリー型のチャネルファクトリーの提案と、 サイレントペイメントの生成時に使用される離散対数の等価性の証明に関するBIPのドラフトを掲載しています。 また、新しいソフトウェアのリリースや、人気のあるBitcoinインフラストラクチャソフトウェアの注目すべき変更など 恒例のセクションも含まれています。
ニュース
-
● タイムアウトツリー型のチャネルファクトリー: ZmnSCPxjは、 SuperScalar という新しいマルチレイヤーチャネルファクトリー設計の提案を Delving Bitcoinに投稿し、Optechのコントリビューターと議論しました。 この設計の目標は、広範な合意を必要とする大規模なプロトコル変更を待たずに、 単一のベンダーが簡単に実装可能な構造を提供することです。たとえば、ウォレットソフトウェアを配布する LSP(Lightning Service Provider)は、LNのトラストレス性を損なうことなく、 ユーザーがより安価にチャネルを開き、インバウンド流動性を受け取ることができるようになります。
全体的な構造は タイムアウトツリー に基づいており、 ファンディングトランザクション は 事前に定義された子トランザクションのツリーに支払いをし、 最終的に多数の個別のペイメントチャネルにオフチェーンで支払います。 設定可能なタイムアウト(1ヶ月など)が経過すると、タイムアウトツリーに関与している参加者の一部は、 ツリーに残っている資金を没収されます。これは期限切れになる前に資金を引き出すか、 代替のセキュリティを見つけるインセンティブが生まれ、ツリーの一部をオンチェーンに公開するのではなく、 安価なオフチェーンメカニズムの利用を促すことができます。 以前紹介したタイムアウトツリー(ニュースレター #270参照)では、 タイムアウトしたユーザーの資金はサービスプロバイダーのものになっていましたが、 ZmnSCPxjは、これを逆転させ、サービスプロバイダーのタイムアウトした資金をユーザーのものとするようにします。 これにより、トランザクションを承認する負担がエンドユーザーではなく、サービスプロバイダーに課せられます。
使用されるタイムアウトツリーでは、各参加者が署名を提供する必要があります。 これによりコンセンサスの変更は不要になりますが、 よく知られている複数の署名者の調整問題により、 ファクトリー内の実際の最大ユーザー数が制限されます。
タイムアウトツリーのほとんどのリーフは、 現在使用されている一般的なタイプのチャネル(LN-Penalty)のオフチェーンファンディングトランザクションで、 LNチャネルの管理に既存のコードを再利用できます。各チャネルの参加者は、 エンドユーザーとタイムアウトツリーを作成したLSPです。 ツリーのリーフの一部は、資金のリバランス目的でLSPにより排他的に管理される場合があります。
ルートとリーフの間には、Duplexペイメントチャネルがあります。 LN-Penaltyチャネルとは異なり、Duplexチャネルでは2人より多くの参加者が安全に資金を共有することができます。 ただし、LN-Penaltyが実質的に無制限の更新が可能なのに対し、Duplexチャネルの更新数は比較的少なくなります。 中間のDuplexチャネルは、LSPと2人のエンドユーザーが関与するリバランスを可能にするために使用されます。 これらのリバランスは、オフチェーンの速度で安全に完了できるため、 ユーザーはチャネルに十分なキャパシティがなかったとしても、ほぼ瞬時に入金を受け取ることができます。
その後の投稿で、ZmnSCPxjはDuplexチャネルの一部を Spillmanスタイルの(単方向)のマイクロペイメントチャネルに置き換えることを説明しました。 これは、一方的な閉鎖の場合にはオンチェーンの効率が悪くなるものの、 協力的な閉鎖の場合にはオンチェーンの効率がよくなります。
この提案には適度な議論がありました。著者は、この提案の弱点の1つは、 複数の異なる種類のチャネルを使用することによる技術的な複雑さと、 どのようなチャネルファクトリーの設計においても固有の課題となるオフチェーンの状態管理だと述べています。 ただし、この提案には単一のチームで実装でき、LNプロトコルに多くの変更を加えることなく標準のLNと相互運用できるという利点があります。
-
● DLEQ証明のBIPドラフト: Andrew Tothは、 Bitcoinで使用される楕円曲線(secp256k1)の離散対数の等価性(DLEQ)の証明を 生成および検証するための実装のリンクとBIPのドラフトをBitcoin-Devメーリングリストに投稿しました。 DLEQを使用すると、(対応する公開鍵など)秘密鍵について何も明かすことなく、 秘密鍵を知っていることを証明することができます。これは、過去に、 どのUTXOを所有しているかを明かすことなく、UTXOを所有していることを証明するために使用されました( ニュースレター#83および#131参照)。
現在のBIPは、複数の個別の署名者で作成されたサイレントペイメントのサポートを目的としています。 署名者の1人が嘘をついたり、誤りを犯したりすると、資金が失われる可能性があります。 DLEQを使用すると、各署名者は他の署名者に秘密鍵を明かすことなく正しく署名したことを証明できます。 以前の議論については、ニュースレター #308をご覧ください。
この提案に対して、以前JoinMarketのcoinjoin実装用の DLEQ証明システムを実装したAdam Gibsonから返信がありました。 彼は、BIPバージョンのDLEQをサイレントペイメント以外の用途にも柔軟に対応できるようにするためのいくつかの変更を提案しました。
リリースとリリース候補
人気のBitcoinインフラストラクチャプロジェクトの新しいリリースとリリース候補。 新しいリリースにアップグレードしたり、リリース候補のテストを支援することを検討してください。
- ● BTCPay Server 2.0.0は、このセルフホスト型のペイメントプロセッサの最新リリースです。 新機能には、「ローカライゼーションの改善、サイドバーナビゲーション、オンボーディングフローの改善、 ブランディングオプションの改善、プラグイン可能なレートプロバイダーのサポート」などが含まれています。 アップグレードにはいくつかの重大な変更とデーベースの移行が含まれています。 アップグレードをする前に、お知らせを読むことをお勧めします。
注目すべきコードとドキュメントの変更
最近の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 #31130では、過去セキュリティ上の脆弱性があり(ニュースレター#310参照)、 デフォルトで既に無効になっている
miniupnp
の依存性を削除し、UPnP(Universal Plug and Play) インターネットゲートウェイデバイス(IGD)のサポートを削除しました。 これは、NATポートマッピングプロトコル(NAT-PMP)へのフォールバックを備えたポート制御プロトコル(PCP)に置き換えられました (ニュースレター#323参照)。これにより、手動設定なしでノードに到達できるようになり、miniupnp
の依存関係に関連するセキュリティリスクがなくなります。 -
● LDK #3007は、
OutboundTrampolinePayload
列挙型に2つの新しいBlindedForward
とBlindedReceive
を追加し、 BOLT12のオファープロトコルを実装するための基礎として、 トランポリンルーティング内のブラインドパスのサポートを導入します。 -
● BIPs #1676は、BIP85が広く展開され、破壊的な変更を導入する段階を過ぎたため、 ステータスを最終版に更新します。これは、最近の重大な変更がマージされ、その後元に戻された(ニュースレター #324参照)後に提案されました。