블록체인의 롤백은 어떻게 가능한가요?
블록체인은 한번 생성된 블록을 임의로 변경하거나 위조할 수 없는 비가역성을 갖고 있는데, 이더리움이 해킹 사건 후 하드포크를 통해 롤백했던 사례처럼 기술적으론 롤백이 가능한 것 같습니다.
블록체인에서 롤백은 어떻게 진행 되나요?
그리고 이런 롤백이 가능하다면 블록체인을 규정하는 특징 중 비가역성은 잘못된게 아닐까요?
롤백이 기술적으로 가능하다고 하던데 어떤 방식으로 진행되는 건가요?
얼마 전 실제로 비트코인캐시 블록체인에서 거래 내역을 수정한 사례가 있었습니다. 해당 사례를 예로 들어 답변을 드리도록 하겠습니다. 우선 어떤 일이 있었는지 먼저 말씀드리겠습니다.
지난 5월 15일 비트코인캐시 하드포크로 인해 기존의 사용, 지불 불가능한 코인들(Unspendable)이 사용가능하도록 되어 본래 소유자들이 그것을 다시 돌려받는 것이 가능해진 바가 있습니다.
그런데 이러한 코인들을 정체를 알 수 없는 채굴자가 가로채 자신의 소유로 만들려고 시도했고 이러한 잘못된 거래를 다시 되돌리기 위해 비트코인캐시의 1위, 2위 채굴풀인 BTC.COM과 BTC.TOP이 셀프로 51% 공격을 하여 거래 내역을 수정했다는 것입니다.
물론 방어적이고 공익적인 목적으로 이루어졌지만 하지만 방어든 해킹이든 어쨌든 그 방법이 51% 공격의 원리를 이용했기 때문에 51% 공격이라고 해도 무방하리라 생각합니다.
비록 외부 해커에 의한 해킹과 암호화폐 대량 탈취 사건이 아니고 공격 목적도 원래 암호화폐의 제대로된 주인에게 코인을 돌려준다는 명분이나 선의가 있었더라도, 비트코인캐시 채굴 풀 중 해시 파워 1위와 2위가 합심하게 되면 거래 내역을 자기들 마음대로 강제로 바꾸는 것이 가능하다는 것을 보여줬다는 점에서 비판을 받을 수 있는 일이었다고 생각합니다.
끝으로 블록체인의 비가역성이라는 것은 일반적인 특성으로 보통은 비가역성을 가지는 것이 맞습니다. 하지만 이처럼 블록체인의 마이닝 노드들이 셀프 51% 공격을 해 버리는 특수한 상황에서는 적용되기 힘들다고 보시는 것이 좋을 듯합니다.
답변이 도움이 되길 바랍니다.