소프트 포크

소프트 포크는 블록체인 프로토콜에 대한 이전 버전과의 호환 변경으로, 새로운 규칙에 따라 유효한 블록만 이전 노드에서 유효한 것으로 간주됩니다.

소프트 포크는 이전 규칙보다 더 엄격한 새로운 규칙을 도입합니다. 즉, 새로운 규칙을 인식하지 못하는 이전 노드는 새로운 규칙에 따라 생성된 블록을 여전히 유효한 것으로 간주합니다. 이러한 이전 버전과의 호환성은 모든 노드가 동시에 업데이트할 필요 없이 네트워크를 점진적으로 업그레이드할 수 있도록 하는 핵심 기능입니다. 소프트 포크는 네트워크 합의를 유지하면서 새로운 기능을 도입하거나 블록체인 프로토콜의 버그를 수정하는 데 자주 사용됩니다.

본질적으로 소프트 포크는 유효한 블록의 집합을 좁힙니다. 업그레이드하지 않은 노드는 새로운 규칙을 이전 규칙의 하위 집합으로 봅니다. 이는 유효한 블록의 집합을 넓히고 모든 노드가 합의를 유지하기 위해 업그레이드해야 하는 하드 포크와 대조됩니다.

        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과 Taproot이 가장 유명한 소프트 포크 사례입니다. MASF(채굴자 활성화) 방식 외에도 UASF(사용자 활성화)를 통해 커뮤니티가 합의를 이끌어낼 수 있습니다.

📚 출처