ビットコインは2021年11月14日、ブロック高709,632において「Taproot」と呼ばれるソフトフォーク(後方互換性のあるアップグレード)を有効化しました。これはビットコインのコア開発史において2017年のSegWit以来最大の技術的進歩と評価されており、プライバシー向上・スクリプト効率化・スマートコントラクト拡張の三つの目標を一度に達成した画期的な変更です。
Taprootは単一の変更ではなく、複数のBIP(Bitcoin Improvement Proposal)が組み合わさった複合アップグレードです。主要なBIPは、BIP340(Schnorr署名)、BIP341(Taproot自体の仕様)、BIP342(Tapscript)の三つで構成されており、それぞれが連携して動作することで強力な機能拡張を実現しています。
本記事では、Taprootアップグレードの背景・技術的な仕組み・具体的な変更点・ビットコインエコシステムへの影響について、初心者の方にもわかりやすく解説していきます。
1. Taprootが生まれた背景:SegWitの次に必要だったもの
1-1. SegWitで解決した課題と残った問題
2017年に有効化されたSegWit(Segregated Witness)は、トランザクションの署名データをブロック外に分離することで、ブロック容量を実質的に増やし、トランザクション展性(transaction malleability)という深刻なバグを修正しました。SegWitによってLightning Networkの基盤が整い、ビットコインのスケーラビリティが大きく改善されました。
しかしSegWitには限界もありました。マルチシグトランザクションや複雑なスクリプトを使用する場合、トランザクションのサイズが大きくなり、手数料が増大する問題は依然として残っていました。また、複雑なスクリプトを利用すると、ブロックチェーン上に「これはマルチシグだ」「これはタイムロックを使っている」といった情報が露出し、プライバシーが損なわれる課題もありました。
1-2. スマートコントラクトの可能性を広げたいという需要
イーサリアムの成功を受け、ビットコイン上でもより複雑な金融取引を実現したいという需要が高まりました。ビットコインには「Script」と呼ばれる簡易的なプログラミング言語が搭載されていますが、従来の設計では複雑な条件分岐を含むスマートコントラクトを効率的に処理することが困難でした。
Taprootはこうした背景から、Gregory Maxwell氏らのコア開発者によって2018年頃から提案・議論が始まり、約3年の議論と検証を経て2021年に有効化されるに至りました。
2. Taprootの核心技術:Pay-to-Taproot(P2TR)
2-1. P2TRアドレスの特徴
Taprootでは「Pay-to-Taproot(P2TR)」という新しいアウトプットタイプが導入されました。P2TRアドレスは「bc1p」で始まるBech32m形式のアドレスで、従来のP2PKHアドレス(1で始まる)やP2SHアドレス(3で始まる)、SegWit P2WPKHアドレス(bc1qで始まる)とは異なる外観を持ちます。
P2TRの最大の特徴は、単純な署名による支払いも、複雑なスクリプトによる支払いも、外から見たときに同一の形式に見えるという点です。これにより、マルチシグウォレットを使っているユーザーと通常の単一鍵ウォレットを使っているユーザーのトランザクションが、ブロックチェーン上では区別できなくなります。
2-2. キーパスとスクリプトパス
P2TRには二つの支払いパスが存在します。一つ目は「キーパス(Key Path)」で、単一の署名(Schnorr署名)でコインを使用する最もシンプルな方法です。二つ目は「スクリプトパス(Script Path)」で、あらかじめコミットされたスクリプト(条件)を満たすことでコインを使用する方法です。
重要なのは、キーパスで支払いが行われた場合、スクリプトパスの内容(複雑な条件)はブロックチェーン上に一切公開されないという点です。例えば「3人のうち2人が署名した場合に使える」という条件を設定していたとしても、実際に3人全員が合意して一つのSchnorr署名を生成した場合には、外部観察者からはその条件の存在すら知ることができません。
3. Schnorr署名との連携:Taprootを支える暗号技術
3-1. 公開鍵の加算による魔法
Taprootがプライバシー向上を実現できる根本的な理由は、Schnorr署名の「鍵集約(Key Aggregation)」特性にあります。Schnorr署名では複数の公開鍵を数学的に一つに合成することができ、複数人の署名も一つの署名のように扱えます。
具体的には、2人のユーザーがそれぞれ公開鍵P1、P2を持っている場合、Taproot内部鍵(internal key)として「P = P1 + P2」という合成公開鍵を計算できます(実際にはMuSigプロトコルを使用)。この合成公開鍵に対して2人が協力して生成した署名は、一つの通常の署名と完全に区別がつきません。
3-2. ツイークによるスクリプトコミットメント
Taprootでは、内部公開鍵(internal key)にスクリプトのハッシュ値を「ツイーク(tweak)」として加算することで、スクリプトへのコミットメントを鍵の中に埋め込みます。この操作により、公開鍵自体がスクリプトの存在を証明するコミットメントになります。
支払いがキーパスで行われる場合、スクリプトは公開されません。スクリプトパスで支払いが行われる場合のみ、該当するスクリプトとMerkleパスが公開されます。このようにして、必要最低限の情報のみを公開する設計が実現されています。
4. MAST:スクリプトのプライバシーと効率性を両立する仕組み
4-1. MerkleizedAlternate Script Treesとは
Taprootは「MAST(Merklized Abstract Syntax Trees)」の概念を取り入れています。MASITは複数の条件分岐(スクリプト)をMerkleツリーの葉として格納し、実際に使用するパスのみを公開する仕組みです。
例えば「条件A OR 条件B OR 条件C」という三つの支払い条件を持つスクリプトがあったとします。従来のビットコインScriptでは、三つの条件すべてをトランザクションに含める必要がありましたが、MASITを使えば実際に使用する条件(例:条件B)とそのMerkleパスのみを公開すれば十分です。残りの条件AとCは公開されません。
4-2. 手数料削減とプライバシー向上の相乗効果
MASITの採用により、複雑な条件を持つスクリプトを使用する際のトランザクションサイズが大幅に削減されます。これは手数料の低下を意味し、ビットコイン上でのスマートコントラクト利用コストを現実的な水準に引き下げます。
また、使用しなかった条件が公開されないため、ビジネスロジックや条件の詳細が外部に漏れることがなくなります。企業がビットコインを利用する際に、内部の資金管理ルールを外部に公開せずに済む点は、実用上重要なメリットです。
5. Tapscript:新しいスクリプト言語の拡張
5-1. OP_CHECKSIGの変更とSchnorr対応
BIP342で定義されたTapscriptは、TaprootのスクリプトパスにおけるScriptの改訂版です。最も重要な変更は、署名検証命令(OP_CHECKSIGなど)がECDSA署名ではなくSchnorr署名を受け入れるよう変更されたことです。
また、バッチ検証(Batch Verification)のサポートも追加されました。バッチ検証とは、複数の署名を個別に検証する代わりに、まとめて一度に検証する技術です。これにより、ノードがブロックを検証する際の計算コストを大幅に削減できます。
5-2. OP_SUCCESSと将来の拡張性
TapscriptにはOP_SUCCESS命令が導入されました。これは将来の機能拡張のための「予約スペース」です。現時点では定義されていない命令コードをOP_SUCCESSとして扱うことで、スクリプトは常に「成功」として処理されます。
将来的に新しい命令(例:OP_CHECKTEMPLATEVERIFYやOP_CAT)をソフトフォークで追加する際、OP_SUCCESSがあることで既存のノードとの後方互換性を保ちながらアップグレードが可能になります。これはビットコインの長期的な拡張性に大きく貢献する設計です。
6. Taproot有効化後のエコシステムへの影響
6-1. ウォレット・取引所のP2TR対応状況
Taprootが有効化されてから約2年で、主要なウォレットや取引所のP2TRアドレス対応が進みました。Sparrow Wallet、Electrum、Bitcoin Core(0.23以降)などはP2TRアドレスの生成と受け取りに対応しています。取引所側でも、Binance、Coinbaseなどが2022年〜2023年にかけてP2TR出金に対応しました。
ただし、2025年時点でもP2TRアドレスの普及率はP2WPKHやP2SHと比べてまだ低く、全UTXOの数パーセント程度にとどまっているとのデータがあります。技術的には優れているものの、ウォレットの対応や古いシステムとの互換性の問題から、普及には時間がかかっています。
6-2. OrdinalsとRune:Taproot上で生まれた新プロトコル
Taprootの有効化によって、ビットコインのブロックチェーン上に大量のデータを格納することが技術的・経済的に現実的になりました。この変化を利用して生まれたのが「Ordinals」プロトコルです。OrdinalsはTaprootのwitnessデータ領域を使って、画像・テキスト・コードなどのデータをビットコイントランザクションに埋め込む技術です。
2023年以降、OrdinalsとそれをベースとしたBRC-20トークン(代替可能トークンの標準)が爆発的な人気を博し、ビットコインネットワークのトランザクション数とブロック占有率が大幅に増加しました。これはTaprootの設計者が意図した使い方ではありませんでしたが、ビットコインの表現力が高まったことを示す重要な事例となっています。
まとめ
Taprootアップグレードは、Schnorr署名・MAST・Tapscriptの三つの技術を組み合わせることで、ビットコインのプライバシー・効率性・拡張性を同時に向上させました。単純な支払いから複雑な条件付き取引まで、外見上区別がつかない形式で処理できるため、ブロックチェーン分析による追跡が難しくなり、企業・個人を問わず利用しやすい環境が整いつつあります。
Taprootは即座に劇的な変化をもたらすものではありませんでしたが、Lightning Networkの効率化・スマートコントラクトの実用化・Ordinalsなど新プロトコルの登場といった形で、その効果が徐々に表れています。ビットコインの長期的な技術ロードマップを理解する上で、Taprootは欠かせない知識です。
よくある質問(FAQ)
- Q. Taprootにアップグレードするために何か操作が必要ですか?
- A. ユーザーが特別な操作をする必要はありません。ビットコインノードのソフトウェアをバージョン22.0以降に更新することでTaprootに対応できますが、古いノードでも互換性は維持されています。Taprootアドレス(bc1p〜)を使いたい場合は、対応ウォレットに移行することをご検討ください。
- Q. Taprootはビットコインをイーサリアムのようなスマートコントラクットプラットフォームにするのですか?
- A. Taprootはビットコインのスクリプト能力を拡張しましたが、イーサリアムのような汎用スマートコントラクットプラットフォームにする意図はありません。ビットコインは依然として「健全なお金(Sound Money)」としての特性を最優先とする設計哲学を維持しており、スクリプトの拡張はあくまで範囲限定的なものです。
- Q. Taprootはビットコインのプライバシーを完全に保護しますか?
- A. Taprootはプライバシーを向上させますが、完全な匿名性を保証するものではありません。同一ウォレット内の複数アウトプットの結合分析(UTXO consolidation analysis)や取引所でのKYC(本人確認)などによって、一定程度のトランザクション追跡は依然として可能です。完全な匿名性を求める場合は、CoinJoinやLightning Networkの活用も検討する価値があります。
免責事項
※本記事は情報提供を目的としており、投資を推奨するものではありません。暗号資産への投資は元本割れのリスクがあります。投資判断はご自身の責任で行ってください。