하드포크?
하드포크가 정확히 무엇을 뜻하나요?
IV 정보시스템실 2019. 2. 2.
포크(Fork)란?
포크란 말 그대로 찍어내는 기술입니다. 프로젝트를 진행할 시 버그 혹은 새로운 기능을 개발할 때 기존 프로젝트를 포크(찍어내기) 해서 작업을 하는 것을 의미합니다.
가상화폐 업그레이드는 호환성 여부에 따라 소프트포크(soft fork)와 하드포크(hard fork)로 나누어집니다.소프트포크(Soft fork)는 기존 체인을 그대로 찍어내서 수정 후 그대로 다시 체인에 덧붙이는 기술입니다. 위그림에서 소프트포크를 보면 중간에 있는 기존의 체인을 포크해서 다시 호환이 될 수 있게 붙여 놓은 것을 볼 수가 있습니다. 그래서 일반적인 업데이트들은 소프트포크로 시행합니다.
하드포크(Hard fork)는 소프트포크보다 강력한 업그레이드 방식입니다. 기능 업데이트나, 잘못된 거래가 기록될 때, 이를 바로잡기 위해 체인을 두 갈래로 나누는 것입니다. 기존 체인을 포크 해서 업데이트 후, 업데이트 된 체인을 계속 쓰며, 보통은 기존의 체인은 버리지만 예외도 있습니다. (ex.이더리움 클래식)
위그림을 보면, 중간 기존 체인에서 아래로 포크 된 체인은 다시 호환되지 않고 따로 길을 가는 것을 볼 수 있습니다.하드포크는 이전 버전과 호환이 안되며, 때문에 이전 버전의 암호화폐 블록체인 상에서 개발을 하고, 채굴을 하고, 이용하던 이들의 대다수가 업그레이드 찬성해야 하드포크가 가능합니다.비트코인도 이더리움도 모두 오픈소스입니다.
오픈소스라 함은, 개발된 프로그램의 소스가 모두 공개되어 있다는 얘기죠.
이 공개된 소스를 그대로 복사하여 기존에 없던 새로운 코딩을 기존 소스에 추가하는 것입니다.
그래서 기존에 있던 문제점을 해결하고, 좀 더 완성도 있는 메인넷으로 발전하는겁니다.
윈도우가 계속 업그레이드 되듯이, 업그레이드 된다고 보시면 됩니다.