ブロックチェーンの分岐(フォーク)ソフトフォークとは?ハードフォークとの違いは?

ソフトフォーク
2022-03-02 更新

ビットコインなどの暗号資産(仮想通貨)に用いられる分散型台帳であるブロックチェーンは、計画的に仕様の変更を行ったり、新しい機能を追加したり、時には新しい暗号資産を派生させることがあります。このようなブロックチェーン自体のルール変更を行う際、ブロックチェーンは「分岐」します。

ブロックチェーンの分岐方法には、その目的と理由によってソフトフォークハードフォークと呼ばれる2つの方法があります。

今回は、暗号資産の利便性向上を図ることができるといわれるソフトフォークについて詳しくご紹介します。

ブロックチェーンのソフトフォークとは?

ビットコインを始めとする暗号資産(仮想通貨)のブロックチェーンは、1本の鎖状につながっています。しかし、ブロックチェーンは何らかの理由で途中から分岐することがあります。この分岐を「フォーク」と呼び、枝分かれする理由によって「ソフトフォーク」、「ハードフォーク」に分類されます。

一般的にソフトフォークは、暗号資産の問題点を解決したり、バグを修正したりするために、ルールや仕様を変更する際に発生するプロトコルの変更のことを指します。分岐後、ソフトフォークはやがて1本のブロックチェーンに収束します。ソフトフォークは、それまで利用されていたブロックチェーンと変更後(ソフトフォークが行われた後)のブロックチェーンとで互換性があります。そのため、変更前のチェーンで使われていた暗号資産がそのまま使用できます。

一方、ハードフォークはブロックチェーンそのものの仕様変更が行われるため、ブロックに互換性がなくなり、フォーク後は永続的に分岐したままとなります。つまりハードフォークは、新たに仕様の異なるブロックチェーンが誕生することになり、結果、新しい仕様の暗号資産が派生することがあります。

ソフトフォークの目的は?

ソフトフォークは暗号資産のアップデートを目的に行われますので、その多くは利便性が向上し、あるいはそれまでの問題を解決するため、市場においては好材料として受け入れられることがほとんどです。しかし、仕様が変更されるということは、それまでなかったバグが発生したり、新たな問題が発生したりしないとも限りません。ソフトフォーク直後は、しばらく暗号資産そのものが安定するまで様子を見ることも大切です。フォーク後の取引は慎重に行うようにしましょう。

これまでのソフトフォーク事例

過去に実施されたソフトフォークの事例としては、実際にビットコインにて実施されたPay to script hash(P2SH)への仕様変更、Segwit(Segregated Witness=署名の分離)への仕様変更、Taprootの実装などが有名です。

Pay to script hash(P2SH)への仕様変更

P2SHは、マルチシグネチャーを容易にする方法です。マルチシグネチャーとは、ビットコインを決済や送付に使用する際に、複数人の署名が必要となる認証方法で、セキュリティ面が優れています。しかし、マルチシグネチャー方式でビットコインを送付する場合、複数の署名が必要なため送付側の手数料がかさむという問題がありました。

これは、通常の送付方法であるPay To Public Key Hash(P2PKH)では、1つの公開鍵に与えられたハッシュ値をアドレスとして指定して使用するため、マルチシグネチャーでは複数分の手数料が発生してしまいます。しかしP2SHでは、送付指示(スクリプト)のハッシュ値をアドレスとして指定し使用することができるため、スクリプトに公開鍵のハッシュ値を検証するように指示することができ、マルチシグネチャーでありながら、従来の方法同様に簡単かつ安価に送付することができるようになりました。

Segwit対応

Segwit(セグウィット)は、ビットコインのスケーラビリティ問題の解決策の1つとして2017年8月にソフトフォークにて実装されました。ビットコインのブロックチェーンのブロック容量は1MBと小さいため、取引が増えると処理速度が遅くなるという問題がありました。Segwitは、これを解決する方法です。

Segwitを簡単に説明すると、トランザクション情報をコンパクトにすることで、ブロックに入れられる取引データを増やす技術です。取引データ内には、取引を識別するトランザクションIDがあります。このトランザクションIDにある署名を、取引データから独立した署名領域に移行させて保管することで、トランザクションデータを圧縮できるようになります。

トランザクション情報をコンパクトに圧縮することで1MBのブロック容量内に格納できる取引データ量が増え、より多くの取引を行うことができ、スケーラビリティ問題を解決するといわれています。

Taproot(タップルート)実装

タップルートは、シュノア署名とMAST(Merkelized Abstract Syntax Tree=マークル化抽象構文木)の利点を融合し、ビットコインのプライバシー機能とスケーラビリティの向上を図る技術です。

シュノア署名は、トランザクションの署名方式アルゴリズムの1つです。ビットコインは署名方式に、楕円曲線デジタル署名アルゴリズム(Elliptic Curve Digital Signature Algorithm 「ECDSA」)を採用していましたが、タップルート実装にあたり、シュノア署名方式に変更されました。

ECDSAによる取引においては、送信者と受信者が常に1対1で署名を行う必要があり、取引の数だけ署名データが必要です。一方のシュノア署名では、受信者1人に対して送信者が複数という場合に、署名データを1つにまとめ、ブロック内の署名データを縮小し、結果としてデータサイズを削減できます。

ECDSAよりも優れているといわれるシュノア署名は1989年に発表された技術であるものの、開発者の特許(US4995082A)により保護されていたため、2008年まで利用が制限されていました。開発当初ビットコインはシュノア署名の採用も考慮していましたが、より広範囲で使用されていたECDSAを選択した経緯があります。

MASTは、スマートコントラクトをコンパクトなデータ構造にて構築できる技術です。MASTを実装することで、スマートコントラクトの必要な条件だけを公開できることから、取引データのサイズが削減可能で、プライバシーを高めることができます。

タップルートは、シュノア署名とMASTの実装のもとに構築される技術です。タップルートはスマートコントラクトのための新しいスクリプト言語Tapscriptを組み合わせ、ビットコインのスマートコントラクトを拡張します。これまでビットコインは、スマートコントラクトの必要条件を送付時にすべて開示する必要がありましたが、タップルートを使用することで、スマートコントラクトによる送付を通常のビットコイン取引と同様に見せかけることが可能となります。それにより、プライバシーも強化されます。

まとめ

暗号資産(仮想通貨)はソフトフォークによってアップデートを行い、それぞれの利便性の向上や問題の解決を行ってきました。

また、今後もさらに性能の向上を図るために、コミュニティでは多くの計画的なソフトフォークが多数提案されています。

ソフトフォークによって、これまで不可能だったプロジェクトが可能になることがあります。そのためユースケースが広がることで、暗号資産の価格に影響を与えることも指摘されています。

また、ソフトフォークだけでなく、ハードフォークが予想される場合は新たな暗号資産が生まれる可能性があることから、ソフトフォーク以上に価格への大きな影響が考えられます。

ハードフォークについて詳しくは、「暗号資産(仮想通貨)のハードフォークとは?何が起こっているの?」をご参照ください。

※掲載されている内容は更新日時点の情報です。現在の情報とは異なる場合がございます。予めご了承ください。

関連記事

今、仮想通貨を始めるなら
DMMビットコイン