비트코인(BTC) 네트워크에서 9월 11일 같은 높이에 두 개의 유효한 블록이 생성되는 한 블록 재조직이 발생했다. 후속 블록이 연결된 앤트풀 체인이 주체인으로 남으면서 경쟁은 일시적인 분기로 정리됐다.
블록 탐색기 멤풀닷스페이스에 따르면 비트코인 966500번 블록은 9월 11일 오후 8시 30분 30초(한국시간)에 앤트풀(AntPool)이 채굴했으며, 4359건의 거래와 3.14112795 BTC의 보상으로 구성됐다.
U.Today는 갤럭시 리서치 자료를 인용해 같은 높이에서 스파이더풀(SpiderPool)도 별도의 유효한 블록을 만들었다고 보도했다. 두 채굴풀이 거의 동시에 블록을 전파하면서 노드마다 먼저 확인한 블록이 달라진 상황이다.
한 노드는 스파이더풀 블록을 먼저 확인했지만, 앤트풀 블록 위에 다음 블록이 추가되면서 앤트풀 쪽 체인이 누적 작업량에서 앞섰다. 스파이더풀 블록은 주체인에 포함되지 않은 스테일 블록으로 처리됐다.
U.Today는 이번 사례가 한 달 안에 발생한 세 번째 한 블록 재조직이라고 보도했다. 다만 이 횟수와 스파이더풀 블록의 세부 내용은 별도 1차 자료로 확인되지 않았다.
앞선 사례로 지목된 비트코인 963853번 블록은 8월 24일 스파이더풀에서 채굴됐다. 해당 블록에는 6662건의 거래와 3.12979268 BTC의 보상이 기록돼 있다.
한 블록 재조직은 여러 채굴자가 거의 동시에 같은 높이의 블록을 만들 때 발생할 수 있다. 이때 네트워크에는 잠시 두 갈래의 유효한 체인이 동시에 존재한다.
노드는 처음에는 먼저 전달받은 블록을 따를 수 있다. 이후 한쪽 체인에 다음 블록이 연결되면 누적 작업량이 더 큰 체인을 주체인으로 선택한다.
경쟁에서 밀린 블록은 형식적으로 유효하더라도 최종 체인에 포함되지 않는다. 비트코인 개발자 문서도 채굴 네트워크가 경쟁 블록을 만들고 후속 블록을 통해 하나의 기록으로 수렴하는 과정을 설명한다.
스테일 블록에 포함된 코인베이스 거래의 채굴 보상은 주체인 보상으로 인정되지 않는다. 비트코인 개발자 문서는 체인 분기 뒤 스테일 블록의 코인베이스 보상 사용에 최소 100블록의 제한이 있다고 설명한다.
스테일 블록에만 포함됐던 거래가 모두 사라지는 것은 아니다. 거래가 유효하고 다시 전파되면 멤풀로 돌아간 뒤 이후 블록에 포함될 수 있다.
이번 사례는 비트코인 네트워크가 장기적으로 분리됐다는 의미와는 다르다. 두 채굴풀이 같은 부모 블록 위에서 경쟁했지만, 후속 블록이 한쪽에 연결되면서 기록이 하나의 체인으로 수렴했다.
또한 이번 사례만으로 합의 오류나 51% 공격이 발생했다고 볼 수는 없다. 블록 전파 속도와 후속 블록 확보 시점의 차이가 주체인 결정에 영향을 준 사례에 가깝다.
비트코인 거래소나 결제 서비스는 통상 여러 블록이 추가된 뒤 거래 확정 여부를 판단한다. 한 블록 수준의 재조직이 거래소 입출금이나 결제 서비스에 미친 영향은 확인되지 않았다.
앞서 본지는 블록별 수수료 격차가 커질수록 같은 높이의 경쟁 블록이 늘어날 수 있다는 연구 결과를 보도했다. 이번 사례 역시 채굴풀 간 전파와 후속 블록 경쟁이 체인 선택에 직접 작용하는 구조를 보여줬다.
이번 경쟁은 앤트풀 체인이 주체인으로 남고 스파이더풀 블록이 스테일 블록으로 정리되면서 마무리됐다.
<저작권자 ⓒ TokenPost, 무단전재 및 재배포 금지>
많이 본 기사