仮想通貨のハードフォークとは?

仮想通貨のハードフォークとは?

世の中に今仮想通貨の種類はたくさんあり、8000種類以上にものぼります。すべての仮想通貨はブロックチェーン技術に基づいて、取引記録の元帳として使っています。仮想通貨のハードフォークは実際にそのブロックチェーンのハードフォークになります。

ブロックチェーン技術に関するハードフォーク(hard fork)とは、ブロックチェーンネットワークのプロトコルに対する根本的な変更を行い、結果的に下の図のように2つのブロックチェーンを生み出します。

  • 以前のプロトコルに従うブロックチェーン
  • 新しいプロトコルに従うブロックチェーン
hard fork/ハードフォーク

ハードフォークは、ビットコインだけでなく、どの仮想通貨のブロックチェーンでも発生する可能性があります。

ハードフォークの理由は?

開発者がハードフォークを実装する理由はいろいろあります。

  • 既存のブロックチェーンの機能を改善・拡張するため
  • ソフトウェア最新バージョンに見られる重要なセキュリティリスクを修正するため
  • ブロックチェーン上のトランザクション記録を特別に改修するため。例えば、2016 年 7 月にイーサリアム(ETH:Ethereum)コミュニティは分散自律組織(DAO)のハッキングを取り消すために、ハードフォークを行いました。しかし、記録の巻き戻しを反対する人たちは旧バージョンを使い続け、それがイーサリアム・クラシック(ETC:Ethereum Classic)になりました。
  • 新しいテクノロジープロジェクトのクラウドファンディング方法として利用するため
  • 新種の仮想通貨を発行するため。新種の仮想通貨を発行する際、ゼロからその通貨のソフトウェアを作るより、既存の仮想通貨からハードフォークして作る方が簡単です。

ハードフォーク後仮想通貨は二つになる?

ハードフォークでは、新しいプロトコルとブロックチェーン上に有効なブロックを構成するルールについて、すべてのマイナーが合意することを求められます。すべてのマイナーは新しいソフトウェアにアップグレードし、古いブロックチェーンを継続するマイナーがいなければ、その古いブロックチェーンは仮想通貨として消滅します。結果的には、一つの仮想通貨のままで、新しいブロックチェーンで継続します。通貨保有者が保有している通貨は新しいブロックチェーンに移行されます。

しかし、仮想通貨は中央管理機構がないので、コミュニティ内でハードフォークに完全な賛成を得るのはとても難しいです。もし、その仮想通貨コミュニティにハードフォークの変更内容に反対する人たちが古いソフトウェアを使い続け、古いブロックチェーンを継続した場合、結果的に二つの仮想通貨になります。例えば、以下のようなハードフォークは過去にありました。

  • 2016 年 7 月にイーサリアム(Ethereum)のハードフォークでイーサリアムとイーサリアム・クラシック(ETC)という二つの仮想通貨になりました。
  • 2017 年 8 月にハードフォークによって現在のビットコイン・キャッシュ(BCH)の誕生も、ビットコインのコミュニティですべてのマイナーが合意に至ることができなかったためです。

もちろん、最初から新種の仮想通貨を作る目的のハードフォークではマイナーの合意が必要なく、二つの通貨になります。

二つの通貨になる場合は、必ず新通貨がハードフォーク前の通貨所有者に付与されるとは限らなず、実際に、新通貨が付与されなかったケースも多いです。また、取引所によって新通貨付与の対応が異なる場合もあります。

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

ハードフォークとソフトフォーク両方とも、基本的に仮想通貨のブロックチェーンの生成プロトコルに変更を加えます。

ソフトフォークでは、ソフトウェアを新しいバージョンに更新しても、ブロックチェーンを一つに維持します。新旧バージョンのソフトウェアは互換性があり、徐々にネットワーク上すべてのノードは新しいバージョンにアップグレードし、最終的に同じバージョンに収束していきます。

ハードフォークでは、ブロックチェーンを新旧二つのブロックチェーンに分岐し、新旧バージョンのソフトウェアは互換性がなく、ソフトウェアを新バージョンに更新したら、新ブロックチェーン上で動きます。古いソフトウェアのままなら、古いブロックチェーン上で継続します。

ソフトフォークでは、新旧バージョンのソフトウェア両方とも同じブロックチェーンを処理するため、安全性と整合性の問題を起こしやすいです。そのため、ブロックチェーンに対する変更はソフトフォークで済む場合でも、多くの開発者はハードフォークを使います。二つのブロックチェーンに分けるために、ブロックチェーン上既存のブロックを解析するには膨大な計算パワーが必要ですが、ハードフォークから得られる安全性と整合性が重視され、ソフトフォークが使用されるケースは少なく、ソフトフォークという言葉も耳にすることは少ないです。

ソフトフォークの実例として、2012年にビットコインにP2SH(Pay to Script Hash)という送金方法が追加されました。P2SHとはビットコイン・トランザクション・スクリプトです。ビットコインを送金する際に、相手の公開鍵のハッシュ値を使用するP2PKH(Pay to Public Key Hash)に対して、P2SHではスクリプトのハッシュ値を利用します。P2SHアドレスに対してビットコインを送金する時には、送金者は通常の送金と同じように3から始まるP2SHアドレスに対して送金できます。

ビットコインが2021年11月に予定されている大型のアップグレードTaprootもソフトフォークで行われる予定です。ビットコインは世界最大の仮想通貨コミュニティーで、完全にアップグレードの内容は合意に至るのが難しく、ハードフォークを使用した場合、結果的に二つの通貨に分裂しやすいです。

ビットコインハードフォークの歴史

ビットコインに似た名前の仮想通貨が複数あります、たとえば、ビットコイン・キャッシュ (BCH)、ビットコイン・ゴールド(BTG)など、ハードフォークを経て生成されました。以下はビットコインが誕生して以来、最も重要なハードフォークの歴史をまとめました。

ビットコイン XT

ビットコインXTは、注目されたビットコインの最初のハードフォークでした。2014年後半にマイク・ハーン(Mike Hearn)はいくつかの新機能を提案し、ソフトウェアを立ち上げました。前バージョンのビットコインソフトウェアでは毎秒最大7回の取引が可能でしたが、XTビットコインは毎秒24回の取引を目標にしました。これを実現するために、ブロックサイズを 1 メガバイトから 8 メガバイトに増やすことを提案しました。 

ビットコイン XT は当初成功を収めており、2015 年夏の終わりに 1,000 台以上のノードがそのソフトウェアを実行していました。しかし、数ヶ月後、このプロジェクトはユーザーの関心を失い、ネットワーク上のノード数が減り、最終的にビットコインXTは利用できなくなりました。

ビットコイン・クラシック(BXC)

ビットコインXT が中止された後に、一部のコミュニティメンバーはまだブロックサイズを増やすことを望んでおり、彼らは2016年初めにビットコイン・クラシックを立ち上げました。ブロック・サイズを 8 メガバイトに増やすことを提案した XT とは異なり、クラシックはそれを 2 メガバイトに増やす仕様となっています。 

ビットコインXTと同様に、ビットコイン・クラシックは最初に関心を集め、2016年中に数ヶ月間約2,000ノードが動いていました。

現在ビットコイン・クラシックの時価総額や知名度は高くないが、一部開発者の強いサポートで、このプロジェクトは現在も存続しています。

ビットコイン・アンリミテッド

ビットコイン・アンリミテッド(Bitcoin Unlimited:BU)は、2016年初頭のリリース以来、謎のままでした。プロジェクトの開発者はコードをリリースしましたが、必要なフォークの種類を指定しませんでした。ビットコイン・アンリミテッドの特徴は、マイナーがブロックのサイズを自分で指定できるようになり、ノードとマイナーが受け入れるブロックのサイズが最大16メガバイトまで可能です。

若干関心はありましたが、ビットコイン・アンリミテッドは広範な受け入れを得ることができませんでした。

SegWit

ビットコイン・コア(Bitcoin Core : ビットコインのマイニングや取引をするためのオープンソースプログラム)の開発者ピーター・ウイユ(Pieter Wuille)は、2015年後半にSegWit(Segregated Witness)のアイデアを発表しました。簡単に言えば、SegWitは各ビットコイン取引のサイズを縮小し、一度により多くの取引を行うことを可能にすることを目指しています。SegWit は技術的にはソフトフォークでしたが、SegWitプロジェクトはハードフォーク対ソフトフォークの論争を引き起こしました。

ソフトフォークでは、新旧ソフトウェアは互換性があり、強制的に新しいソフトウェアに更新することがありません。SegWitの採用は未だに完全に進んでいません、現在SegWitを活用しているビットコインアドレスの割合は約53%にとどまっています。

ビットコイン・キャッシュ (BCH)

一部のビットコイン開発者とユーザーは、SegWitによるプロトコルの変更を避けるためにハードフォークを行いました。2017年8月、リリースされたビットコイン・キャッシュのソフトウェアがビットコインの取引とブロックを拒否し、メインブロックチェーンから分裂しました。ビットコイン・キャッシュ(BCH)は、このハードフォークで生まれました。

ビットコイン・キャッシュは8メガバイトのブロックサイズを使用し、SegWitプロトコルを採用しませんでした。

ビットコイン・キャッシュは、仮想通貨の中で最も成功したハードフォークと言えます。2021年7月現在、仮想通貨コミュニティや多くの人気取引所の支持によって、時価総額が12番目に大きい仮想通貨です。

ビットコイン・ゴールド

ビットコイン・ゴールド(BTG)は、2017年10月にビットコイン・キャッシュに続けてハードフォークによって誕生しました。このハードフォークの作成者は、マイニングに必要な機器やハードウェアの面であまりにも専門的になり過ぎていると思い、普通の家庭用パソコンに搭載しているグラフィックス処理ユニット(GPU)でもマイニングを可能にすることを目指していました。

ビットコインの初期では、家庭用パソコンでもビットコインをマインイグすることは可能でしたが、マイニングの難易度の高まりと、ビットコイン・マイニング専用に作られたASICハードウェアの出現により、家庭用パソコンを使用して自宅でビットコインをマインイグして収益性を確保することは難しくなりました。

ビットコイン・ゴールドのハードフォークで1つの特徴は、開発チームが事前に10万枚のコインをマインイグするプロセスを設けました。これらのコインの多くは開発者がビットコイン・ゴールドの運営・成長するための資金調達に使用され、一部が開発者への支払いとして確保されていました。

ビットコイン・ゴールドは概ねビットコインの基本原則を遵守していますが、マイニング時に必要なプルーフオブワーク(PoW)アルゴリズムの点だけ異なります。

2021年7月現在、ビットコイン・ゴールドは仮想通貨時価総額で100位以内にランクインしています。

SegWit2x

SegWit が 2017 年 8 月に実装されたとき、開発者はプロトコルの2 回目のアップグレードを計画しました。それがSegWit2xと呼ばれ、ブロックサイズが2 メガバイトに変更され、ソフトフォークでは不可能で、ハードフォークが必要になり、2017年11月にハードフォークが行われる予定でした。しかし、もともとSegWitプロトコルを支持していたビットコインコミュニティの多くの企業や個人は、このハードフォークに参加しないことを表明しました。SegWit2xに含まれるリプレイ保護という機能に対する懸念が主な原因でした。

2017年11月8日、SegWit2xの開発チームは、プロジェクトの以前の支援者間の合意に至らなかったため、計画されたハードフォークがキャンセルされたと発表しました。




コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です