ソフトフォークとは

編集:
安藤 啓明 (Hiroaki Ando)

ソフトフォークとは、基本的なルールを変更することなく、ブロックチェーンにおける特定のパラメーターの処理方法を更新することです。このようにしてプロトコルの特定の部分が変更され、更新されたノードが以前有効だったトランザクションを拒否するようになります。しかし、古いノードは新しいブロックを有効なものとして認識するため、ソフトフォークには下位互換性があります。

すべてのノードが新しいバージョンに同意してアップグレードする必要があるハードフォークに対して、ソフトフォークはマイナーの過半数が同意すれば新しいルールを適用可能です。

たとえば、ソフトフォークによってブロックサイズの縮小を実装することができます。ブロックの大きさには制限がありますが、小さくすることに制限はないためです。特定のサイズより大きなブロックを拒否しても、ネットワークから自動的に切断されることはありません。このルールを実装していないノードとは通信を行うことができますが、渡された情報の一部を除外します。

ソフトフォークの例として、P2SH (Pay To Script Hash) がビットコインに追加された事例が挙げられます。