용어집 / 프로토콜과 업그레이드
비트코인 개선 제안(BIP)
별칭은 BIP입니다.
- 비트코인 개선 제안(BIP)란 무엇입니까?
- 비트코인 개선 제안(BIP)은 비트코인의 변경 사항이나 지갑이 따라야 할 표준을 설명하는 번호가 부여된 설계 문서로, 이를 강제할 권한은 없습니다.
BIP-2에 명시되어 있습니다.
BIP는 비트코인이 내용을 문서로 기록하는 방식입니다. 누구나 하나를 제출할 수 있고, 편집자가 번호를 배정하며, 저장소에는 현재 Draft에서 Final, Withdrawn에 이르는 상태의 문서가 수백 건 있습니다. 그 번호는 사용하는 제품 안으로 흘러들어갑니다. 지갑이 생성한 12개 단어는 BIP39이고, 지갑이 도출한 주소는 BIP84 또는 BIP86에서 나왔습니다.
작동 방식
BIP 프로세스는 관리 기구가 아니라 문서 보관 체계입니다.
이것은 Python에서 빌려왔습니다. Amir Taaki는 그 프로젝트의 개선 제안을 모델로 삼아 2011년에 BIP-1을 작성했고, Luke Dashjr는 각 상태의 의미와 다음 단계로 나아가는 데 필요한 근거의 정의를 더 엄격하게 하기 위해 2016년에 BIP-2로 그것을 대체했습니다. 절차는 화려하지 않습니다. 아이디어를 공개적으로 제시하고, 비판을 받아들이고, bitcoin/bips 저장소에 풀 리퀘스트를 열고, 편집자가 형식을 확인하고 번호를 부여할 때까지 기다립니다.
제안은 세 가지 유형으로 나뉩니다. Standards Track 문서는 합의 규칙부터 주소 형식에 이르기까지 소프트웨어의 상호 운용 방식에 영향을 주는 모든 것을 다룹니다. Informational 문서는 누구에게도 무엇을 하라고 요구하지 않고 설계나 관례를 기록합니다. Process 문서는 프로세스 자체를 설명합니다. 각 문서는 상태를 가지며 Draft와 Proposed를 거쳐 Final 또는 Active로 나아가고, 상당수는 대신 Withdrawn, Rejected, Replaced에서 끝납니다.
번호가 부여하는 것은 권위가 아닙니다. 배정된 BIP는 색인 항목이지 승인이 아니며, 어차피 그것을 승인할 수 있는 기구도 없습니다. 채택은 별도로, 자발적으로 일어납니다. 누군가 코드를 작성하고, 검토자들이 그것을 뜯어보고, 구현체가 그것을 배포하고, 사용자들이 그 버전을 실행하기로 선택합니다. Bitcoin Core에 대한 매우 많은 변경에는 BIP가 아예 없고, 매우 많은 BIP는 누구도 구현한 적이 없습니다.
비트코인을 구매할 때 이것이 중요한 이유
BIP 번호는 지갑 메뉴에 나타나며, 잘못된 것을 고르는 일은 코인이 사라졌다고 결론짓는 흔한 경로입니다.
사람들이 자주 걸려 넘어지는 예는 시드 문구 복구입니다. BIP39는 2048개 항목의 단어 목록과, 그중 12개 또는 24개를 마스터 키로 바꾸는 규칙을 표준화했으며, 그래서 한 브랜드에서 적어 둔 문구를 다른 브랜드에 입력할 수 있습니다. BIP39가 표준화하지 않는 것은 지갑이 코인을 찾는 위치입니다. BIP44는 1로 시작하는 레거시 주소를 도출하고, BIP49는 3으로 시작하는 중첩 SegWit 주소를 도출하며, BIP84는 bc1q로 시작하는 네이티브 SegWit 주소를 도출하고, BIP86은 bc1p로 시작하는 Taproot 주소를 도출합니다. 다른 경로를 기본으로 하는 소프트웨어에 문구를 복구하면 잔액은 0으로 표시되지만 코인은 실제로 사용한 경로 아래에 그대로 있습니다. 파생 경로를 백업과 같은 카드에 적어 두면 그런 문제는 생기지 않습니다.
주소 형식도 실무에서 같은 중요성을 지닙니다. Bech32는 BIP173에서, bech32m은 BIP350에서 나왔고, 업계 전반에서 지원이 각기 다른 시점에 도입되었으며, 그래서 일부 플랫폼은 Taproot가 활성화된 뒤에도 오랫동안 bc1p 주소로 보낼 수 없었습니다. 큰 출금 전에는 소액을 먼저 보내 목적지 형식이 수용되는지 확인하십시오. 막힌 트랜잭션에도 번호가 있습니다. replace-by-fee를 통한 수수료 상향은 BIP125에 규정되었고, 이를 구현한 지갑은 잘못된 시점에 산정된 수수료 추정치를 기다리지 않게 해 줍니다.
번호를 보증서가 아니라 꼬리표로 취급하십시오. 결제 프로토콜인 BIP70은 BitPay와 Coinbase가 구현했고 가맹점 결제의 미래처럼 보였습니다. Bitcoin Core는 버전 0.19에서 이를 폐기 예정으로 표시했고 0.20에서 제거했으며, 오늘날 그것을 사용하는 곳은 없습니다. BIP는 누군가 신중하게 생각했다는 사실을 기록합니다. 누군가 아직도 그것을 실행하는지는 따로 물어볼 가치가 있는 질문입니다.
BIP340에서 블록 709,632까지: 제안이 규칙이 되는 과정
Taproot는 모든 단계에 날짜가 있기 때문에 전체 절차를 가장 명확하게 보여 줍니다.
설계는 서로 연결된 세 문서로 공개되었습니다. BIP340은 Schnorr 서명을, BIP341은 Taproot 출력 유형을, BIP342는 새로운 스크립트 규칙을 다루며, Pieter Wuille이 Jonas Nick, Tim Ruffing, Anthony Towns와 함께 작성했습니다. 이 문서들은 약 2년의 공개 논의 끝에 2020년 1월에 저장소에 병합되었습니다. 병합은 비트코인에 관해 아무것도 바꾸지 않았습니다. 문서에 번호가 생겼다는 뜻이었습니다.
그다음 구현과 검토에 거의 1년이 걸렸고, 규칙을 활성화하는 방법에 관한 논쟁은 두 가지 경쟁 메커니즘이 논의되는 가운데 몇 달이 더 걸렸습니다. Speedy Trial로 알려진 절충안은 2021년 5월에 Bitcoin Core 0.21.1로 배포되었습니다. 채굴업자는 정해진 기간에 준비 신호를 보냈고, 2021년 6월 12일에 락인이 이루어졌으며, 규칙은 2021년 11월 14일 블록 709,632에서 강제 가능해졌습니다. 번호가 붙은 문서에서 강제되는 규칙까지 약 22개월이며, 그 일은 문서가 한 것이 아닙니다. 코드를 실행하는 노드 운영자들이 했습니다.
Bitcoin Improvement Proposal vs 합의 규칙
Bitcoin Improvement Proposal은 서류이고, 합의 규칙은 노드가 실제로 강제하는 것입니다. 둘은 제안이 구현되고 채택되었을 때만 겹치며, 양방향의 간극은 시사하는 바가 있습니다. BIP70은 번호가 있지만 어디에서도 아무것도 강제하지 않습니다. 2,100만 공급 상한에는 BIP가 전혀 없습니다. 프로세스보다 앞서 생겼고 순전히 코드에 존재하기 때문입니다. 비트코인이 무엇을 하는지 알고 싶다면 소프트웨어나 그것이 강제하는 규칙을 읽으십시오. 누군가 무엇을 제안했는지 알고 싶다면 BIP를 읽으십시오.
Bitcoin Improvement Proposal vs 소프트 포크
Bitcoin Improvement Proposal은 문서이고, 소프트 포크는 모두가 따르는 규칙을 강화하는 배포 사건입니다. 대부분의 BIP는 어떤 종류의 포크도 아닙니다. BIP39는 프로토콜을 건드리지 않았고, 결제 링크로 지갑을 열게 하는 BIP21의 URI 체계도 마찬가지였습니다. 소프트 포크가 실제로 일어날 때는 그것을 설명하는 데 보통 여러 BIP가 필요하고, 활성화 메커니즘 자체를 위한 BIP가 하나 더 필요합니다. BIP9와 BIP8은 신호 방식이 어떻게 작동하는지 정의하기 위해 존재하기 때문입니다. 둘을 혼동하면 사람들이 제안이 공개되었을 때 비트코인이 바뀌었다고 말하게 되는데, 그 주장은 보통 몇 년이나 앞서고, 때로는 영원히 틀립니다.