19 / 736BIP141

SegWit

Segregated Witness: 지출 검증 데이터를 분리하는 방식

비트코인 거래를 서로 연결하기 쉽게 만들고, 서명 데이터가 차지하는 블록 용량을 더 적게 계산하도록 한 변경입니다.

SegWit은 서명처럼 자금을 쓸 권한을 검증하는 데이터를 거래의 기본 식별자를 계산하는 부분에서 분리한 비트코인 규칙 변경입니다. 블록 용량의 측정 방식도 바꿨습니다. 사용자에게는 공간을 절약하는 결제가, 개발자에게는 한 거래를 기반으로 다음 거래를 만드는 더 안정적인 방법이 될 수 있습니다.

보낼 때 지갑은 전에 받은 자금 중 무엇을 쓰고, 받는 사람과 필요한 경우 자신의 잔돈으로 어떤 금액을 새로 만들지 정합니다. 그 자금을 쓸 권한도 증명해야 합니다. 서명과 다른 검증 데이터가 그 역할을 합니다. SegWit은 이 데이터를 witness라는 부분에 넣었습니다. 여기서 witness는 지출 조건을 충족했다는 증거를 뜻하며, 결제를 지켜보는 사람을 말하지 않습니다. 데이터를 버리거나 비트코인 밖으로 옮긴 것이 아닙니다. SegWit 규칙을 적용하는 노드는 여전히 이 데이터를 검사합니다. [1]

지갑은 txid로 결제를 추적합니다. 뒤따르는 거래도 이 식별자를 통해 쓰려는 자금을 지정합니다. 과거에는 수취인이나 금액을 바꾸지 않고 일부 서명 데이터만 바꿔도 txid가 변할 수 있었습니다. 아직 확인되지 않은 결제를 연결할 때 문제가 됐습니다. SegWit은 witness를 제외하고 txid를 계산하므로 witness만 바꿔서는 txid가 바뀌지 않습니다. 거래 전체를 이 문제에서 보호하려면 모든 입력이 SegWit을 사용해야 합니다. 수취인이나 입력을 바꾸면 여전히 txid가 달라질 수 있습니다. 더 안정적인 참조는 결제 채널로 지급하는 네트워크인 Lightning Network에도 도움이 됐습니다. 다른 식별자 wtxid는 witness를 포함합니다. [1] [4]

SegWit은 모든 바이트를 같게 세는 대신 가중치를 도입했습니다. 기본 데이터 1바이트는 가중치 4단위, 추가 witness 데이터 1바이트는 1단위입니다. 블록 전체 한도는 4,000,000단위입니다. 예를 들어 기본 데이터 100바이트와 추가 witness 100바이트를 가진 거래는 가중치 500단위, 가상 크기 125 vB입니다. 이 크기로 선택한 sat/vB 수수료율에 따른 비용을 계산합니다. 절약 정도는 거래 구조에 달려 있고, 블록 공간 수요는 여전히 수수료율에 영향을 줍니다. 가중치 한도가 모든 블록의 메가바이트 수가 같다는 뜻도, 모든 SegWit 결제가 더 싸다는 뜻도 아닙니다. [1]

비트코인 메인넷에서 버전 0의 네이티브 SegWit 주소는 bc1q로 시작합니다. P2WPKH와 P2WSH는 일반적인 키 기반 결제와 규칙의 집합인 스크립트 기반 결제라는 두 지출 조건을 구별합니다. SegWit을 이전 P2SH 형식으로 감싸면 3으로 시작하는 주소를 쓸 수도 있지만, 3만 보고 SegWit이라고 단정할 수는 없습니다. Taproot는 witness 버전 1과 bc1p 주소를 사용합니다. 따라서 bc1이 하나의 결제 형식만 뜻하는 것은 아닙니다. 평소에는 보내는 지갑의 형식 지원 여부와 받는 사람의 전체 주소를 확인하세요. 이 접두사들은 그 자체로 익명성을 약속하지 않습니다. [1] [2] [3]

이 변경은 이전 규칙과 양립하는 더 엄격한 규칙, 즉 Soft Fork로 설계됐습니다. 다만 오래된 노드는 SegWit의 새 조건을 직접 완전히 검사하지 않습니다. Witness는 블록의 첫 거래인 coinbase에 있는 witness commitment를 통해 암호학적으로 블록에 묶입니다. 그래서 서명은 완전한 검증에서 생략해도 되는 선택적 첨부물이 아닙니다. BIP 141은 가중치를 기본 크기의 3배에 전체 크기를 더한 값으로도 표현합니다. 가상 크기는 가중치를 4로 나눠 올림한 값입니다. 이는 같은 계산 방식의 설명이지 서로 다른 두 한도가 아닙니다. [1]

더 정확히 이해하려면 이 항목과 함께 다음도 읽어 보세요 트랜잭션, Transaction Fees, Lightning Network, Taproot. 다음 항목에서도 이 글을 참조합니다 트랜잭션, Transaction Fees, Taproot, Lightning Network.

DOC · 001BIP 141: Segregated Witness1차 출처 DOC · 002BIP 341: witness version 11차 출처 DOC · 003BIP 350: Bech32m for witness version 1 and later1차 출처 DOC · 004Bitcoin Core: Segregated Witness benefits1차 출처
개정일: 1차 출처 우선 · 투자 조언이 아닙니다