ソフトフォークとハードフォーク

ヒロ

先輩〜!ビットコインが分裂してビットコインキャッシュができましたよね。その時「ハードフォークが行われた」って書いてあったんですがハードフォークって何ですか?分裂すること?
惜しい。ハードフォークが行われた結果、新しい銘柄が誕生したのよ。確かに「フォーク」は「分岐」という意味よね。これはブロックチェーンの仕組みが関係しているからおさらいしましょう。

ルリ先輩

ブロックチェーンおさらい

ビットコインをはじめ、様々な暗号資産で「ブロックチェーン」という技術が使われています。
これは、取引履歴データの塊(ブロック)を時系列に鎖(チェーン)で繋いだように例えられるためそう呼ばれています。

参考:ブロックチェーンについてもっと詳しく教えて!

ブロックチェーンは24時間休みなく作られていて改ざんすることはできません。

しかし、ブロックに入る取引データの量と、ブロックが作られる速度は変わらないため、取引量が増えると処理が遅くなってしまいます。これは度々スケーラビリティ問題と言われてきました。

スケーラビリティとは、システム利用の負荷が増大した際にどれだけ柔軟に機能の拡張ができるかということで、ここでは取引量が増えて処理が追いつかないことです。

この問題を解決するためにはブロックチェーンのルールを改良するしかありません。

参考:ビットコインのスケーラビリティ問題


常に作られているブロックチェーンのルールを変更する時、フォーク(分岐)します。分岐には「ソフトフォーク」「ハードフォーク」の2種類があって、違いを簡単に説明するとこのようになります。

ソフトフォーク…互換性あり・一時的な分岐
ハードフォーク…互換性なし・永続的な分岐

それぞれの違いをを図解でみてみましょう。

ソフトフォークとSegwit(セグウィット)

ソフトフォークとは、互換性があり、いずれ収束する一時的な分岐のことです。
一時的には分岐しますが、どちらか支持が多かったルールの方へと収束して1本に戻ります。

ソフトフォークの例としてはSegwit(セグウィット)があります。

スケーラビリティ問題を解消するために、ブロックの容量はそのままで取引データを小さくするか、ブロックの容量を大きくするかということになりますが、Segwitは前者を用いています。とてもざっくり言うと今まで一緒だった取引データと署名データを分離して格納することで、全体のデータを小さくしました。Segwit(セグウィット)はSegregated Witnessの略で、そのまま略すと「分離された証人」になります。

Segwitが導入されているのは、ビットコイン、ライトコイン、モナコイン です。

ハードフォーク

一方、ハードフォークとは互換性がなく、永続的な分岐です。

大規模なアップデートが行われた場合、既存のルールと互換性を保つことが困難になり、結果分岐して新しい暗号資産が誕生します。このアップデートの方針が大半の人に賛同されている場合、既存ルールのブロックは事実上消滅するケースもあります。合意が取れなかった場合は、どちらも存続していきます。

ハードフォークで生まれた主な銘柄として、ビットコインキャッシュイーサクラシックなどがあります。

ヒロ

アプデ前のがいいって人と、アプデ後のがいいって人で分かれて「両方続けよう」ってなったんですね
そうそう。

ルリ先輩