2014年10月1日、ピーター・トッドはBIP 65を提案し、Bitcoinのスクリプトシステムに新しいオペコード「OP_CHECKLOCKTIMEVERIFY」を導入した。この提案は既存のNOP2オペコードを再定義し、タイムロックされたトランザクション出力——指定されたブロック高またはタイムスタンプに達するまで使用できない出力——を可能にした。
仕組み:
このオペコードはスクリプトスタック上の値をトランザクションのnLockTimeフィールドと比較する。nLockTimeに達していなければスクリプトは失敗し、トランザクションは拒否される。これにより、将来の特定時点まで資金をロックするスクリプトを強制できる。
ユースケース:
- 遅延アクセス付きエスクロー: 三者間エスクローで、弁護士がタイムアウト後にのみ資金にアクセスできるようにし、即時の窃盗を防止する
- 二要素ウォレット: 2-of-2マルチシグでコインを保持するサービスが、サービス停止時に自動返金を実装できる
- ペイメントチャネル: トランザクション展性の回避策に依存しない非対話型の返金メカニズム
- 資金凍結: 指定時刻まで証明可能にビットコインをロックし、強迫や没収のリスクを軽減する
意義:
BIP 65はコンセンサスレベルのソフトフォークとしてデプロイされた。より高度なBitcoinスマートコントラクトの構成要素の一つであり、後にLightning Networkを支えるペイメントチャネルの基盤となった。BIP 125(Replace-by-Fee)と並んで、ピーター・トッドのBitcoinプロトコルへの最も重要な貢献である。