블록체인/레벨 III · 네트워크/3.3 합의와 거버넌스/수업 7
탭루트 활성화 및 스피디 트라이얼
투표 없이 1년간의 교착 상태를 종식시킨 메커니즘
준비물과거 데이터를 제공하는 블록 탐색기비트코인 코어 0.21.1 릴리스 노트2021년 4월부터 11월까지의 일정을 나타내는 달력
호기심
- 왜 커뮤니티는 슈노어 서명에는 합의했지만, 이를 어떻게 활성화할지에 대해서는 1년 동안 다퉜을까요?
- 채굴자들에게 무기한이 아닌 단 4개월의 신호 기간만 주어지면 무엇이 달라질까요?
- 탭루트는 왜 확정(lock-in)과 활성화 사이에 5개월을 기다렸을까요?
탐구
- BIP 340, 341, 342로 구성된 Taproot는 슈노어 서명과 새로운 지출 규칙을 도입했습니다. 기술적으로 이 제안은 거의 반대에 부딪히지 않았으며, 개발자들은 간결한 서명과 향상된 프라이버시의 장점에 동의했습니다. 하지만 논란이 많았던 SegWit 시대 이후 소프트 포크를 어떻게 적용할지에 대한 합의가 이루어지지 않아 실제 도입은 지연되었습니다. 해당 코드는 2020년 10월에 Bitcoin Core에 통합되었으며, 0.21.0 버전(2021년 1월)에 비활성 상태로 포함되었습니다. 다만 BIP9 신호 방식을 사용할지, 아니면 사용자가 직접 활성화하는 방식을 채택할지에 대해서는 합의가 이루어지지 않았습니다.
- 논쟁의 중심은 ‘lockinontimeout’(LOT)이었습니다. 이는 BIP8의 변형으로, 채굴자의 지지와 관계없이 신호 기간이 끝나면 노드들이 활성화를 강제하는 방식입니다. 찬성 측은 이것이 채굴자의 거부권을 막는다고 주장했고, 반대 측은 채굴자들이 동의하지 않을 경우 분열을 강제해 네트워크 안정성을 위협할 것을 우려했습니다. 이 긴장은 장기간의 협상과 UASF의 위협이 결국 타협을 끌어냈던 2017년 SegWit 교착 상태 이후 계속되어 왔습니다. 커뮤니티는 강압 없이 개발자들의 의도와 경제적 현실을 모두 존중하는 방법을 찾았습니다.
- 2021년 3월 러셀 오코너가 고안하고 데이비드 하딩이 정리한 ‘스피디 트라이얼’이 그 타협안이었습니다. 이 방식은 높은 임계값과 짧은 신호 기간을 사용하도록 BIP9를 수정해, 채굴자들이 신속하게 준비 신호를 보낼 수 있게 했습니다. 그렇게 하지 못하면 제안은 폐기되거나 다시 검토될 수 있었습니다. 이 접근법은 LOT의 강압적 성격을 피하면서도, 약 9개월의 신호 기간 동안 SegWit을 활성화하지 못했던 기존 BIP9보다 과정을 앞당겼습니다. 이름은 압축된 일정을 반영합니다. 활성화가 신속하게 성공하거나, 아니면 향후 제안을 위한 데이터가 만들어지는 것입니다.
- 스피디 트라이얼은 2021년 5월 비트코인 코어 0.21.1 버전에 포함되어 출시되었습니다. 신호에는 비트 2를 사용했고, 시작과 타임아웃은 MTP(median time past, 과거 블록 시간의 중앙값)로 설정했으며, 지갑과 서비스들이 몇 달간 준비할 수 있도록 최소 활성화 높이를 709,632로 정했습니다. 신호 기간은 2021년 4월 24일에 시작해 2021년 8월 11일에 끝났습니다. 채굴자들에게는 신호를 보낼 시간이 약 3개월 반 주어졌습니다. 임계값에 도달하지 못하더라도 자동으로 UASF가 발동되지는 않았으므로 현상 유지가 보장되었지만, 명확한 결정 시점이 생겼습니다.
- 채굴자들은 8월 마감 시한보다 훨씬 이른 2021년 6월에 탭루트를 확정(lock-in)했습니다. 빠른 신호는 채굴자들 사이의 폭넓은 지지를 보여 주었습니다. 그 결과 탭루트는 최소 활성화 높이인 블록 709,632에서 2021년 11월 14일에 활성화되었습니다. 이는 스피디 트라이얼 메커니즘의 분명한 성공이었습니다. 커뮤니티 분열이나 장기적인 교착 상태 없이 활성화를 이루어 냈기 때문입니다. 비판자들은 짧은 신호 기간이라도 채굴자들에게 사실상의 거부권이 남는다고 지적했습니다.
- 코버넌트(covenant) 같은 후속 제안들에서도 활성화 방식에 대한 논쟁은 여전히 진행 중입니다. 스피디 트라이얼은 논란이 없었던 탭루트에는 효과가 있었지만, 논쟁적인 변경에도 적용될 수 있을지는 불확실합니다. 앞으로 개발자들은 채굴자 거부권의 위험과 네트워크 불안정성의 위협을 저울질해야 합니다. 2021년의 사례는 기술적 장점이 분명할 때 경제적 노드들과 채굴자들이 빠르게 의견을 모을 수 있음을 보여 주었지만, 그런 일치가 더 분열적인 규칙 변경에 대한 합의까지 보장하지는 않습니다.
핵심 사실
- 탭루트(BIP 340-342)는 2021년 11월 14일 블록 709,632에서 활성화되었습니다.
- 스피디 트라이얼은 2021년 4월 24일부터 8월 11일까지의 신호 기간과 90%의 임계값을 사용했습니다.
- 스피디 트라이얼(러셀 오코너의 아이디어를 데이비드 하딩이 정리, 2021년 3월)은 BIP9와 LOT 사이의 타협안이었습니다.
- 비트코인 코어 0.21.1 버전은 2021년 5월에 스피디 트라이얼 메커니즘을 탑재해 출시되었습니다.
- 스피디 트라이얼은 MTP(median time past)를 기준으로 신호 기간을 설정했으며, 최소 활성화 높이는 709,632였습니다.
- 채굴자들은 8월 마감 시한보다 훨씬 이른 2021년 6월에 탭루트를 확정(lock-in)했습니다.
연습 아홉, 여섯, 셋, 하나
9모으기P2SH, BIP66, CSV, SegWit, Taproot와 같은 비트코인 소프트 포크나 활성화 시도 9가지를 나열하고, 각각의 활성화 방법과 소요된 시간을 기재하십시오.
6묶기9개를 방식에 따라 6개 그룹으로 분류하십시오: 플래그 데이(flag day), 채굴자 초다수(supermajority), BIP9 신호, 사용자 활성화 소프트 포크, 스피디 트라이얼, 기타.
3추리기6개 그룹을, 채굴자 신호와 사용자 노드에 의한 강제 사이의 3가지 트레이드오프로 줄이십시오.
1결정화짧은 기한이 무기한 협상보다 교착 상태를 더 잘 해결할 수 있는 이유를 설명하는 문장을 하나 작성하십시오.
팩트 체크
날짜, 수치 및 주장은 아래에 명시된 출처들을 통해 확인되었습니다.
- BIP340: Schnorr Signatures for secp256k1 (P. Wuille, J. Nick & T. Ruffing)
- BIP341: Taproot: SegWit version 1 spending rules (P. Wuille, J. Nick & A. Towns)
- Bitcoin Core 0.21.1 Release Notes (May 2021)
- D. Harding, 'Speedy Trial' proposal on bitcoin-dev mailing list (March 2021)
- Optech Newsletter coverage of Taproot activation (November 2021)