소프트포크(SoftFork)와 하드포크(HardHork)란 무엇일까?
비트코인 거래소에서 여러가지 코인들을 거래하고,
궁금하여 여러 검색들을 해보면 종종 듣게 되는 용어가 있습니다.
바로 '소프트포크(Soft Fork)' 와 하드포크'Hard Fork)' 인데요,
이번에는 그 두가지의 개념에 대해 알아보고자 합니다.
일단, '포크(Fork)' 란 무엇인지 궁금해 하시는분들이 있을것 같습니다.
포크(Fork) : 쉽게 말하여, 소프트웨어 업그레이드(SoftWare Upgrade) 입니다.
우리가 흔히 사용하는 밥먹을때 사용하는 포크(Fork)에서 유래된것이 맞구요.
포크에서 보면 끝부분이 3부분으로 갈라지듯이,
특정 패치로 인하여 '분기점'이 생기는 것으로 이해하시면 편합니다.(Fork 에는 분기점이라는 뜻이 있습니다.)
분산된 환경에서 다수의 유저가 채굴을 함으로, 이들에 대한 통신규약(프로토콜)을
업그레이드 하는것을 일컫습니다.
포크의 방법에 따라 소프트포크와 하드포크로 나뉘는데요,
두가지의 포크를 나누는 가장 중요한 요인은,
유저가 업그레이드를 반드시 해야하는가에 따라 달라집니다.
이 복잡할 수 있는 설명은 이렇게 그림으로 쉽게 설명이 가능합니다.
소프트포크는 기존의 룰로도 만들어진 블록체인을 유효하게 인정합니다.
즉, 기존유저들은 소프트포크를 진행하지 않아도 됩니다.
다만, 신규로 채굴하는 마이너들은 소프트포크를 진행해야만 합니다.
새로 채굴되는 코인들에게만 해당사항이 있습니다.
또한, 기존룰과 새로운룰은 서로 호환가능(compatible)합니다.
소프트포크는 기존에 채굴하던 체인을 그대로 찍어내서 수정사항은,
그대로 체인에 덧붙이는 기술입니다.
따라서, 대부분 소프트포크를 진행하게 된다면 용량이 커지게 됩니다.
또한, 소프트포크를 진행시 서비스 정지 없이 진행이 가능합니다.
하드포크는 기존의 룰은 유효하지 않고, 새로운 룰만 유효하게 인정합니다.
즉, 사용자와 채굴자 모두 하드포크를 진행해야만 합니다.
하드포크를 진행하기 위해서는 기존 사용자들의 협조가 필요합니다.
최근 하드포크를 진행한 비트코인의 경우 여러 커뮤니티 게시판에서 의견을 수렴하였다고 합니다.
또한, 이더리움 클래식(ETC) 또한 이더리움의 하드포크를 통해
발생한 코인입니다.
이처럼, 기존룰을 인정안하는 대신 기존룰을 새로운 코인으로
독립시키는 것이 가능한것이 하드포크 입니다.
(Ex, 비트코인캐시(BCH))
또한, 하드포크를 진행시 서비스를 잠시 중단 후 업데이트 진행하여야 합니다.
소프트포크와 하드포크 모두 체인, 블록의 구조에 영향을 끼칩니다.
보통 좋은쪽으로 개선이되기 마련이기에,
마이닝 성능이 향샹되곤 합니다.
혹시 수정해야할 부분이나 덧붙여야 할 내용이 있다면,
댓글로 부탁드립니다.