前回はマイニング完了後に、ブロックがブロックチェーンに追加される様子と、状況によって発生するフォークについて解説をしました。
フォークとは、ブロックチェーン組立時にメインチェーンとは別のチェーンが組み立てられてしまうことです。
もしフォークしたブロックチェーンが両方ともそのまま組立続けられてしまうと、ブロックチェーン上に2種類の送金がデータが存在してしまうことになります。
そこでビットコインでは、プルーフオブワーク(Proof of Work)と、1番長いブロックチェーンが常に選ばれるルールによって、フォークしたブロックチェーンは最終的に1本だけが伸び続けるようになっています。
そこでこの記事では、フォークについてもう一歩踏み込んで、
- ソフトフォーク
- それぞれのメリット・デメリット
- 発生する原因
について技術的な内容を交えながらも図を使って分かりやすく解説します。
その前にフォークの基礎をを知りたい方は前回の記事『ビットコインのブロックチェーンが作られる時の3つルール』をご覧ください。
https://bitcoin-fx.jp/?p=7972
◆ソフトフォークとは

ソフトフォークとは、ブロックチェーンに新しいルールが導入されることです。
なおソフトフォークによって必ずしも永続的にブロックチェーンがフォーク(分岐)するわけではありません。
ちなみにこの記事では、ブロックチェーンの新たなルールに未対応の諸々を【旧】とし、対応済みのものを【新】と表します。
まずはソフトフォークの特徴をみてみましょう。
【ソフトフォークの特徴】
- ①ソフトフォークでは、旧ノード※は新トランザクションを受取り承認できる

※ノードとは ビットコインのネットワークを構成している要素のことを言い、PCやスマートフォンがノードの役割を果たす媒体となっています。
また以前の記事で解説したマイナーもノードの1種です。
https://bitcoin-fx.jp/?p=7583 - ②しかし、旧ノードが作った旧ブロックは新ノードからは無効なブロックとなり拒絶される

なので仮にノードのほとんどが旧ノードのままで、旧ブロックが組立てられ続けたとします。
そうすると一番長いブロックチェーンが常に選ばれるというルールがあることで、伸び続けた旧チェーンが正しくなり、せっかく採用された新ルールはそのブロックチェーン上で利用されなくなってしまいます。
そこでビットコインでは、1000ブロックのうち950ブロック(95%以上)がソフトフォークに対応したノードによって作られていることが確認できた後に、ソフトフォークを実施しています。
それにより新ルールのブロックチェーンが伸び続けるようにしています。
では次にメリットとデメリットを見てみましょう。
ソフトフォークのメリットデメリット
【ソフトフォークのメリット】
- ブロックチェーンが永続的に分岐してしまうリスクがハードフォークと比較して低い
- つまりユーザーからすると、引き続き同じ仮想通貨として利用できる
仮想通貨のユーザーからすれば何も意識しないで高機能になることが、利便性においては理想なアップデート方法です。
それを実現しているのがソフトフォークですが、現実にはウォレットや取引所もノード新たなルールに対応しなければいけなく、ユーザーにも負担が掛かってしまっています。
【ソフトフォークのデメリット】
- 新旧ルールに互換性を持たせるために、大きな機能(ルール)変更ができない
例えば『ビットコインキャッシュ』のように、ブロックサイズを1メガから→8メガに変更するといったルール変更は、全く違うルールに変わってしまうためソフトフォークでは実現できません。
ソフトフォークの代表例
- マルチシグ(P2SHpay to script hash)
P2SHを導入することによりビットコインにマルチシグネチャの機能が追加されました。 - セグウィット(Segwit)
ビットコインのスケーラビリティ問題への対策として、スモールブロック派によって導入された機能です。それによりブロックサイズを変更することなく、秒間の処理件数を向上させています。
意外とご存知ない方も多いと思いますが、マルチシグもソフトフォークによって導入されたルールです。
【まとめ】ソフトフォークについて
今回の記事ではソフトフォークについて解説をしました。
最後に重要なポイントをまとめてみます。
- ソフトフォークはブロックチェーンのルールに新たなルールが追加されること
- ソフトフォークによってチェーンが分岐することは基本的にない
- ユーザーにとってメリットは、引続き同じ仮想通貨として新機能が実装されたものを利用できること
- デメリットはソフトフォークでは大胆なルール変更ができないこと
- マルチシグとセグウィットもソフトフォークによって実装された
ソフトフォークは通貨の分裂が起こらないことから、危険が少なく一見便利なようにも思えますがウォレットや取引所の対応スピードが遅いと結局はユーザーに不便と思われてしまいます。
今後もっとブロックチェーンエンジニアが増えるとそのようなことも無くなり、仮想通貨は更に便利になっていくことでしょう。
次回はハードフォークについて解説を致します。