검수요청.png검수요청.png

사용자 활성화 하드포크

위키원
chlheewoo (토론 | 기여)님의 2019년 8월 28일 (수) 17:43 판
이동: 둘러보기, 검색

UAHF(User Activated Hard Fork)는 전 세계적으로 가장 강력한 해시파워를 자랑하는 비트메인에서 진행한 하드포크 계획이다. 세그윗(Segwit)에 대항한 채굴자들은(블록 내부내용을 완전히 뒤바꾸는 업데이트를 하게되면 기존 채굴기가 무용지물이 되므로) 비트코인의 확장성 문제를 해결하기 위한 대안으로 블록의 크기를 2MB로 제한을 두고 늘리겠다는 대안을 내놓게 되는데 이를 UAHF라고 한다. [1]

개요

정의

UASF는 User Activated Soft Fork의 약자로서 사용자가 중심이 되어 소프트포크를 활성화하려는 시도를 뜻한다 이는 전체 노드에 의해 지정된 날짜에 소프트포크의 활성화 시간이 발생하는 매커니즘이다. UASF는 많은 산업 지원과 조정이 필요하며, 해당 개념은 BIP148 제안에서 세그윗(segwit) 활성화와 결합되었다.


배경

비트코인 초기 설계 당시, 보안 안전성을 담보하기 위해 설정한 1메가바이트(MB) 용량이 급증한 사용자에 의해 블록이 한계에 도달했고, 1초당 평균 7건의 블록체인 거래 내역을 처리하는 등 거래 처리 속도가 느려지고 있다. 이에 비트코인 개발자 측은 세그윗(Segwit)을 통해 블록에서 전자서명 부분을 떼어 블록 용량을 증가시키는 방법으로 기존의 비트코인의 블록 용량 부족 현상을 개선하기 위한 움직임을 취했다. 그러나 중국 대형 채굴업체인 비트메인 측이 비트코인 개발자 측에 반발했고 이로 인해 문제가 심화되었다. 비트코인의 경우 채굴을 한 이후 네트워크 전체에 거래내역을 보내고 51% 이상 공유가 된 거래 내역이 실질적인 코인으로써 효력을 갖게 된다. 비트코인의 세그윗 이슈가 커지게 된 것은 애초에 이만큼의 거래량을 예상하지 못한 초기 비트코인의 블록체인 설계에 원인이 있다.

10분마다 1MB 용량의 블록이 생성되는 비트코인은 글로벌 전역에서 거래량이 급속도로 증가하며 네트워크 상에 블록을 생성하지 못해 대기 상태의 코인이 여럿 존재하게 되었다. 블록체인의 기술 상 거래 내역이 네트워크 참여자 모두의 블록에 분산저장이 되어야 하지만 블록 용량이 1MB에 불과한 탓에 빠른 처리가 불가능한 것이다. [2]

방법

비트코인 블록 용량 확장을 하기 위한 방법에는 크게 2가지가 존재한다. 먼저 비트코인 개발자 측에서 선호하는 블록에서 서명 부분을 제거해 그 부분을 블록으로 사용하는 세그윗 방식과 비트메인 측에서 선호하는 블록 자체를 확장하는 하드포크 방식이다. 쉽게 말해 세그윗 방식은 블록 내에 존재하는 서명 부분만 따로 떼낸 후 블록 용량을 2MB로 늘려서 거래 내역을 더 사용할 수 있게 만드는 것이다. 이 경우 기존 비트코인과 블록 시스템 디자인 측면에서 동일하기 때문에 연속성이 유지된다. 특히 서명 부분을 따로 떼내서 관리가 가능하기 때문에 이더리움과 유사한 '스마트 컨트랙트' 기능이 비트코인으로도 구현이 가능해진다.세그윗을 하게 되면 비트코인의 처리 기능이 빨라지고 추가 기능도 탑재되는 등 다양한 부가 이익이 생긴다.

그러나 비트메인 측은 완강히 거부의 입장을 내비치고 있다. 중국의 대형 채굴업체인 비트메인은 지금까지 채굴량을 늘리는 편법 채굴 프로그램을 사용해 채굴을 진행해 왔다. 하지만 세그윗을 하게 되면 기존의 편법 채굴 프로그램을 사용할 수 없게 된다. 즉 세그윗을 하게 되면 비트메인은 그동안 편법으로 거둬왔던 비트코인 수익을 얻지 못하게 된다. 이런 상황에서 비트메인이 들고 나온 방법이 세그윗 2x이다. [3]

UAHF.jpg

1. UASF(User Activated Soft Fork)
특정 일자에 세그윗(Segwit)을 진행하고 지갑을 업데이트한 사용자들 사이에 적용하자는 방법

2. UAHF(User Activated Hard Fork)
세그윗(Segwit)을 진행하지 말고 블록의 사이즈만 늘리자는 방법

3. 세그윗 2x
특정 일자에 세그윗(Segwit)을 진행하고, 블록사이즈를 2MB로 늘리자는 방법


차이점

두 개념은 모두 기존버전에서 새로운 버전으로 업그레이드 된다는 공통점을 가지고 있다. 즉, 두 가지 모두 프로토콜이 변경된다. 하지만 업데이트가 진행되는 방식에는 차이가 발생한다. 여기서 '포크(Fork)'란 무언가를 콕 집어서 가져온다는 의미로, 내용을 복사해서 그대로 가져온다는 뜻이다. 단순히 복사의 차원을 넘어 복사가 된 시점부터 원본과 복사본이 나뉘게 된다.

소프트포크(Soft Fork)
소프트포크의 경우, 새로운 체인이 생성되지 않는 한에서 업그레이드가 진행된다. 이전에 사용하던 유효한 블록에서만 무효화되는 방식으로 변경된다. 그렇기 때문에 이전 노드(사용자)는 새 블록을 유효하다고 인식하게 되므로 이전 버전과 호환이 가능하다. 따라서 사용자 입장에서 별도의 추가적인 변경없이 기존 버전을 그대로 사용하면 된다.

하드포크(Hard Fork)
반면 하드포크의 경우, 기존 블록에서 새로운 체인이 생성되고 연결되어진 형태로 업그레이드가 진행된다. 그렇기 때문에 기본 사용자들은 반드시 새로운 버전으로 블록체인을 업그레이드 해야만 사용이 가능하다. 이전에 유효하지 않은 블록을 유효하게 만드는 급진적인 프로토콜로 변경되는 방식이다. 모든 노드(사용자)가 소프트웨어를 최신 버전으로 업그레이드 해야하기 때문에 상당히 까다로운 문제가 발생한다. 따라서 하드포크를 사용하게 되면 새로운 버전은 이전 버전과는 영구적으로 분리되어 최신 버전에서 기존에 사용하던 노드를 더 이상 허용하지 않도록 설계된다.

결론

해당 사건은 넓은 관점에서 바라볼 때 대규모 채굴자 연합으로 구성된 비트메인과 비트코인 개발자와 사용자 사이에서 생긴 대립이다. 이들은 세그윗(Segwit) 처리 방법에 대해 서로 다른 이견을 내세우며 대립했다. 비트메인은 전 세계 채굴량의 1,2위를 다투는 대규모 집단이다. 따라서 UASF가 진행되고 만일 성공적으로 많은 노드들에서 UASF를 합의하고 채굴을 진행하게 될 경우 비트메인은 하드포크를 진행할 것이라고 그 당시 공표한 바 있다.

빅 코어(비트코인 개발자 진영) 측은 블록 확장을 위해 업데이트(Segwit)를 하는 소프트포크(UASF)를 2017년 8월 1일 전격 시행했다. 하지만 이를 반대하는 채굴자 측에서 하드포크(UAHF)를 독립적으로 진행한다고 밝혔다. 하드포크가 진행되면 기존 비트코인과 다른 새로운 코인인 비트코인캐시(BCC)가 생긴다. 비트코인캐시는 기존 비트코인보다 저렴한 수수료를 받으며 시장 규모는 비트코인에 비해 매우 작을 것으로 보인다. [4]


각주

  1. jsralph, 〈쉽게 설명하는 블록체인, 비트코인과 블록체인 관련 용어 간단하게 한방에 정리하기 !〉, 《Steemit》 개인 블로그, 2017
  2. * admin 〈UAHF: UASF에 대한 대비책 (BIP148)〉, 《비트메인 블로그》, 2017-06-19
  3. 고란, 이용재 〈넥스트머니 : 부의 미래를 바꾸는 화폐 권력의 대이동〉, 《Google 도서》, 2018-06-22
  4. 이충무 기자 〈비트코인, 1일부터 두 개로 나눠진다…파생되는 BCC 성공할까〉, 《인천경제》, 2017-08-01

참고자료

함께보기



  검수요청.png검수요청.png 이 사용자 활성화 하드포크 문서는 블록체인 기술에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.