Софт-форк (Soft Fork)
Soft fork - це сумісна зі старими версіями зміна протоколу блокчейну, де лише дійсні блоки за новими правилами вважаються дійсними старими вузлами.
Soft forks вводять нові правила, які є суворішими за попередні. Це означає, що старі вузли, які не розпізнають нові правила, все одно вважатимуть блоки, створені за новими правилами, дійсними. Ця зворотна сумісність є ключовою особливістю, що дозволяє поступово оновлювати мережу, не вимагаючи одночасного оновлення всіх вузлів. Soft forks часто використовуються для впровадження нових функцій або виправлення помилок у протоколі блокчейну, зберігаючи консенсус мережі.
По суті, soft fork звужує набір дійсних блоків. Вузли, які не оновилися, просто бачать нові правила як підмножину старих правил. Це контрастує з hard forks, які розширюють набір дійсних блоків і вимагають, щоб усі вузли оновилися для підтримки консенсусу.
graph LR
Center["Софт-форк (Soft Fork)"]:::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;
🧒 Простими словами
Це як оновлення текстового редактора. Якщо додали новий шрифт, користувачі зі старою версією все одно зможуть відкрити файл, але побачать текст стандартним шрифтом. Вони залишаються в грі, хоча й не мають нових функцій.
🤓 Expert Deep Dive
Технічно софт-форки часто використовують виходи 'anyone-can-spend'. У SegWit дані підпису було винесено за межі основного блоку, тому старі вузли бачили транзакцію як таку, що не потребує підпису, тоді як нові вузли перевіряли криптографічне підтвердження у полі witness.