MSTR Cat

블록체인/레벨 IV · 프로토콜 심화/4.2 업그레이드/수업 1

탭루트 및 슈노어 서명

계약을 숨기는 키, 그리고 주머니에 쏙 들어가는 서명

준비물원시 트랜잭션 헥스를 볼 수 있는 블록 탐색기Taproot 주소(bc1p)를 지원하는 지갑BIP341 및 BIP340 사양 문서

호기심

  1. 왜 복잡한 다자간 계약이 블록체인상에서는 단순한 단일 사용자 결제와 똑같아 보일까요?
  2. 여러 개인 키가 어떻게 관찰자에게 그 존재를 전혀 드러내지 않고 하나의 공개 키로 결합될 수 있을까요?
  3. 10명의 사람들이 만든 서명을 단 한 명의 사람이 만든 서명과 구분할 수 없게 하는 수학적 특성은 무엇인가요?

탐구

  1. 탭루트 이전에는 코인을 지출할 때마다 복잡한 지출 조건이 전부 공개되었습니다(베어 스크립트의 경우에는 출력 자체에 들어 있었습니다). 멀티시그 지출은 모든 참여자의 키를, 타임락은 잠금 기간을, 해시락은 그 구조를 드러냈습니다. 이러한 공개적 투명성은 고급 사용자에게 프라이버시 위험을 초래했고, 중복 데이터로 블록 공간을 낭비했습니다. 네트워크는 모든 스크립트를 펼쳐진 책처럼 취급했고, 복잡한 구성일수록 그 로직 전체를 모든 노드와 관찰자에게 전파해야 했습니다.
  2. Taproot(BIP341)는 커밋 모델을 변경합니다. 이제 아웃풋은 P + t·G로 계산된 단일 32바이트 공개 키 Q를 가리킵니다. 여기서 P는 주 사용자가 제어하는 내부 키이며, t는 선택적인 대체 스크립트 트리의 메르클 루트에 대한 커밋 역할을 합니다. 온체인상에서 이 아웃풋은 마치 단일 키를 사용한 결제처럼 보여, 그 뒤에 숨겨진 복잡성을 감춥니다.
  3. 이러한 효율성의 기반은 슈노어 서명(BIP340)입니다. 평균 71–72바이트의 가변 길이 DER 인코딩을 사용하는 ECDSA와 달리, 슈노어는 고정 크기 64바이트 서명을 생성합니다(기본값이 아닌 서명 해시 유형을 쓰면 65바이트). 고정된 크기 덕분에 파싱이 단순해지고 트랜잭션 웨이트가 줄어듭니다. 또한 슈노어 방식의 선형성 덕분에 키 집계가 가능해, MuSig2 같은 프로토콜을 사용하면 여러 공개 키를 하나의 집계 키로 결합할 수 있습니다. 이를 통해 그룹은 개별 참여자를 드러내지 않고도 마치 단일 주체처럼 서명할 수 있습니다.
  4. 지출은 두 가지 경로로 이루어집니다. 키 경로에서는 모든 당사자가 협력해 집계 키로 서명하며, 그 결과 생성된 트랜잭션은 일반적인 단일 키 결제와 구별할 수 없습니다. 스크립트는 드러나지 않고 추가 데이터도 붙지 않습니다. 이를 통해 라이트닝 채널이나 멀티시그 지갑의 협력적 종료에서 프라이버시가 보호되며, 복잡한 금융 약정의 메타데이터가 블록체인의 공개 원장에 유출되지 않습니다.
  5. 협력이 실패하면 스크립트 경로가 작동합니다. 지출자는 머클 트리에서 특정 리프 하나와 그 리프가 트리에 속한다는 증명을 공개합니다. 사용되지 않은 분기는 계속 숨겨져 대체 조건들의 프라이버시가 유지됩니다. 머클화된 추상 구문 트리(MAST)라고 불리는 이 메커니즘 덕분에 출금 지연이나 비상 키 같은 다양한 지출 규칙이 하나의 출력 안에 공존할 수 있으며, 꼭 필요할 때까지 외부에 노출되지 않습니다.
  6. 실질적인 영향은 상당합니다. 탭루트 주소는 'bc1p'로 시작합니다. MuSig2(BIP327)는 키 집계를 표준화하여 서로 다른 지갑 업체 간에도 상호 운용 가능한 멀티시그를 구현할 수 있게 합니다. 비슷한 목적으로 FROST 같은 임계값 서명 방식도 개발되고 있습니다. 2021년 11월, 블록 709,632에서 네트워크는 이 구조를 채택했고, 이를 통해 복잡한 스크립트는 협력적으로 사용할 때 기본적으로 더 작고, 더 저렴하며, 프라이버시가 보장되게 되었습니다.

핵심 사실

  • 탭루트(BIP341)는 2021년 11월, 블록 709,632에서 활성화되었습니다.
  • 탭루트 출력은 단일 키 Q = P + t·G에 커밋하며, 여기서 t는 P와 (존재할 경우) 스크립트 트리 루트의 태그된 해시입니다.
  • 슈노어 서명(BIP340)은 고정된 64바이트 크기를 가지므로 DER 인코딩에 따른 오버헤드가 없습니다.
  • 키 경로 지출은 어떤 스크립트도 드러내지 않으며, 단일 키 결제와 구별할 수 없습니다.
  • 스크립트 경로 지출은 사용된 특정 스크립트 리프만 공개하고 다른 분기는 숨깁니다.
  • MuSig2(BIP327)는 상호 운용 가능한 멀티시그 지갑을 위한 n-of-n 키 집계를 가능하게 합니다.

연습 아홉, 여섯, 셋, 하나

9모으기탭루트 이전에 존재했던 서로 다른 비트코인 지출 조건 또는 스크립트 유형 9가지를 나열하세요. 각각이 온체인에서 일으키는 구체적인 프라이버시 유출이나 크기상의 불이익도 함께 적으세요.
6묶기9가지 조건을 탭루트 출력에서 처리되는 방식에 따라 6개 범주로 분류하세요: 키 경로를 통해 완전히 숨겨짐, 분쟁 시에만 공개됨, MuSig2로 집계됨, 기타 구조적 변화 등.
3추리기6개 클러스터를, 스크립트를 단일 키 뒤에 숨기는 것이 네트워크 효율성과 사용자 프라이버시를 높이는 3가지 핵심 이유로 압축하세요.
1결정화탭루트의 머클 트리 구조가 어떻게 계약 조건을 공개하지 않고도 복잡한 금융 계약을 가능하게 하는지 한 문장으로 설명하세요.

팩트 체크

날짜, 수치 및 주장은 아래에 명시된 출처들을 통해 확인되었습니다.

인터랙티브 아카데미에서 열기 →

EN PT ES ZH JA RU DE FR MS