ソフトフォーク
ソフトフォークは、ブロックチェーンプロトコルへの後方互換性のある変更であり、新しいルールの下で有効なブロックのみが古いノードによって有効と見なされます。
ソフトフォークは、以前のものよりも厳しい新しいルールを導入します。これは、新しいルールを認識しない古いノードが、新しいルールの下で作成されたブロックを有効と見なすことを意味します。この後方互換性は、すべてのノードが同時に更新する必要なく、ネットワークを段階的にアップグレードできる重要な機能です。ソフトフォークは、ネットワークのコンセンサスを維持しながら、新しい機能を導入したり、ブロックチェーンプロトコルでバグを修正したりするためによく使用されます。
本質的に、ソフトフォークは有効なブロックのセットを狭めます。アップグレードしていないノードは、新しいルールを古いルールのサブセットとして単純に表示します。これは、有効なブロックのセットを広げ、すべてのノードがコンセンサスを維持するためにアップグレードする必要があるハードフォークとは対照的です。
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)が代表例です。これらは署名データを分離したり、シュノア署名を採用することで、古いノードとの互換性を保ちながら機能拡張を実現しました。