|
| 1 | +--- |
| 2 | +title: 'Bitcoin Optech Newsletter #399' |
| 3 | +permalink: /ja/newsletters/2026/04/03/ |
| 4 | +name: 2026-04-03-newsletter-ja |
| 5 | +slug: 2026-04-03-newsletter-ja |
| 6 | +type: newsletter |
| 7 | +layout: newsletter |
| 8 | +lang: ja |
| 9 | +--- |
| 10 | +今週のニュースレターでは、ウォレットのフィンガープリンティングがPayjoinのプライバシーを損なう仕組みと、 |
| 11 | +ウォレットバックアップメタデータ形式に関する提案を掲載しています。また、 |
| 12 | +Bitcoinのコンセンサスルールの変更に関する提案のまとめや、新しいリリースとリリース候補の発表、 |
| 13 | +人気のBitcoin基盤ソフトウェアの注目すべき変更など、恒例のセクションも掲載しています。 |
| 14 | + |
| 15 | +## ニュース |
| 16 | + |
| 17 | +- **Payjoinプライバシーにおけるウォレットのフィンガープリンティングリスク**: Armin Sabouriは、 |
| 18 | + Payjoin実装間の差異が[Payjoin][topic payjoin]トランザクションのフィンガープリンティングを可能にし、 |
| 19 | + Payjoinのプライバシーを損なう仕組みについてDelving Bitcoinに[投稿しました][topic payjoin fingerprinting]。 |
| 20 | + |
| 21 | + Sabouriは、Payjoinトランザクションは標準的な単一当事者のトランザクションと区別がつかないように見えるべきだと述べています。 |
| 22 | + しかし共同トランザクションの痕跡が残る場合があります。 |
| 23 | + |
| 24 | + - トランザクション内 |
| 25 | + |
| 26 | + - 単一のトランザクション内でインプットとアウトプットを所有者毎に分割する。 |
| 27 | + |
| 28 | + - インプットのエンコーディングの違い。 |
| 29 | + |
| 30 | + - インプットのbyte長。 |
| 31 | + |
| 32 | + - トランザクション間 |
| 33 | + |
| 34 | + - 後方: 各インプットは、それ自身のフィンガープリントを持つ以前のトランザクションによって作成されている。 |
| 35 | + |
| 36 | + - 前方: 各アウトプットは、将来のトランザクションで使用される可能性があり、フィンガープリントが露出する。 |
| 37 | + |
| 38 | + 続いてSabouriは、Samourai、PDKデモ、Cake Wallet(Bull Bitcoin Mobileへの送金)の3つのPayjoin実装をレビューし、 |
| 39 | + それぞれにフィンガープリンティングを可能にする相違点を発見しています。具体的には以下のものが含まれます(ただしこれらに限りません): |
| 40 | + |
| 41 | + - インプットの署名エンコードの違い。 |
| 42 | + |
| 43 | + - SIGHASH_ALL byteが一方には含まれるが、もう一方には含まれない。 |
| 44 | + |
| 45 | + - アウトプット金額の割り当て |
| 46 | + |
| 47 | + Sabouriは、これらのウォレットフィンガープリントの一部は取り除くことが容易である一方、 |
| 48 | + 特定のウォレットの設計上の選択に起因するものもあると結論づけています。 |
| 49 | + ウォレット開発者は、Payjoinを実装する際にこうしたプライバシーの漏洩の可能性を認識しておくべきだとしています。 |
| 50 | + |
| 51 | +- **ウォレットバックアップメタデータ形式に関するBIPドラフト**: Pythcoinerは、 |
| 52 | + ウォレットバックアップメタデータの共通構造に関する新しい提案をBitcoin-Devメーリングリストに[投稿しました][wallet bip ml]。 |
| 53 | + [BIPs #2130][]で公開されているこのBIPドラフトは、アカウントディスクリプターや鍵、[ラベル][topic wallet labels]、 |
| 54 | + [PSBT][topic psbt]などさまざまな種類のメタデータを標準的な方法で保存する仕様を策定し、 |
| 55 | + 異なるウォレット実装間の互換性確保や、ウォレットの移行・復元プロセスの簡素化を目的としています。 |
| 56 | + Pythcoinerによると、エコシステムには共通仕様が存在しておらず、本提案はそのギャップを埋めることを目指しています。 |
| 57 | + |
| 58 | + 技術的な観点では、提案されている形式は、バックアップ構造を表す単一の有効なJSONオブジェクトを含む |
| 59 | + UTF-8エンコードされたテキストファイルです。BIPにはJSONオブジェクトに含めることができる各フィールドが列挙されており、 |
| 60 | + それらはすべてオプションであることが明記されています。また、 |
| 61 | + 各ウォレット実装は有用でないと判断したメタデータを自由に無視できるものとされています。 |
| 62 | + |
| 63 | +## コンセンサスの変更 |
| 64 | + |
| 65 | +_Bitcoinのコンセンサスルールの変更に関する提案と議論をまとめた月次セクション_ |
| 66 | + |
| 67 | +- **コンパクトな同種写像PQCはHDウォレット、鍵の調整、サイレントペイメントを置き換え可能**: |
| 68 | + Conduitionは、[ポスト量子][topic quantum resistance]暗号システムとして |
| 69 | + 同種写像ベース暗号(IBC)のBitcoinへの適用可能性に関する研究をDelving Bitcoinに[投稿しました][c delving ibc hd]。 |
| 70 | + 楕円曲線の離散対数問題(ECDLP)は、ポスト量子の世界では安全でなくなる可能性がある一方、 |
| 71 | + 楕円曲線の数学そのものに根本的な欠陥があるわけではありません。簡単に言うと、 |
| 72 | + 同種写像とはある楕円曲線から別の楕円曲線へのマッピングです。IBCの暗号学的仮定は、 |
| 73 | + 特定の種類の楕円曲線間の同種写像を計算することは困難である一方、 |
| 74 | + 基底曲線から同種写像とそのマッピング先の曲線を生成することは容易であるという点にあります。 |
| 75 | + したがって、IBCにおける秘密鍵は同種写像であり、公開鍵はマッピング後の曲線となります。 |
| 76 | + |
| 77 | + ECDLPの秘密鍵と公開鍵のように、同じソルト(例:[BIP32の導出][topic bip32]ステップ)から新たな秘密鍵と公開鍵を独立して計算し、 |
| 78 | + 導出された秘密鍵が導出された公開鍵に対して正しく署名することが可能です。Conduitionはこれを |
| 79 | + 「再ランダム化(rerandomization)」と呼んでおり、これによって[BIP32][]、[BIP341][]および[BIP352][]が |
| 80 | + (おそらく追加の暗号技術的な工夫を伴いつつも)根本的に実現可能になるとしています。 |
| 81 | + |
| 82 | + 現時点では、IBC向けの[MuSig][topic musig]や[FROST][topic threshold signature]のような署名集約プロトコルは存在しておらず、 |
| 83 | + conduitionは、Bitcoin開発者と暗号学者に対し、その可能性を研究するよう呼びかけています。 |
| 84 | + |
| 85 | + 既知のIBC暗号システムにおける鍵と署名のサイズは、ECDLPに依存する暗号システムの鍵の約2倍ですが、 |
| 86 | + ハッシュベースや格子ベースの暗号システムよりははるかに小さいものです。検証コストは、 |
| 87 | + デスクトップマシンでも高く(1回の検証あたり1ミリ秒程度)、ハッシュベースや格子ベースと同程度の水準です。 |
| 88 | + |
| 89 | +- **VaropsバジェットとTapscriptリーフ 0xc2(Script Restoration)がBIP 440および441に**: |
| 90 | + Rusty Russellは、Great Script Restoration(またはGrand Script Renaissance)の最初の2つのBIPが、 |
| 91 | + BIP番号の割り当てのために提出されたことをBitcoin-Devメーリングリストに[投稿しました][rr ml gsr bips]。 |
| 92 | + これらはそれぞれBIP 440およびBIP 441として番号が付与されました。[BIP440][news374 varops]は、 |
| 93 | + 各操作コストの会計システムを構築することで、以前無効化されたScriptのopcodeを復元します。 |
| 94 | + この会計システムは、ワーストケースのブロックレベルのスクリプト検証コストが、 |
| 95 | + ワーストケースの署名操作数のブロックの検証コストを超えないようにします。[BIP441][news374 c2]は、 |
| 96 | + 2010年にサトシによって無効化されたopcodeを復元する新しい[Tapscript][topic tapscript]バージョンの検証について説明しています。 |
| 97 | + |
| 98 | +- **SHRIMPS: 複数のステートフル署名デバイス間で2.5KBのポスト量子署名**: |
| 99 | + Jonas Nickは、ポスト量子Bitcoinに向けた新しい準ステートフルなハッシュベース署名について |
| 100 | + Delving Bitcoinに[投稿しました][jn delving shrimps]。SHRIMPSは、 |
| 101 | + [SPHINCS+][news383 sphincs]の署名サイズが、特定のセキュリティレベルを維持しつつ生成可能な署名の最大数に応じてスケールする |
| 102 | + という特性を活用しています。 |
| 103 | + |
| 104 | + [SHRINCS][news391 shrincs]の設計と同様に、SHRIMPSの鍵は2つの鍵をハッシュして組み合わせたものです。 |
| 105 | + この場合、両方の鍵はステートレスなSPHINCS+の鍵ですが、パラメーターセットが異なります。 |
| 106 | + 1つめの鍵は少数の署名に対してのみ安全で、その鍵を使用する各署名デバイスにおける最初(または最初の数回)の署名に使用することを意図しています。 |
| 107 | + 2つめの鍵はより多数の署名(Bitcoinの文脈では事実上無制限)に対して安全で、 |
| 108 | + 各デバイスはそのデバイスからの署名が一定回数(ユーザーが選択可能な場合もあり)を超えたら、この鍵にフォールバックします。 |
| 109 | + その結果、単一のシードから多数導出できる任意の鍵が少数回しか署名しないというBitcoinの一般的なユースケースにおいては、 |
| 110 | + ほぼすべての署名を2.5KB未満に抑えることができます。一方で、鍵が何度も再利用された場合でも、署名総数に実質的な上限はなく、 |
| 111 | + その代わりに後続の署名は約7.5KBになります。SHRIMPSが準ステートフルと呼ばれるのは、グローバルな状態を保持する必要はないものの、 |
| 112 | + 各署名デバイスが署名に使用するSHRIMPS鍵毎に数bitの状態を記録しなければならないからです(各デバイスと鍵ペアにおける最初の署名のみが |
| 113 | + 小さい署名サイズの恩恵を受ける場合は、1 bitで済みます)。 |
| 114 | + |
| 115 | +## リリースとリリース候補 |
| 116 | + |
| 117 | +_人気のBitcoinインフラストラクチャプロジェクトの新しいリリースとリリース候補。 |
| 118 | +新しいリリースにアップグレードしたり、リリース候補のテストを支援することを検討してください。_ |
| 119 | + |
| 120 | +- [Bitcoin Core 31.0rc2][]は、主要なフルノード実装の次期メジャーバージョンのリリース候補です。 |
| 121 | + [テストガイド][bcc31 testing]が利用可能です。 |
| 122 | + |
| 123 | +- [Core Lightning 26.04rc2][]は、この人気のLNノードの次期メジャーバージョンの最新のリリース候補で、 |
| 124 | + 以前のリリース候補からスプライシングの更新とバグ修正が続いています。 |
| 125 | + |
| 126 | +- [BTCPay Server 2.3.7][]は、このセルフホスト型のペイメントソリューションのマイナーリリースで、 |
| 127 | + プロジェクトを.NET 10に移行し、サブスクリプションとインボイスのチェックアウト機能を改善し、 |
| 128 | + その他いくつかの機能強化とバグ修正を行っています。プラグイン開発者は、 |
| 129 | + アップデート時にプロジェクトの[.NET 10移行ガイド][btcpay net10]に従ってください。 |
| 130 | + |
| 131 | +## 注目すべきコードとドキュメントの変更 |
| 132 | + |
| 133 | +_最近の[Bitcoin Core][bitcoin core repo]、[Core |
| 134 | +Lightning][core lightning repo]、[Eclair][eclair repo]、[LDK][ldk repo]、 |
| 135 | +[LND][lnd repo]、[libsecp256k1][libsecp256k1 repo]、[Hardware Wallet |
| 136 | +Interface (HWI)][hwi repo]、[Rust Bitcoin][rust bitcoin repo]、[BTCPay |
| 137 | +Server][btcpay server repo]、[BDK][bdk repo]、[Bitcoin Improvement |
| 138 | +Proposals(BIP)][bips repo]、[Lightning BOLTs][bolts repo]、[Lightning BLIPs][blips repo]、 |
| 139 | +[Bitcoin Inquisition][bitcoin inquisition repo]および[BINANAs][binana repo]の注目すべき変更点。_ |
| 140 | + |
| 141 | +- [Bitcoin Core #32297][]は、`bitcoin-cli`に`-ipcconnect`オプションを追加します。 |
| 142 | + これにより、Bitcoin Coreが`ENABLE_IPC`でビルドされ、ノードが`-ipcbind`( |
| 143 | + ニュースレター[#320][news320 ipc]および[#369][news369 ipc]参照)で起動されている場合、 |
| 144 | + HTTPの代わりにUnixソケット経由のプロセス間通信(IPC)を使って`bitcoin-node`インスタンスに接続し、制御できるようになります。 |
| 145 | + `-ipcconnect`を省略した場合でも、`bitcoin-cli`はまずIPCを試み、IPCが利用できない場合はHTTPにフォールバックします。 |
| 146 | + これは、[マルチプロセス分離プロジェクト][multiprocess]の一部です。 |
| 147 | + |
| 148 | +- [Bitcoin Core #34379][]は、ウォレットに秘密鍵の一部しか持たない[ディスクリプター][topic descriptors]が含まれている場合に、 |
| 149 | + `gethdkeys` RPC([ニュースレター #297][news297 rpc]参照)を`private=true`で呼び出すと失敗するバグを修正します。 |
| 150 | + `listdescriptors`の修正([ニュースレター #389][news389 descriptor]参照)と同様に、 |
| 151 | + このPRは利用可能な秘密鍵を返します。なお、完全な監視専用ウォレットに対して、`gethdkeys private=true`を呼び出した場合は、 |
| 152 | + 引き続き失敗します。 |
| 153 | + |
| 154 | +- [Eclair #3269][]は、アイドル状態のチャネルから自動的な流動性回収機能を追加します。 |
| 155 | + `PeerScorer`が両方向の合計支払い量がチャネルキャパシティの5%を下回ったことを検知すると、 |
| 156 | + [中継手数料][topic inbound forwarding fees]を設定済みの最小値に向けて段階的に引き下げます。 |
| 157 | + 手数料が最低5日間最小値になったままでも取引量が回復しない場合、Eclairは当該ピアとの冗長なチャネルを閉鎖します。 |
| 158 | + チャネルが閉鎖されるのは、ノードが資金の少なくとも25%を保有し、かつローカル残高が既存の |
| 159 | + `localBalanceClosingThreshold`設定を超えている場合に限られます。 |
| 160 | + |
| 161 | +- [LDK #4486][]は、`rbf_channel`エンドポイントを`splice_channel`にマージし、 |
| 162 | + 新規の[スプライス][topic splicing]とインフライトスプライスの手数料引き上げの両方に対応する単一のエントリーポイントとして提供します。 |
| 163 | + スプライスが既に進行中の場合、`splice_channel`から返される`FundingTemplate`には`PriorContribution`が含まれるため、 |
| 164 | + ユーザーは新しい[コイン選択][topic coin selection]をすることなくスプライスを[RBF][topic rbf]できます。 |
| 165 | + スプライスのRBFの動作については、[ニュースレター #397][news397 rbf]をご覧ください。 |
| 166 | + |
| 167 | +- [LDK #4428][]は、新しい`create_channel_to_trusted_peer_0reserve`メソッドにより、 |
| 168 | + 信頼済みのピアとのゼロチャネルリザーブでのチャネル開設・受け入れのサポートを追加します。 |
| 169 | + ゼロリザーブチャネルは、相手方がチャネル内のオンチェーン残高を全額使用することが可能です。 |
| 170 | + これは、[アンカーアウトプット][topic anchor outputs]を使用するチャネルとゼロ手数料コミットメントチャネル( |
| 171 | + [ニュースレター #371][news371 0fc]参照)の両方で有効です。 |
| 172 | + |
| 173 | +- [LND #9982][]、[#10650][lnd #10650]、[#10693][lnd #10693]は、 |
| 174 | + [Taproot][topic taproot]チャネルにおける[MuSig2][topic musig]ナンスのワイヤーハンドリングを強化します。 |
| 175 | + `ChannelReestablish`に`LocalNonces`フィールドが追加され、 |
| 176 | + ピアが[スプライス][topic splicing]関連の更新に複数のナンスを調整できるようになります。 |
| 177 | + `lnwire`はナンスを含むメッセージのTLVデコード時にMuSig2公開ナンスを検証し、 |
| 178 | + `LocalNoncesData`のデコードでは各ナンスエントリーが検証されます。 |
| 179 | + |
| 180 | +- [LND #10063][]は、[RBF][topic rbf]協調閉鎖フローを[MuSig2][topic musig]を使用した |
| 181 | + [Simple Taproot Channel][topic simple taproot channels]に拡張します。 |
| 182 | + ワイヤーメッセージは[Taproot][topic taproot]固有のナンスと部分署名フィールドを持ち、 |
| 183 | + 閉鎖の状態マシンは`shutdown`、`closing_complete`、`closing_sig`の各段階で、 |
| 184 | + ジャストインタイムのナンスパターンを持つMuSig2セッションを使用します(RBF協調閉鎖フローの背景については、 |
| 185 | + [ニュースレター #347][news347 rbf coop]をご覧ください)。 |
| 186 | + |
| 187 | +{% include snippets/recap-ad.md when="2026-04-07 16:30" %} |
| 188 | +{% include references.md %} |
| 189 | +{% include linkers/issues.md v=2 issues="2130,32297,34379,3269,4486,4428,9982,10650,10693,10063" %} |
| 190 | + |
| 191 | +[topic payjoin]: /en/topics/payjoin/ |
| 192 | +[topic payjoin fingerprinting]: https://delvingbitcoin.org/t/how-wallet-fingerprints-damage-payjoin-privacy/2354 |
| 193 | +[c delving ibc hd]: https://delvingbitcoin.org/t/compact-isogeny-pqc-can-replace-hd-wallets-key-tweaking-silent-payments/2324 |
| 194 | +[rr ml gsr bips]: https://groups.google.com/g/bitcoindev/c/T8k47suwuOM |
| 195 | +[news374 varops]: /ja/newsletters/2025/10/03/#first-bip |
| 196 | +[news374 c2]: /ja/newsletters/2025/10/03/#second-2-bip |
| 197 | +[jn delving shrimps]: https://delvingbitcoin.org/t/shrimps-2-5-kb-post-quantum-signatures-across-multiple-stateful-devices/2355 |
| 198 | +[news383 sphincs]: /ja/newsletters/2025/12/05/#slh-dsa-sphincs |
| 199 | +[news391 shrincs]: /ja/newsletters/2026/02/06/#shrincs-324-byte |
| 200 | +[wallet bip ml]: https://groups.google.com/g/bitcoindev/c/ylPeOnEIhO8 |
| 201 | +[news297 rpc]: /ja/newsletters/2024/04/10/#bitcoin-core-29130 |
| 202 | +[news320 ipc]: /ja/newsletters/2024/09/13/#bitcoin-core-30509 |
| 203 | +[news347 rbf coop]: /ja/newsletters/2025/03/28/#lnd-8453 |
| 204 | +[news369 ipc]: /ja/newsletters/2025/08/29/#bitcoin-core-31802 |
| 205 | +[news371 0fc]: /ja/newsletters/2025/09/12/#ldk-4053 |
| 206 | +[news389 descriptor]: /ja/newsletters/2026/01/23/#bitcoin-core-32471 |
| 207 | +[news397 rbf]: /ja/newsletters/2026/03/20/#ldk-4427 |
| 208 | +[multiprocess]: https://github.com/bitcoin/bitcoin/issues/28722 |
| 209 | +[bitcoin core 31.0rc2]: https://bitcoincore.org/bin/bitcoin-core-31.0/test.rc2/ |
| 210 | +[Core Lightning 26.04rc2]: https://github.com/ElementsProject/lightning/releases/tag/v26.04rc2 |
| 211 | +[BTCPay Server 2.3.7]: https://github.com/btcpayserver/btcpayserver/releases/tag/v2.3.7 |
| 212 | +[bcc31 testing]: https://github.com/bitcoin-core/bitcoin-devwiki/wiki/31.0-Release-Candidate-Testing-Guide |
| 213 | +[btcpay net10]: https://blog.btcpayserver.org/migrating-to-net10/ |
0 commit comments