BIP 66 — 厳密なDER署名
ビットコインスクリプトのECDSA署名を厳密なDER符号化に制限するソフトフォーク仕様。OpenSSLへの暗黙の依存を解消し、トランザクション展性も抑制する。
BIP-32、libsecp256k1、SegWit、Taprootを手がけたBitcoin Core開発者

階層的決定性ウォレット。Segregated Witness。シュノア署名。Taproot。現代のすべてのビットコインウォレットの鍵導出方法、すべてのトランザクションが展性を回避する方法、ブロック容量の拡張、Taprootのプライバシーとスクリプトの柔軟性。これらを定義する4つのBIPのすべてを書いた/共著したのが ピーター・ウィーユ(GitHubとIRCではsipa)である。2013年には、OpenSSLに代わってBitcoin Coreの署名バックエンドとなる目的特化型の楕円曲線ライブラリとしてlibsecp256k1の開発も始めた。アーカイブのアーキテクチャ進化ページは、この4件すべてをv0.1以来の横断的設計を変革した数少ない変化の一つとして挙げている。
ウィーユはベルギーのソフトウェア技術者。bitcoin/bitcoinへの最初の貢献は2011年3月17日のPR #122。6週間後にコミット権限を取得し、ギャビン・アンドレセンに次ぐ2番目の長期メンテナーとなった。2014年にBlockstreamを共同設立し、後にChaincode Labsにも参画した。
ウィーユのbitcoin/bitcoinへの最初の貢献は、2011年3月17日のPR #122である。ウォレット構造の変更により、トランザクション出力ごとに使用済み状態を個別に追跡できるようにし、部分的な使用を可能にする変更だった。2011年5月1日、ギャビン・アンドレセンが彼にGitHubコミット権限を付与した。これによりウィーユは、アンドレセン自身の次、そしてウラジミール・ファン・デル・ラーンよりも前の、長期メンテナーとして2人目の地位を得た。
ウィーユはサトシ離脱後のビットコイン進化の驚くほど広い範囲をカバーする4本のBIPの著者または共著者である。
2015年から2017年にかけてのブロックサイズ戦争では、ウィーユは大ブロック提案に対抗したCore開発者派を代表する三人の中心人物の一人として名指しされている。詳しい経緯はブロックサイズ戦争の総覧にまとめられている。
2013年3月5日、ウィーユは当初GLV手法の自己準同型の性能実験としてlibsecp256k1の開発を始めた。まもなくグレゴリー・マクスウェルが参加し、ライブラリーはOpenSSLのsecp256k1実装を完全に置き換える目的特化型のものへと成長した。2016年1月15日、Bitcoin Core v0.12でデフォルトのバックエンドとして採用された。
ウィーユは2014年、グレゴリー・マクスウェルらとともにBlockstreamを共同創業し、後にChaincode Labsにも参画した。一貫してBitcoin Coreの最も継続的なレビュアーの一人であり、暗号設計者でもあり続けている。
4本のBIPとlibsecp256k1を合わせれば、ウィーユの直接的な設計作業は、現代のあらゆるビットコインウォレットが鍵を導出する方法、あらゆる現代のトランザクションが署名を検証する方法、あらゆる現代の決済がオンチェーンの展性を逃れる方法、あらゆるTaproot出力が得るプライバシーとスクリプトの柔軟性、その全ての下地となっている。プロトコル自体にこれほど広い影響範囲を持つサトシ離脱後の貢献者はごく少ない。
21件
ビットコインスクリプトのECDSA署名を厳密なDER符号化に制限するソフトフォーク仕様。OpenSSLへの暗黙の依存を解消し、トランザクション展性も抑制する。
ピーター・ウィーユ ↔ ピーター・トッド, グレゴリー・マクスウェル, ラスティ・ラッセル
複数のソフトフォークをブロックのnVersionフィールド経由で並行起動できる、最初のバージョンビット式シグナリング方式を規定する。期間中央値の時刻としきい値、固定タイムアウトを用いる。
SegWit v0向けの新しい署名ハッシュアルゴリズム。入力額をコミットしてO(n^2) の二次ハッシュ問題を解消し、OP_CODESEPARATORの扱いも変更する。
ECDSA署名の展性を修正する2つの新規則、LOW_S(S値を下半分域に制限)とNULLFAIL(検証失敗署名は空配列限定)を規定。
チェックサム付きbase32形式Bech32と、ネイティブv0-16ウィットネス出力向けのsegwitアドレス形式(bc1.../tb1...)を規定。
ドゥルーヴ・メータ ↔ ティム・ルフィング, ジョナス・シュネリ, ピーター・ウィーユ
v2 P2Pトランスポートを規定。ElligatorSwift符号化ECDHに日和見的ChaCha20Poly1305暗号化を重ね、擬似乱数バイト列を生成しv1へフォールバックする。
ピーター・ウィーユ ↔ ジョナス・ニック, アンソニー・タウンズ
tapscriptのスクリプトパス検証ルールを規定。OP_CHECKSIG/OP_CHECKSIGADDによるシュノア署名検証、OP_SUCCESS系オペコード、sigops予算を定める。
Bech32の挿入エラー弱点を修正した新チェックサムBech32mを定義。SegWit v1以降(Taproot)のアドレスに採用し、v0は従来どおりBech32を使い続ける。
出力スクリプト記述子の構文・チェックサム・鍵式とスクリプト式の基本文法を定義。ウォレットが出力スクリプトの集合を記述・再現するための言語。
Bitcoin Institute ↔ グレゴリー・マクスウェル, アダム・バック, ピーター・ウィーユ, マイク・ハーン, ロジャー・ヴァー, ジハン・ウー, サトシ・ナカモト
「Blockstreamがビットコインを支配する」という告発の出どころと、その連鎖の各環がどこまで持ちこたえるかを、記録に照らして検証する。
Bitcoin Institute ↔ マイク・ハーン, ギャビン・アンドレセン, ロジャー・ヴァー, ジハン・ウー, アモリー・セシェ, マイク・ベルシェ, グレゴリー・マクスウェル, ピーター・ウィーユ, ウラジミール・ファン・デル・ラーン
2015〜2017年ブロックサイズ戦争を段階・派閥・転換点で横断整理: Bitcoin XT、BIP148 UASF、NYA、BCH、SegWit2x中止。
Bitcoin Institute ↔ ニルス・シュナイダー, ギャビン・アンドレセン, ウェイ・ダイ, ピーター・ウィーユ, サトシ・ナカモト
2011年11月20日、ビットコインv0.5がCrypto++ SHA-256サブセットを撤去しOpenSSLに置換。v0.1以来のウェイ・ダイ依存が消滅した。
Bitcoin Institute ↔ ピーター・ウィーユ, グレゴリー・マクスウェル, サトシ・ナカモト
2016年1月15日、Bitcoin Core v0.12がECDSA署名検証でOpenSSLをlibsecp256k1(ウィーユとマクスウェルの開発)に置換。
sipaがbitcoin/bitcoin PR #122でスレッドを開始。
bitcoin/bitcoin PR #1367におけるsipaの文脈投稿。サトシ言及の文脈。
sipaがbitcoin/bitcoin PR #2161でスレッドを開始。
Bitcoin Project ↔ ギャビン・アンドレセン, クリス・ムーア, ピーター・ウィーユ, ジェフ・ガージック, ウラジミール・ファン・デル・ラーン, ニルス・シュナイダー
ビットコインのSourceForge SVNからGitHubへの移行と、2011年にGitHubリポジトリへのコミットアクセスを付与された開発者の時系列記録。
階層的決定性(HD)ウォレットを導入し、単一のマスターシードから鍵ペアのツリー全体を導出可能にした。これにより頻繁なバックアップの必要性が排除され、親子鍵導出による体系的な鍵管理が実現した。
エリック・ロンブロゾ ↔ ジョンソン・ラウ, ピーター・ウィーユ
ビットコイン創設以来最大のアップグレードSegregated Witness(SegWit)を提案。署名データ分離で展性修正・ライトニング実現・ブロック容量拡大を後方互換ソフトフォークで達成。
ピーター・ウィーユ ↔ ジョナス・ニック, ティム・ルフィング
ビットコインにシュノアデジタル署名を導入、TaprootではECDSAを置換。証明可能安全・非展性・効率的マルチシグ集約により、複雑スクリプトを単純支払いと区別不能に。
ピーター・ウィーユ ↔ ジョナス・ニック, アンソニー・タウンズ
SegWit以来最重要のアップグレードTaprootを導入。シュノア署名(BIP 340)とMASTの組合せで複雑な支払いを単純支払いと同等にプライベートかつ効率的に。