ソフトフォーク

ソフトフォークは、ブロックチェーンプロトコルへの後方互換性のある変更であり、新しいルールの下で有効なブロックのみが古いノードによって有効と見なされます。

ソフトフォークは、以前のものよりも厳しい新しいルールを導入します。これは、新しいルールを認識しない古いノードが、新しいルールの下で作成されたブロックを有効と見なすことを意味します。この後方互換性は、すべてのノードが同時に更新する必要なく、ネットワークを段階的にアップグレードできる重要な機能です。ソフトフォークは、ネットワークのコンセンサスを維持しながら、新しい機能を導入したり、ブロックチェーンプロトコルでバグを修正したりするためによく使用されます。

本質的に、ソフトフォークは有効なブロックのセットを狭めます。アップグレードしていないノードは、新しいルールを古いルールのサブセットとして単純に表示します。これは、有効なブロックのセットを広げ、すべてのノードがコンセンサスを維持するためにアップグレードする必要があるハードフォークとは対照的です。

        graph LR
  Center["ソフトフォーク"]:::main
  Rel_hard_fork["hard-fork"]:::related -.-> Center
  click Rel_hard_fork "/terms/hard-fork"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 5歳でもわかるように説明

ゲームのアップデートのようなものです。新機能が追加されても、アップデートしていない人も今まで通り一緒に遊ぶことができます。ただし、新機能は使えません。

🤓 Expert Deep Dive

SegWit(BIP-141)やTaproot(BIP-341)が代表例です。これらは署名データを分離したり、シュノア署名を採用することで、古いノードとの互換性を保ちながら機能拡張を実現しました。

📚 出典