Advertise수수료 우대 데스크

가이드

소프트포크 하드포크 차이: 블록체인 업그레이드는 어떻게 작동할까

소프트포크와 하드포크의 차이를 하위 호환성 기준으로 설명합니다. 세그윗·탭루트, 이더리움 지분증명 전환, 비트코인 캐시 분리 사례와 포크 때 조심할 위험까지 정리했습니다.

중급8분 읽기COINOTAG 리서치마지막 업데이트
gate.com

소프트포크 하드포크 차이를 이해하려면 먼저 블록체인도 결국 소프트웨어라는 점을 떠올리면 됩니다. 블록체인은 수천 대의 독립된 컴퓨터에서 돌아가는 소프트웨어이고, 모든 소프트웨어처럼 업그레이드가 필요합니다. 네트워크가 그 업그레이드를 어떻게 처리하느냐가 모든 것을 결정합니다. 기존 장비가 계속 호환되는지, 체인이 둘로 갈라지는지, 내 토큰이 새 규칙으로 깔끔하게 넘어가는지가 여기에 달려 있습니다. 업그레이드 방식은 소프트포크와 하드포크 두 가지이고, 둘을 가르는 단 하나의 기준은 하위 호환성입니다. 소프트포크는 규칙을 더 엄격하게 만들어 기존 노드도 새 블록을 받아들이게 하고, 하드포크는 규칙을 새로 써서 기존 노드와 새 노드가 더는 합의할 수 없게 만듭니다. 이 가이드는 두 방식을 숫자와 사례, 그리고 실제로 돈을 잃게 만드는 함정과 함께 설명합니다.

포크란 정확히 무엇인가

블록체인에서 포크는 헷갈리기 쉬운 두 가지 뜻이 있습니다. 첫째는 코드베이스 포크입니다. 대부분의 체인은 오픈소스라서 누구나 코드를 복사해 새로운 것을 출시할 수 있습니다. 스시스왑(SushiSwap)은 유니스왑(Uniswap) 컨트랙트를 거의 그대로 복사해 시작했고, 라이트코인은 비트코인 코드를 복사해 블록 생성 시간을 줄인 것에서 출발했습니다. 이때는 조율이 필요 없고 원래 네트워크도 영향을 받지 않습니다.

둘째, 이 가이드에서 다루는 의미는 프로토콜 업그레이드 포크입니다. 기존 네트워크가 스스로 규칙을 바꾸는 경우입니다. 그 변경이 '소프트'인지 '하드'인지는 한 가지 질문으로 정해집니다. 모든 노드가 합의에 남으려면 소프트웨어를 업데이트해야 하는가, 아니면 기존 코드를 계속 돌려도 같은 체인에 속할 수 있는가.

bitget.com

웹3는 무허가형이라 누구도 노드 운영자에게 업그레이드를 강제할 수 없습니다. 하지만 업그레이드하지 않는 선택에는 결과가 따르고, 그 결과가 바로 두 포크를 구분합니다.

binance.com

소프트포크: 아무도 끊어내지 않고 규칙을 조이는 방식

소프트포크는 하위 호환되는 규칙 변경입니다. 핵심은 새 규칙이 기존 규칙의 부분집합이라는 점입니다. 유효했던 것을 더 엄격하게 만들 뿐, 무효였던 것을 갑자기 유효하게 만들지는 않습니다. 그래서 새 규칙으로 만든 블록도 기존 규칙을 쓰는 노드가 그대로 받아들입니다. 업그레이드하지 않은 노드는 새 기능을 이해하지 못하지만, 거부할 만한 것을 보게 되지도 않습니다.

일상의 비유로 설명하면, 메신저 앱을 업데이트해 새 이모지를 쓸 수 있게 됐다고 해 봅시다. 옛 버전을 쓰는 친구도 메시지는 모두 받습니다. 새 이모지 자리에 빈 네모가 보일 뿐입니다. 아무것도 고장 나지 않고, 업그레이드만 놓치는 것입니다.

비트코인의 가장 유명한 소프트포크 두 가지가 이를 잘 보여 줍니다.

  • 세그윗(SegWit)은 서명(위트니스) 데이터를 거래 데이터와 분리하고 Bech32 주소를 도입했습니다. 기존 P2SH 주소도 계속 작동했기 때문에, 업그레이드하지 않은 노드도 평소처럼 블록을 검증했습니다.
  • 탭루트(Taproot)는 여러 서명을 하나로 묶어 수수료를 낮추고 프라이버시를 높였으며, 나중에 오디널스를 가능하게 했습니다. 기존 서명 방식을 무효로 만들지 않았으므로 소프트포크로 배포됐습니다.

소프트포크를 건너뛴 노드는 어떻게 될까

소프트포크를 무시한 노드 운영자도 네트워크에 남습니다. 여전히 거래를 검증하고 블록을 만들고 수익을 냅니다. 잃는 것은 새 기능에 대한 접근입니다.

  • 상대적으로 높은 비용. 탭루트는 많은 거래를 더 싸게 만들 수 있게 했습니다. 여전히 옛 방식으로 거래를 만드는 노드는 같은 경제 활동에 더 많은 비용을 냅니다.
  • 줄어든 기능. 옛 노드는 탭루트 거래를 직접 검증하지 못해 업그레이드한 다른 노드에 기대게 되고, 그만큼 독립성이 조용히 줄어듭니다.

이 유인 구조가 핵심입니다. 소프트포크는 누구도 강요하지 않지만 업그레이드를 누가 봐도 합리적인 선택으로 만들고, 그래서 채택이 저절로 퍼집니다.

하드포크: 옛 규칙과의 완전한 결별

하드포크는 하위 호환되지 않는 규칙 변경입니다. 새 규칙에서 유효한 블록이 옛 규칙에서는 무효이고, 그 반대도 마찬가지입니다. 두 규칙이 서로 모순되므로 중간 지대가 없습니다. 노드는 업데이트해서 네트워크에 남거나, 거부하고 떨어져 나갑니다.

하드포크가 활성화되면 세 가지 일이 일어납니다.

  1. 노드는 업데이트해야 합니다. 옛 코드를 돌리는 노드는 새 블록을 검증하지도, 유효한 블록을 만들지도, 합의에 참여하지도 못합니다.
  2. 옛 데이터는 의미를 잃습니다. 업그레이드하지 않은 노드가 고집하는 잔액과 기록을 새 프로토콜은 인정하지 않습니다.
  3. 스냅샷으로 재동기화합니다. 업그레이드한 노드는 옛 규칙에서 유효했던 마지막 블록의 스냅샷으로 잔액을 넘겨받고, 이 덕분에 자산이 새 체인으로 끊김 없이 이어집니다.

2022년 9월 이더리움이 작업증명에서 지분증명으로 전환한 것이 교과서적인 사례입니다. 채굴 장비는 하루아침에 쓸모없어졌고, 검증인은 32 ETH를 스테이킹해야 했으며, 업그레이드하지 않은 사람은 메인넷 합의에서 그대로 밀려났습니다. 중요한 점은 커뮤니티가 압도적으로 동의했기 때문에 체인 분리가 없었다는 것입니다. 사실상 모든 노드가 함께 움직였습니다.

하드포크가 체인을 둘로 나눌 때

하드포크는 커뮤니티가 합의하지 못할 때만 네트워크를 쪼갭니다. 과정은 다음과 같습니다.

  1. 무언가를 고치거나 근본적으로 바꾸기 위해 하드포크가 제안됩니다.
  2. 의견이 갈리면 일부 노드는 활성화 시점에 새 규칙을 채택하고 다른 노드는 거부합니다.
  3. 가장 긴 체인 규칙에 따라 블록이 가장 많이 쌓인 갈래가 정식 체인이 됩니다.
  4. 업그레이드한 갈래의 보유자는 그곳에 잔액을 유지하고, 거부된 갈래의 보유자는 옛 규칙에 잔액을 유지합니다. 그리고 양쪽은 상대 체인을 가치 없는 것으로 봅니다.
  5. 이제 각자 토큰을 가진 두 개의 독립 블록체인이 나란히 운영됩니다.

2017년 확장성 논쟁이 대표적인 예입니다. 한쪽은 처리량을 위해 더 큰 블록을 원했고, 다른 쪽은 작은 블록을 지키려 했습니다. 이 의견 차이가 하드포크로 이어져 비트코인 캐시가 탄생했고, 원래 체인은 기존 규칙을 유지했습니다. 2016년 DAO 해킹 대응도 그렇습니다. 이더리움은 하드포크로 공격을 되돌렸고, 이더리움 클래식은 손대지 않은 원래 장부를 지켰습니다.

소프트포크 하드포크 한눈에 비교

항목소프트포크하드포크
하위 호환성있음, 새 규칙이 기존 규칙의 부분집합없음, 새 규칙이 기존 규칙과 모순
노드 업데이트 의무선택(하지만 강한 유인)합의에 남으려면 필수
옛 규칙에서 본 새 블록여전히 유효무효
체인 분리 위험사실상 없음커뮤니티가 갈리면 가능
재동기화필요 없음마지막 옛 블록 스냅샷으로 필요
합의 의존도낮음높음
업그레이드하지 않은 노드계속 검증, 새 기능은 놓침네트워크에서 떨어져 나감
주된 용도효율 개선, 기능 추가합의 방식 전환, 대규모 재설계, 확장
실제 사례세그윗, 탭루트이더리움 지분증명 전환, 비트코인 캐시

예시: 소프트포크와 노드 운영자의 경제학

'선택이지만 유인이 있다'는 논리는 숫자로 보면 분명해집니다. 하루 1,000건의 거래를 처리하는 노드가 있고, 탭루트 같은 소프트포크가 해당 거래의 평균 생성 비용을 15% 낮춘다고 해 봅시다.

  • 기존 거래당 비용: 0.80달러 → 하루 비용 800달러.
  • 업그레이드 후 해당 거래는 건당 0.68달러입니다. 노드 처리량의 70%가 탭루트 대상이라면 700건은 0.68달러, 300건은 0.80달러 → 476달러 + 240달러 = 하루 716달러.
  • 업그레이드로 아끼는 금액: 하루 84달러, 연간 약 30,660달러.

운영자에게 업데이트를 강요한 사람은 없습니다. 하지만 한 번의 소프트웨어 변경으로 연 3만 달러를 공짜로 얻는다는 계산이 나오면 거의 모두가 업데이트합니다. 소프트포크가 의무 없이도 거의 전원의 채택에 이르는 방식이 바로 이것입니다.

주의해야 할 위험과 함정

포크는 업그레이드이지만, 자산이 가장 크게 노출되는 순간이기도 합니다. 다음을 기억하십시오.

  • 분리 직후의 리플레이 공격. 논쟁적인 하드포크 직후에는 한 체인에 보낸 거래가 다른 체인에서 '재생'되어 복제된 잔액이 빠져나갈 수 있습니다. 프로토콜 수준의 제대로 된 리플레이 공격 방지가 필수이며, 없다면 코인을 옮기는 것이 위험합니다.
  • '포크 코인 받기' 사기. 주목받는 분리가 있을 때마다 새 토큰을 '잠금 해제'해 준다며 시드 문구를 요구하는 피싱 사이트와 앱이 등장합니다. 정상적인 포크는 절대 개인 키를 요구하지 않습니다. 입력하는 순간 지갑을 넘겨주는 것입니다.
  • 거래소와 지갑의 일정. 대형 포크 전후로 플랫폼은 입출금을 멈춥니다. 스냅샷 블록 시점에 직접 키를 보관하는 것이 두 자산을 모두 받는 가장 깔끔한 방법이지만, 리플레이 위험을 먼저 이해해야 합니다.
  • 코드 복사 포크를 프로토콜 포크로 착각. 기존 코드베이스를 복사했을 뿐인 새 토큰은 원래 체인의 보안이나 가치를 전혀 물려받지 않습니다. 어떤 종류의 '포크'인지 확인하는 것이 기본 검증입니다.
  • 모든 하드포크가 공짜 코인을 준다는 착각. 분리는 예외이지 규칙이 아닙니다. 이더리움 지분증명 업그레이드처럼 대부분의 하드포크는 만장일치로 진행되고 두 번째 자산을 전혀 만들지 않습니다.

COINOTAG의 시각: 포크는 코드이기 전에 거버넌스입니다

포크를 읽는 가장 유용한 방법은 거버넌스 신호로 보는 것입니다. 깔끔한 소프트포크는 커뮤니티가 폭넓은 합의 속에서 혼란을 최소화하며 개선을 내놓을 수 있다는 뜻이고, 건강한 조율의 신호입니다. 분리로 끝난 논쟁적인 하드포크는 더 깊은 것을 말해 줍니다. 네트워크가 무엇을 위해 존재하는지에 대한 화해할 수 없는 이견입니다. 비트코인 캐시와 이더리움 클래식은 버그 때문에 생긴 것이 아니라, 같은 네트워크에 대한 두 가지 비전이 하나의 규칙 아래 공존할 수 없었기 때문에 생겼습니다.

코인을 보유하거나 개발하는 사람이라면, 노출된 모든 체인의 업그레이드 로드맵을 추적하는 것이 실질적인 교훈입니다. 다음 변경이 소프트인지 하드인지, 논쟁이 있는지, 스냅샷이 내 보관 방식에 영향을 주는지 알아 두십시오. 업그레이드는 시장이 알아차리기 훨씬 전에 보안, 탈중앙성, 신뢰도라는 기준으로 네트워크의 가치를 조용히 다시 매깁니다.

마무리

소프트포크와 하드포크는 같은 질문에 대한 두 가지 답입니다. 아무도 통제하지 않는 시스템의 규칙을 어떻게 바꿀 것인가. 소프트포크는 호환성을 지키며 부드럽게 바꾸고, 노드가 각자의 일정에 맞춰 업그레이드하게 합니다. 하드포크는 결단력 있게 바꾸며 모두가 한꺼번에 움직이기를 요구하고, 그러지 않을 때는 가끔 커뮤니티를 갈라놓습니다. 어느 쪽이 본질적으로 더 낫지는 않습니다. 각각 다른 규모의 변화에 맞습니다. 이 둘을 구분할 줄 아느냐가 업그레이드에 허를 찔리는 투자자와 미리 보고 대비하는 투자자를 가릅니다.

더 깊이 알고 싶다면 가장 유명한 분리를 자세히 다룬 이더리움 클래식과 이더리움의 차이, 분리가 어떻게 지갑에 코인을 넣어 줄 수 있는지 설명한 하드포크 에어드랍 받는 법, 가장 오래된 포크 중 하나가 왜 여전히 중요한지 보여 주는 라이트코인과 비트코인 비교를 읽어 보십시오.

자주 묻는 질문

질문 5개
하드포크와 소프트포크의 차이는 무엇인가요?

하위 호환성입니다. 소프트포크는 규칙을 더 엄격하게 만들어 새 규칙으로 만든 블록도 기존 노드에서 유효하므로, 업그레이드하지 않은 노드도 계속 참여할 수 있습니다. 하드포크는 새 규칙과 옛 규칙이 서로 모순되어 모든 노드가 업데이트하지 않으면 네트워크에서 떨어져 나갑니다.

하드포크를 하면 항상 새 코인이 생기나요?

아닙니다. 하드포크는 커뮤니티가 갈리고 한쪽이 업그레이드를 거부할 때만 두 번째 블록체인과 토큰을 만듭니다. 비트코인 캐시가 그런 경우입니다. 이더리움의 지분증명 전환처럼 모두가 동의하면 분리도 새 자산도 없이 깔끔하게 업그레이드됩니다.

소프트포크 때 내 지갑에서 해야 할 일이 있나요?

보통은 없습니다. 소프트포크는 하위 호환되므로 기존 주소와 잔액이 아무 조치 없이 계속 작동합니다. 노드 운영자와 채굴자는 소프트웨어를 업데이트하는 편이 유리하지만, 일반 보유자는 영향을 받지 않습니다.

리플레이 공격은 무엇이고 포크 뒤에 왜 중요한가요?

체인이 갈라지는 논쟁적인 하드포크 뒤에는 한 체인에서 서명한 거래가 다른 체인에서도 유효해, 공격자가 이를 '재생'해 복제된 체인의 내 자금을 옮길 수 있습니다. 제대로 된 리플레이 방지가 있는 프로토콜은 이를 막지만, 없다면 분리 직후 코인을 옮기는 것은 위험할 수 있습니다.

세그윗과 탭루트는 소프트포크인가요, 하드포크인가요?

둘 다 비트코인의 소프트포크입니다. 세그윗은 기존 주소를 유효하게 유지하면서 서명 데이터를 거래 데이터와 분리했고, 탭루트는 이전 서명 방식을 무효로 만들지 않으면서 서명을 묶어 수수료를 낮추고 프라이버시를 높였습니다. 이를 건너뛴 노드도 네트워크에 남았지만 새 기능은 쓰지 못했습니다.

마지막 업데이트: