비트코인의 원천 기술은 대규모 애플리케이션이 비트코인의 본래 기능과 충돌하는 문제로 인해 어려움을 겪어왔습니다. 대규모 애플리케이션과 거래 규모는 더 복잡한 거래 주문과 더 큰 거래 공간을 의미할까요? 모든 기능이 비트코인 단일 시스템에서 구현되어야 한다는 뜻일까요?
푸 샤오칭의 원본 기사, 사토시랩, 아일랜드 오브 에브리씽 BTC 스튜디오
1. 비트코인 원천 기술에 대한 주요 설명과 상충점
비트코인의 원천 기술은 대규모 애플리케이션과 비트코인이 가져야 할 기능 간의 충돌 문제로 인해 어려움을 겪어왔습니다. 대규모 애플리케이션과 트랜잭션 크기는 더 복잡한 트랜잭션 명령어와 더 큰 트랜잭션 공간을 의미할까요? 모든 기능이 단일 비트코인 시스템에서 구현되어야 한다는 것을 의미할까요? 비트코인 생태계가 기술적으로 불완전하게 발전하던 초기에는 이러한 모든 현상이 비트코인 자체의 문제인 것처럼 보였습니다. 기술이 발전함에 따라 이러한 질문 중 많은 부분이 보다 명확하게 해답을 찾을 수 있을 것입니다.
이 글에서는 관련 질문 중 몇 가지와 그 질문이 생성되고 해결된 과정을 나열했습니다. 이 글을 통해 이러한 문제와 기술 간의 상관관계는 물론, 비트코인 메인 체인과 관련 '테스트 체인'의 진화 과정을 살펴볼 수 있습니다. 비트코인의 기술은 다양한 프로젝트와 팀(비트코인의 불완전성을 탐구했던 이더를 포함)에 의해 탐구되어 왔으며, 오디널스 프로토콜과 같은 프로토콜의 탄생을 이끈 탭루트와 같은 기술이 개발의 전면에 다시 등장할 때까지 비트코인 메인체인의 변화는 눈에 띄지 않았습니다.
이러한 개발과 관련 기술을 전체적으로 살펴봄으로써 우리는 이들 간의 연관성을 확인하고 개발의 방향과 전체 아키텍처에 대해 더 많은 것을 추측할 수 있습니다.
1.1. 비트코인의 스크립팅 언어와 몇 가지 삭제 지침
비트코인의 프로그래밍 언어는 반복문이나 조건부 제어문이 없는 폴란드어 패러다임을 따르는 스크립팅 언어입니다(이 기능에 대해서는 나중에 탭루트 및 탭루트 스크립트 확장 참조). 그 결과 비트코인 스크립팅 언어가 튜링 완전하지 않다는 말을 종종 듣게 되는데, 이는 비트코인 스크립팅 언어가 특정 한계를 가지고 있다는 뜻입니다.
물론 이러한 한계로 인해 해커는 스크립팅 언어를 사용하여 네트워크를 마비시킬 수 있는 데드락이나 악성 코드를 작성할 수 없으며, 따라서 비트코인 네트워크가 도스 공격을 받는 것을 방지할 수 없습니다. 비트코인 개발자 역시 튜링 무결성이 없어야 코어 블록체인이 공격과 네트워크 혼잡으로부터 보호된다고 믿고 있습니다.
그러나 이러한 한계로 인해 비트코인 네트워크는 다른 복잡한 프로그램을 실행하고 "유용한" 기능을 수행할 방법이 없습니다. 이후 블록체인 시스템 중 일부는 특정 문제를 해결하고 사용자의 요구를 충족하기 위해 이를 변경했습니다. 예를 들어, 이더는 튜링 완결형 언어를 사용합니다.
일반적인 유형의 비트코인 스크립트 명령어:
키워드:
1. 상수. 예: OP_ 0 , OP_FALSE
2. 프로세스 제어. 예: OP_IF, OP_NOTIF, OP_ELSE, ......
3. 스택. 예: OP_TOALTSTACK(2차 스택의 용어 섹션에 입력을 누르고 1차 스택에서 제거), ......
4. 문자열. 예: OP_CAT(두 문자열 연결, 비활성화), OP_SIZE(스택의 최상위 요소의 문자열 길이를 스택으로 누릅니다(요소를 팝할 필요 없음)).
5. 비트 논리. 예: OP_AND, OP_OR, OP_XOR
6. 산술 논리. 예: OP_ 1 ADD(입력값 플러스 1), OP_ 1 SUB(입력값 마이너스 1)
7. 암호화. 예: OP_SHA 1(SHA-1 알고리즘 HASH로 입력), OP_CHECKSIG ()
8. 의사 키워드
9. 예약 키워드
일반적인 유형의 비트코인 스크립트 명령어입니다:
스크립트
1. 표준 결제-비트코인 주소 트랜잭션(pay-to-pubkey-hash)
2. 표준 비트코인 생성 트랜잭션(페이 투 퍼브키)
3. 증명할 수 없는/삭제할 수 없는 출력물
4. 누구나 사용할 수 있는 출력물
5. 추측 거래
5가지 표준 트랜잭션 스크립트 유형에는 공개 키 해시 지불(P2P KH), 공개 키 지불, 다중 서명(최대 15개 키로 제한), 스크립트 해시 지불(P 2 SH), 데이터 출력(OP_RETURN)이 있습니다.
웹: https: //en.bitcoin.it/wiki/Script中有详细的说明.
비트코인에서 지원되는 명령어 검열하기
비트코인의 역사에서 인스트럭션이 검열된 사례는 여러 번 있었습니다. 아래 차트에서 빨간색 부분은 검열된 인스트럭션입니다.
(1) 문자열 조작

(2)

(3) 산술 연산

인스트럭션이 검열되는 이유는 무엇인가요? 보안은 고려 사항의 한 측면일 뿐이며, 명령어를 삭제하는 계층화된 설계의 아이디어를 살펴보면 기본 프로토콜이 더 기본적이고 안정적일 수 있도록 그 근거를 이해할 수 있을 것입니다. 아마도 사토시 나카모토는 처음부터 이 문제를 알고 있었을 것입니다. 그렇지 않았다면 인스트럭션을 삭제하는 데 앞장서지 않았을 것입니다. 저희는 협업을 필요로 하는 대규모 프로토콜보다는 잘 개발된 지침과 시스템 기능으로 사용자의 요구를 직접적으로 충족하는 작은 시스템을 구축하는 것이 좋다고 생각합니다.
이는 또한 비트코인만이 단일 레이어 네트워크로 적합하다는 사실을 만들어냅니다. 저는 "과도한 비트코인 가격은 새로운 대안 체인의 탄생을 촉진할 수 있다"라는 글에서 이러한 현상을 분석한 바 있으며, 경제적 관점과 기술적 관점에서 분석해 보면 비트코인을 대체할 수 있는 체인이 탄생할 가능성이 있습니다. 그러나 비트코인의 근본적인 특성과 계층적 설계의 관점에서 볼 때, 비트코인은 거의 독점적으로 1계층 네트워크 인프라 역할을 할 수 있으며, 대체 체인이 존재한다고 하더라도 1.5계층의 제품이 될 것입니다. 단일 레이어 네트워크 수준에서 실제 존재하는 것은 비트코인뿐이며, 일부 대안이 있는 체인은 기껏해야 A급에 불과합니다.
1.2. 비트코인 포크의 역사, 이유 및 중요성
비트코인 개발 역사에서 삭제 지침 문제 외에도 동전의 다른 면은 블록 크기 분쟁이며, 이로 인해 종종 비트코인의 하드포크가 발생하기도 합니다.
비트코인이 처음 만들어졌을 때는 동시에 처리할 수 있는 트랜잭션 수에 블록 크기에 제한이 없었습니다. 하지만 초기에 비트코인 가격이 매우 낮고 악성 거래 비용이 매우 낮았을 때, 사토시 나카모토는 이 문제를 해결하기 위해 2010년 9월 12일에 블록 크기를 1MB 이하로 제한하는 소프트 포크를 진행했습니다. 그러나 사토시 나카모토는 이 제한은 일시적인 것이며, 향후 용량 확장에 대한 요구를 충족하기 위해 통제되고 점진적인 방식으로 블록 제한을 늘릴 수 있다고 언급했습니다.
아래 차트는 비트코인 포크의 역사를 보여줍니다:

비트코인의 인기가 높아지면서 네트워크 트랜잭션 혼잡과 확인 시간 증가 문제가 더욱 심각해졌습니다. 2015년 개빈 안드레센과 마이크 헌은 블록 제한을 8MB로 늘리기 위해 새로운 버전의 비트코인XT에서 BIP-101 제안을 구현하겠다고 발표했고, 그렉 막셀, 루크 주니어, 피터 우일 그렉 막셀, 루크 주니어, 피터 우일 및 다른 핵심 개발자들은 이러한 접근 방식이 풀 노드 운영의 기준을 높이고 통제할 수 없는 영향을 미칠 것이라고 주장하며 반대했습니다. 이 논쟁은 결국 주제와 참여 범위 모두에서 확대되는 모습을 보였습니다.
위에서 살펴본 바와 같이 사토시 나카모토도 "블록 크기 제한은 일시적인 것이며, 향후 확장 필요성을 충족하기 위해 통제되고 점진적인 방식으로 블록 제한을 늘릴 수 있다"는 견해를 표명했습니다. 하지만 더 큰 블록을 지원하기 위해 포크해야 할 때, 큰 블록을 지원하기 위해 체인을 분리하면 문제를 해결할 수 있을까요? 현재 진행 중인 논란에서 수많은 사례가 발생했습니다. 예를 들어, BCH 블록 크기는 800만 개였다가 나중에 3200만 개로 증가했고, BSV 블록 크기는 128만 개였습니다. 그리고 이 기간 동안 BCH(및 이후 BSV) 외에도 많은 다른 BTC 포크가 등장했으며, BitMEXResearch에 따르면 BCH 포크 이후 1년 동안에만 최소 50개의 새로운 포크가 등장했다고 합니다.
나중에 살펴보겠지만, 메인 비트코인 네트워크의 세그윗과 탭루트도 블록 공간을 1백만 개에서 4백만 개로 어느 정도 증가시켰습니다.
비트코인의 포크는 자체적인 변화를 통해 더 많은 요구를 지원하려는 진화적 탐색의 한 형태입니다. 그중에는 사용자 요구, 채굴자 요구, 투자자 요구, 개발자 요구, 그리고 .......
1.3. 비트코인 개발의 몇 가지 전형적인 탐구 과정
사토시 나카모토가 떠난 후 후계자 개빈 안드레센이 비트코인 코어와 비트코인 재단의 설립을 주도했습니다. 그 사이, 특히 자산 발행 분야에서 비트코인에 대한 여러 가지 확장 가능한 탐색이 이루어졌습니다.
(1) 컬러 코인
eToro의 CEO인 요니 아시아는 2012년 3월 27일자 기사에서 컬러 코인을 최초로 제안했습니다. 이 아이디어는 계속 발전하여 컬러 코인의 개념이 구체화되기 시작했고, 비트코인토크와 같은 포럼에서 주목을 받기 시작했습니다. 결국 메니 로젠펠드는 2012년 12월 4일 컬러 코인을 자세히 설명하는 백서를 발표했습니다.
컬러 코인은 비트코인의 특정 부분에 특별한 주석(즉, 컬러링)을 추가하여 더 넓은 범위의 자산과 가치를 표현하기 위해 구상되었습니다. 컬러 코인의 구현을 통해 다양한 엔티티가 등장했는데, 크게 두 가지 범주로 나뉩니다.
1) OP_RETURN 기반: 예를 들어 2013년 플라비앙 샤를롱이 제안한 오픈 에셋은 OP_RETURN(비트코인 0.9.0 버전에서 제안되었으며 비트코인에 소량의 데이터를 저장하는 데 사용할 수 있으며 초기 제한은 40바이트였으나 이후 80바이트로 증가)을 활용합니다. 옵코드는 스크립트에 저장되며 외부에서 이를 읽어 '색칠'하고 거래합니다. (이 모델은 자산의 적법성을 판단하기 위해 외부 인덱싱에 의존하는 오디널스의 방식과 유사합니다.)
(2) OP_RETURN 기반: 일반적으로 크로마웨이의 2014년 EPOBC 프로토콜로 대표되며, EPOBC 자산에 대한 추가 정보는 비트코인 거래의 nSequence 필드에 저장되며, 각 EPOBC 자산의 범주와 합법성은 제네시스 거래로 역추적하여 결정해야 합니다.
(2) 마스터코인(OMNI)
JR 윌렛은 2012년 1월 6일 "비트코인의 두 번째 백서"라는 제목으로 마스터코인에 대한 아이디어를 발표하고 2013년 7월에 공식적으로 ICO로 프로젝트를 시작하여 결국 5,120 BTC(당시 50만 달러 상당)를 모금했습니다. 마스터코인은 블록체인 외부의 노드에 존재하는 비트코인 블록을 스캔하여 상태 모델 데이터베이스를 유지하는 전체 노드 계층을 구축한다는 점에서 컬러 코인과 다릅니다. 이러한 설계는 새로운 자산 생성, 탈중앙화된 거래소, 자동화된 가격 피드 등 컬러 코인보다 더 정교한 기능을 가능하게 합니다. 2014년, 테더는 마스터코인 프로토콜을 통해 비트코인 위에 스테이블코인을 출시했는데, 이는 테더 USD(OMNI)로 알려져 있습니다.
(3) 카운터파티
카운터파티는 2014년에 공식적으로 출시되었으며, 카운터파티 역시 OP_RETURN을 사용하여 BTC 네트워크에 데이터를 저장합니다. 그러나 컬러풀 코인과 달리 카운터파티에서는 자산이 UTXO 형태로 존재하지 않고, 자산 보유자가 특수 데이터로 거래에 서명할 때 완료되는 자산 전송을 나타내는 정보를 OP_RETURN에 로드합니다. 이러한 방식으로 카운터파티는 자산을 발행하고 거래할 수 있을 뿐만 아니라 이더리움 스마트 컨트랙트와 호환되는 플랫폼을 제공할 수 있습니다.
이 외에도 이더리움, 리플, 비트셰어도 광범위한 "비트코인 2.0" 범주에 포함된다는 주장이 제기되고 있습니다.
1.4 비트코인의 불완전성과 계층화된 프로토콜
비트코인 시스템의 불완전성(또는 한계)은 여러 영역에 걸쳐 있습니다(이 백서의 불완전성은 이더리움 백서에 요약되어 있으며, 실제 불완전성은 아닙니다).
1. 비트코인의 계정 시스템 UTXO
현재 블록체인 프로젝트에는 계정/잔고 모델과 UTXO 모델이라는 두 가지 주요 기록 보관 유형이 있습니다. 비트코인은 UTXO 모델을 사용하고 이더리움, 이오스 등은 계정/잔고 모델을 사용합니다.
비트코인 지갑에서는 일반적으로 계정 잔액을 볼 수 있지만, 사토시 나카모토가 설계한 비트코인 시스템에서는 잔액이라는 것이 존재하지 않습니다. '비트코인 잔액'은 비트코인 지갑 애플리케이션에서 파생된 개념으로, 미사용 트랜잭션 출력(UTXO)은 비트코인 거래 생성 및 검증의 핵심 개념인 미사용 트랜잭션 출력입니다. 거래는 모든 합법적인 비트코인 거래를 순방향으로 하나 이상의 거래 결과로 추적할 수 있는 일련의 체인을 형성하며, 각 체인의 출처는 채굴 보상이고 끝은 현재 미사용 거래 결과물입니다.
따라서 현실 세계에는 비트코인이 존재하지 않고 UTXO만 존재합니다. 비트코인 거래는 거래 입력과 거래 출력으로 구성되며, 각 거래는 입력을 소비하고 출력을 생성하며, 생성된 출력은 '미사용 거래 출력', 즉 UTXO입니다.
스마트 컨트랙트를 구현할 때 UTXO 계정 모델은 매우 문제가 많습니다. 이더 옐로우북의 설계자인 개빈 우드는 UTXO를 매우 잘 이해하고 있습니다. 이더리움의 가장 큰 새로운 기능은 스마트 컨트랙트입니다. 스마트 컨트랙트 때문에 개빈 우드는 UTXO를 기반으로 튜링 완전 스마트 컨트랙트를 구현하기 어렵습니다. 계정 모델은 자연스럽게 객체 지향적이며, 각 트랜잭션에 대해 해당 계정(nonce++)에 기록됩니다. 계정을 쉽게 관리하기 위해 각 트랜잭션에 따라 변경되는 글로벌 상태가 도입되었습니다. 이는 작은 변화가 세상을 바꾸는 현실 세계에 해당합니다. 따라서 이더는 계정 시스템을 사용하며, 이후 퍼블릭 체인은 기본적으로 다양한 유형의 계정 시스템을 기반으로 구현됩니다.
UTXO의 또 다른 심각한 단점은 계정에서 인출할 수 있는 금액을 세밀하게 제어할 수 없다는 것입니다. 이는 이더리움 백서에 설명되어 있습니다.
2. 튜링 완전하지 않은 비트코인의 스크립팅 언어
비트코인 스크립팅 언어는 다양한 연산을 지원할 수 있지만, 모든 연산을 지원할 수는 없습니다. 비트코인의 스크립팅 언어에는 루프 문과 조건부 제어 문이 없다는 것이 가장 큰 특징입니다. 따라서 비트코인 스크립팅 언어는 튜링이 완전하지 않다고 말할 수 있습니다. 이로 인해 비트코인 스크립팅 언어에는 특정한 한계가 있습니다. 물론 이러한 한계로 인해 해커는 스크립팅 언어를 사용하여 네트워크를 마비시킬 수 있는 데드 루프나 악성 코드를 작성할 수 없으며, 따라서 비트코인 네트워크가 도스 공격을 받는 것을 방지할 수 있습니다. 비트코인 개발자들은 또한 튜링 무결성이 없어야 하는 코어 블록체인이 공격과 네트워크 혼잡으로부터 보호된다고 믿습니다. 그러나 이러한 한계로 인해 비트코인 네트워크는 복잡한 프로그램을 실행할 방법이 없습니다. 순환문을 지원하지 않는 이유는 트랜잭션이 확인될 때 무한 루프를 피하기 위해서입니다.
보안을 위해 튜링 완전성을 지원하지 않을 이유는 없습니다. 그리고 튜링 완전성을 지원하지 않는 언어는 할 수 있는 일이 제한적입니다.
3. 비트코인의 다른 불완전성, 보안, 확장성
비트코인 채굴 알고리즘은 기본적으로 채굴자가 블록 헤더를 수백만 번 조금씩 변경하여 결국 일부 노드의 변경된 해시 버전이 목표 값보다 낮아질 때까지 채굴을 진행합니다. 그러나 이 채굴 알고리즘은 두 가지 형태의 중앙 집중화 공격에 취약합니다. 첫 번째는 비트코인 채굴이라는 특정 작업에서 수천 배 더 효율적으로 작동하도록 특별히 설계된 ASIC(애플리케이션 특정 집적 회로)과 컴퓨터 칩에 의해 채굴 생태계가 제어되는 경우입니다. 이는 비트코인 채굴이 더 이상 고도로 탈중앙화되고 평등하지 않으며, 막대한 자본의 효과적인 참여가 필요하다는 것을 의미합니다. 두 번째로, 대부분의 비트코인 채굴자는 더 이상 로컬에서 블록 유효성 검사를 완료하지 않고 중앙화된 채굴 풀에 의존해 블록 헤더를 제공합니다. 현재 상위 3개 마이닝 풀이 비트코인 네트워크 처리 능력의 약 50%를 간접적으로 통제하고 있다는 것은 심각한 문제입니다.
확장성 문제는 비트코인의 주요 문제입니다. 비트코인은 시간당 약 1MB씩 증가하는데, 비트코인 네트워크가 초당 2,000건의 비자 거래를 처리한다면 3초마다 1MB씩 증가하게 됩니다(시간당 1GB, 연간 8TB). 트랜잭션 수가 줄어들면서 비트코인 커뮤니티에서는 대규모 블록체인이 성능을 향상시킬 수는 있지만 중앙 집중화의 위험이 있다는 논란이 제기되고 있습니다.
제품 수명 주기 관점에서 볼 때 비트코인의 사소한 결함 중 일부는 자체 시스템에서 개선할 수 있으며, 현재 시스템으로는 개선에 한계가 있습니다. 그러나 새로운 시스템에서 이러한 문제를 해결할 수 있다면 기존 시스템의 한계 문제는 완전히 무시할 수 있습니다. 새로운 블록체인 시스템이 만들어질 것이기 때문에 이러한 사소한 기능 개선은 새로운 시스템과 함께 설계되고 업그레이드됩니다.
레이어드 디자인
계층형 설계는 시스템을 여러 계층으로 나누고 계층 간의 관계와 기능을 정의하여 시스템의 모듈성, 유지보수성, 확장성을 달성함으로써 시스템의 설계 효율성과 신뢰성을 향상시켜 인간이 복잡한 시스템을 다루는 수단이자 방법론입니다.
광범위하고 규모가 큰 프로토콜 시스템의 경우 레이어링을 사용하면 분명한 이점이 있습니다. 이해하기 쉽고, 구현할 작업을 쉽게 나누고, 모듈 단위로 개선하기 쉬워지는 등 여러 가지 이점이 있습니다. 예를 들어 ISO/OSI 7계층 모델 설계의 컴퓨터 네트워크와 같이 특정 네트워크 프로토콜인 TCP/IP는 4계층 프로토콜이지만 구체적인 구현에서는 일부 계층을 병합할 수 있습니다. 특히 프로토콜 계층화의 장점은 계층이 서로 독립적이고 유연성이 뛰어나며 구조를 분리할 수 있고 구현 및 유지 관리가 쉬우며 표준화를 촉진할 수 있다는 점입니다.
계층화된 프로토콜의 관점에서 볼 때 비트코인은 가장 기본적인 최하위 계층에 있어야 하기 때문에 그의 UTXO, 튜링이 아닌 완전성, 긴 블록 시간, 작은 블록 용량, 설립자의 실종, ...... 등은 단점이 아니라 오히려 네트워크의 계층으로서 있어야 하는 특성입니다.
참고: 프로토콜 계층화에 대한 자세한 설명은 "비트코인 레이어 2 구조의 기초에 관한 글, 버전 1.5"에서 확인할 수 있습니다.
2. 비트코인 개발의 중요한 신기술(블록 스케일링과 용량 스케일링)
이전 섹션에서는 비트코인의 원천 기술에 대한 주요 갈등과 몇 가지 탐구 사례를 살펴보았지만, 많은 경우 하드포크로 이어지거나 완전히 새로운 이기종 체인을 탄생시켰습니다. 비트코인 자체인 블록체인에서도 이러한 탐구는 블록 확장과 용량 확장이라는 많은 결과를 낳았습니다. 이는 주로 다음 영역에서 나타납니다.
2.1. OP_RETURN
비트코인 개발자들은 여러 가지 방법으로 비트코인의 기능을 확장하기 위해 노력해왔습니다:
(1) OP_RETURN의 사용
OP_RETURN은 스크립트를 종료하고 스택 맨 위에 있는 값을 반환하는 데 사용되는 스크립트 옵코드입니다. 이 옵코드는 프로그래밍 언어의 반환 함수와 유사합니다. 비트코인의 역사에 걸쳐 여러 번 수정되어 왔으며, 현재는 주로 원장에 데이터를 저장하는 방법으로 사용되고 있습니다.OP_RETURN 옵코드의 기능은 과거에 크게 변경되어 현재는 체인에 임의의 데이터를 저장하는 중요한 메커니즘이 되었습니다.
OP_RETURN은 원래 스크립트 실행을 조기에 종료하는 데 사용되는 반환 연산으로, 실행 결과를 스택의 최상위 항목으로 표시했습니다. 이 옵코드는 처음에는 쉽게 악용될 수 있는 취약점을 가지고 있었지만, 사토시 나카모토가 빠르게 패치를 적용했습니다.
OP_RETURN 함수에 대한 추가 변경 사항
비트코인 코어 0.9.0 버전 업데이트에서 "OP_RETURN 출력" 스크립트가 표준 출력 유형이 되어, 사용자가 "사용할 수 없는 트랜잭션에 데이터를 첨부할 수 있게 되었습니다. 출력"에 데이터를 첨부할 수 있게 되었습니다. 이러한 스크립트에서 사용할 수 있는 최대 데이터 양은 처음에 40바이트로 제한되었다가 80바이트로 증가했습니다.
데이터를 블록체인에 저장합니다:
OP_RETURN을 항상 false를 반환하도록 변경한 결과 흥미로운 결과가 나타났습니다. OP_RETURN 이후에는 어떠한 옵코드나 데이터도 평가되지 않기 때문에, 네트워크 사용자들은 이 옵코드를 사용하여 임의의 형식으로 데이터를 저장하기 시작했습니다.
2017년 8월 1일부터 2018년 11월 15일까지 비트코인 캐시 (BCH) 기간 동안 OP_RETURN 출력에 추가할 수 있는 데이터의 길이가 220바이트로 확장되었고, 더 큰 데이터는 블록체인 소셜 미디어에 콘텐츠를 게시하는 등 블록체인에서 혁신적인 애플리케이션을 촉진할 수 있게 되었습니다.
BSV에서는 220바이트 제한이 단기간 동안 유지되었습니다. 그 후 2019년 1월, 노드가 후속 옵코드의 유효성을 검사하지 않는 방식으로 OP_RETURN 옵코드가 스크립트를 종료함에 따라, 노드는 스크립트가 최대 스크립트 크기 제한인 520바이트 이내인지도 확인하지 않습니다. 그 결과 네트워크의 노드 운영자는 최대 트랜잭션 크기를 100KB로 늘려 개발자가 애플리케이션을 더 자유롭게 혁신할 수 있도록 하고, 새로운 애플리케이션이 더 크고 복잡한 데이터를 비트코인 원장에 넣을 수 있도록 하기로 결정했습니다. 당시 애플리케이션의 한 예로 웹사이트 전체를 BSV 원장에 저장하는 애플리케이션이 있었습니다.
OP_RETURN에는 일부 기능 확장이 있었지만, 전반적으로 여전히 기능이 제한적이었습니다. 그래서 분리된 증인 기술이 만들어졌습니다.
(2) 분리된 증인
분리된 위트니스(또는 줄여서 세그윗)는 2015년 12월 피터 우일(비트코인 핵심 개발자이자 블록스트림의 공동 창립자)에 의해 처음 제안되었으며, 이후 비트코인 BIP 141을 형성했습니다. 분리된 위트는 비트코인 블록의 트랜잭션 데이터 구조를 약간 수정하여 다음과 같은 문제를 해결합니다:
1) 트랜잭션 가변성 문제.
(2) SPV 증명에서 트랜잭션의 서명 전송이 선택 사항이 되어 머클 증명에서 전송되는 데이터 양을 줄일 수 있습니다.
3) 위장된 블록 용량 증가.
앞의 두 항목은 주로 보안과 성능을 향상시키지만, 새로운 기술에 가장 큰 영향을 미친 것은 세 번째 항목입니다. 위장은 블록 용량을 증가시켜(아래 블록 가중치 개념 참조) 비트코인이 탭루트(분리 증명의 두 번째 버전)에 의해 더욱 강화된 수준으로 용량을 확장할 수 있는 토대를 마련합니다.
실현은 블록 용량을 확장하지만, 분리된 위트니스는 블록 크기에 의해 제한을 받기도 합니다. 비트코인의 블록 크기는 1M 바이트로 제한되며, 증인 데이터는 이 제한에 포함되지 않기 때문에 증인 데이터가 오용되는 것을 방지하기 위해 총 블록 크기에 제한이 있습니다. 블록 가중치라는 새로운 개념이 도입되었습니다.
블록 크기 = 기본 크기 * 3 + 총 크기
기본 크기는 감시 데이터를 포함하지 않는 블록의 크기입니다.
총 크기는 BIP 144에 설명된 대로 직렬화된 트랜잭션의 블록 크기(바이트 단위)이며, 기본 데이터와 감시 데이터를 포함합니다.
분리된 위증은 블록 무게를 <= 4M로 제한합니다.
분리된 위임은 또한 기술적으로 비트코인 확장을 위해 라이트닝 네트워크를 사용할 수 있게 해주지만, 여기서는 자세히 설명하지 않습니다.
(3) 탭루트 분리된 위트니스 버전 V2
탭루트라는 단어를 직접 사용하면 많은 사람들이 새로운 개념이라고 생각하지만, 분리된 위증의 두 번째 버전이라고 하면 대부분의 사람들이 관련성을 이해할 것입니다. 탭루트와 관련된 BIP는 340, 341, 342이며, 그 이름은 BIP 340(secp 256k 1에 대한 슈노르 서명), BIP 341(탭루트: 세그윗 버전 1 지출 규칙), BIP 342( 탭루트 스크립트 검증).
2021년 11월, 탭루트는 소프트 포크와 함께 출시되었습니다. 이 업그레이드는 BIP 340, BIP 341, BIP 342의 조합입니다. BIP 340은 타원 곡선 디지털 서명 알고리즘(ECDSA)을 대체하여 한 번에 여러 트랜잭션을 검증할 수 있는 슈노르 서명을 도입함으로써 네트워크 용량을 확장하고 일괄 트랜잭션 처리 속도를 높여 복잡한 스마트 컨트랙트의 배포 가능성을 열었으며, BIP 341은 머클리즈 추상 구문 트리(MAST)를 구현하여 블록체인 상의 트랜잭션 데이터 저장을 최적화했으며, BIP 342(TAPROOT 스크립트는 BIP 340, BIP 341 및 BIP 342의 조합으로, BIP 342는 블록체인 상의 트랜잭션 데이터 저장. 스토리지; BIP 342(탭스크립트)는 비트코인의 스크립트 코딩 언어를 사용하여 비트코인의 네이티브 스크립팅 기능 부족을 확장합니다.
분리된 증인 세그윗과 탭루트 공간의 확장은 비트코인 메인넷의 기능을 확장하는 임무를 맡은 슈노르, 마스트 트리, 탭루트 스크립트의 탄생으로 이어졌습니다.
2.2. 슈노르, MAST, 탭루트 스크립트
2.1절에서 우리는 비트코인의 지속적인 용량 확장 및 확장에 대한 탐구를 살펴보았으며, 탭루트 기술과 관련 핵심 기술인 슈노르, MAST, 탭루트 스크립트가 만들어지고 나서야 비트코인의 용량 환경이 진정으로 열리게 되었습니다.
(1) 슈노르 서명
탭루트의 개발로 기능이 확장되면서 서명 알고리즘에 특정 요구 사항이 생겼고, 슈노르 서명이 등장하여 타원 곡선 디지털 서명 알고리즘(ECDSA)을 대체하기 시작했습니다.슈노르 서명은 거래와 메시지를 효율적이고 안전하게 서명할 수 있는 디지털 서명 체계입니다. 1991년 논문에서 클라우스 슈노르가 처음 설명했으며, 슈노르는 단순성, 증명 가능한 보안성, 선형성으로 호평을 받고 있습니다.
슈노르 서명의 장점:
1) 슈노르 서명은 효율성, 향상된 개인 정보 보호 등 다양한 이점을 제공하면서 ECDSA의 모든 기능과 보안 가정을 유지합니다. 슈노르 서명은 서명 크기를 줄이고, 검증 시간을 단축하며, 특정 유형의 공격에 대한 저항력을 향상시킵니다.
2) 슈노르 서명의 가장 큰 장점은 여러 서명을 키 합계에 유효한 단일 서명으로 집계하는 키 집계입니다. 다시 말해, 슈노르는 여러 공동 작업자가 각자의 공개 키 합계에 대해 유효한 서명을 생성할 수 있게 해줍니다. 서명 집계를 사용하면 여러 서명자의 서명을 하나의 서명으로 결합할 수 있습니다.
키 집계는 다중 서명 설정의 전자 서명이 단일 당사자 거래의 서명과 동일한 양의 블록 공간을 차지하기 때문에 거래 비용을 줄이고 기본 확장성을 개선하며, 슈노르의 이 기능은 다중 서명 결제 및 기타 다중 서명 관련 거래(예: 라이트닝 네트워크 채널 거래)의 크기를 줄이는 데 사용할 수 있습니다.
3) 슈노르 서명의 또 다른 중요한 특징은 변조 가능성입니다.
4) 슈노르는 또한 많은 개인 정보 보호 이점을 제공합니다. 다중 서명 체계는 기존의 단일 공개 키와 외부에서 구별할 수 없으며, 슈노르는 온체인 활동 중에 관찰자가 다중 서명 지출과 단일 서명 지출을 구별하기 어렵게 만듭니다. 또한, n대 다수의 다중 서명 설정에서 슈노르는 외부 관찰자가 온체인 정보를 보고 어떤 참여자가 거래에 서명하고 어떤 참여자가 서명하지 않았는지 판단하기 더 어렵게 만듭니다.
슈노르 서명은 탭루트 소프트포크 업그레이드의 일환으로 BIP-340에 구현되었으며, 2021년 11월 14일 블록 높이 709, 632에서 활성화되었습니다. 슈노르는 BTC에서 디지털 서명을 더 빠르고, 더 안전하고, 더 쉽게 처리할 수 있게 해줍니다. 특히, 슈노르 서명은 BTC의 암호화 알고리즘과 역호환되므로 소프트포크 업그레이드를 통해 도입할 수 있습니다.
(2) MAST 추상 구문 트리
영어와 중국어로 표기된 MAST의 약어가 약간 모호한 부분이 있는데, 공식 BIP(BIP 114)와 일부 기사에서는 MAST의 약어를 Merklised Abstract Syntax Tree로 사용합니다. 다른 출처에서는 머클라이즈드 대체 스크립트 트리(MAST)를 중국어 머클라이즈드 대체 스크립트 트리(MAST)로 번역하기도 합니다. 비트코인 마스터하기라는 책과 기사에서는 약어로 이렇게 설명합니다: https://cointelegraph.com/learn/a-beginners-guide-to-the-bitcoin-taproot-upgrade.
머클 추상 구문 트리와 머클 대체 스크립트 트리(MAST)는 기능적인 관점에서는 동일하게 보입니다. 번역의 관점에서 볼 때, 저는 개인적으로 공식 비트코인 BIP 프로토콜의 사용법을 유지한다고 생각합니다.
MAST의 개념은 추상 시맨틱 트리와 머클 트리라는 두 가지 개념에서 비롯되었습니다.
추상 시맨틱 트리(AST)는 컴퓨터 과학의 컴파일 원칙과 형식 언어학에 대한 지식 분야에 속합니다. 추상 시맨틱 트리는 컴파일 중 소스 코드의 시맨틱 구조를 중간적으로 표현한 것입니다. 소스 코드를 트리 구조로 변환하여 각 노드가 의미 단위를 나타내고 에지가 노드 간의 관계를 나타냅니다. 추상 시맨틱 트리는 컴파일러의 어휘 및 구문 분석 단계에서 중요한 역할을 하며, 컴파일러가 소스 코드의 의미를 이해하고 이후 대상 코드를 최적화 및 생성하는 데 도움을 줍니다. 쉽게 설명하자면 AST(추상 시맨틱 트리)는 프로그램을 별도의 청크로 분할하여 설명하는 방식으로, 분석과 최적화를 더 쉽게 할 수 있습니다. AST를 생성하기 위해 모든 방정식은 모든 전제를 찾을 때까지 화살표로 전제에 연결됩니다. 아래 그림은 스크립트의 AST를 보여줍니다.


반면 머클 트리는 전체 집합을 알지 못해도 어떤 요소가 집합에 속하는지 확인하는 데 사용할 수 있습니다. 예를 들어 비트코인의 간편결제 인증 지갑(SPV 지갑)은 머클 트리를 사용해 블록에 거래가 있는지 확인하므로 전체 블록을 다운로드할 필요가 없어 대역폭을 절약할 수 있습니다.

메르켈 트리를 생성하려면 먼저 각 요소를 한 번 해시하여 고유 식별자를 생성한 다음, 이 식별자를 쌍으로 묶고 다시 해시하여 쌍의 식별자를 생성하고, 전체 세트의 짧고 단순하지만 레이블이 지정된 식별자인 "메르켈 루트"라고 하는 하나의 식별자만 남을 때까지 이 과정을 반복합니다. 전체 식별자 집합을 확인합니다.
어떤 요소가 집합에 속해 있는지 확인할 때 전체 집합을 소유한 사람은 해당 요소에서 메르켈 루트까지의 경로에 있는 모든 식별자를 제공할 수 있습니다. 이렇게 하면 해당 요소가 실제로 집합 내에 있음을 증명할 수 있습니다.
요컨대, AST의 기술을 사용하면 프로그램을 더 작은 조각으로 나눌 수 있으며, 머클 트리를 사용하면 전체 프로그램을 노출하지 않고도 이러한 조각이 실제로 완전한 프로그램의 일부인지 확인할 수 있습니다. 이는 지출자가 단일 트랜잭션에서 사용되지 않는 조건을 머클 증명으로 대체할 수 있는 MAST의 기본 원칙으로, 트랜잭션 크기 감소, 개인정보 보호 강화, 대규모 계약 지원 등의 이점이 있습니다.
특정 MAST 트리는 인터넷에 많은 사례가 있으며, 프로그램을 개발하는 방법을 아는 사람들은 MAST 프로세스를 조합하여 관련된 로직을 명확하게 파악할 수 있습니다.
이제 MAST 추상 구문 트리가 생겼으니, 비트코인 네이티브 구문의 기능을 확장할 필요가 있었고, 그래서 탭루트 스크립트가 탄생했습니다.
(3) 탭루트 스크립트
BIP 342 프로토콜에 탭스크립트라는 이름으로 도입된 탭루트스크립트는 원래 비트코인 스크립트의 업데이트 버전으로, 언어라고도 설명할 수 있지만 실제로는 다른 두 BIP의 구현을 촉진한 명령이 포함된 연산 코드 모음입니다. 또한 탭루트스크립트는 스크립트 크기에 대한 10,000바이트 제한을 제거하여 비트코인 네트워크에서 스마트 콘트랙트를 생성할 수 있는 기능을 제공했습니다. 탭루트스크립트는 또한 10,000바이트 스크립트 크기 제한을 제거하여 비트코인 네트워크에서 스마트 컨트랙트를 생성하기 위한 더 나은 환경을 제공합니다. (이 업그레이드는 또한 오디널스 프로토콜이 추가 데이터를 위해 탭루트의 스크립트 경로를 사용하기 때문에 오디널스 생성을 위한 토대를 마련했습니다). 자세한 정보는 공식 웹사이트에서 확인할 수 있습니다:
https://github.com/bitcoin/bips/blob/master/bip-0342.mediawiki
탭루트스크립트의 기능은 아직 완전히 활용되지 않았으며, 앞으로 더 많은 빌드가 만들어질 예정입니다. 예를 들어, 비트코인의 레이어 1 네트워크를 레이어 2 네트워크에 연결하는 기술에는 탭루트, MAST, 탭루트스크립트가 더 자주 사용되어야 합니다.
2.3. 조례, 인스크립션, BRC 20 및 기타 프로토콜
비트코인 생태계는 세그윗, 탭루트, 슈노르, MAST, 탭루트 스크립트를 기본 도구로 사용하면서 새로운 애플리케이션이 등장하기 시작했습니다. 초기 단계의 애플리케이션은 가볍고 간단한 애플리케이션입니다.
(1) Ordinals 서수 프로토콜, 비문, BRC 20
오르디날스 프로토콜의 탄생은 오르디날스와 인스크립션의 개념을 도입한 수능의 개념과 밀접한 관련이 있습니다. 오디널은 비트코인 네트워크의 각 사토시에 채굴된 순서대로 번호를 부여하는 번호 체계를 말합니다. 프로토콜에서 서수 식별자는 지갑 간에 사토시가 전송되는 방식에 관계없이 동일하게 유지됩니다. 로다모어 오픈 소스 소프트웨어 ORD를 실행하는 비트코인 전체 노드는 이러한 번호가 매겨진 사토시를 추적할 수 있습니다. 이는 각 사토시를 정확하게 추적하고 독립적으로 검증할 수 있는 메커니즘을 제공합니다.
비문은 사토시의 정보를 소각하여 만들어집니다. 세그윗과 탭루트를 결합한 오디널스 프로토콜은 비트코인 블록의 각 사토시에 대해 4MB 미만의 파일, 즉 인스크립션을 구울 수 있게 해줍니다. 인스크립션에는 텍스트, 이미지, 동영상 등 다양한 형식의 정보가 포함될 수 있습니다. 아래는 비문 샘플 스크린샷입니다.

간단히 말해, 서수 번호 체계는 각 사토시마다 추적 가능한 고유 번호를 제공하여 사토시에 균일하지 않은 특성을 부여합니다. 비문은 빈 종이에 그림을 그리는 것과 유사하게 서수에 분리할 수 없는 데이터 정보를 추가할 수 있습니다. 이 두 가지의 결합으로 비트코인은 새로운 NFT 표준이 되었습니다. 오디널의 특성은 간단합니다. NFT 메타데이터의 대부분이 IPFS나 중앙화된 서버에 저장되는 이더나 다른 퍼블릭 체인과 달리, 오디널의 메타데이터는 트랜잭션의 증인 필드에 "내장"된 것처럼 거래의 증인 데이터에 내장되어 있다는 점을 제외하면 NFT 프로토콜과 비슷하다고 할 수 있죠. 데이터는 마치 특정 사토시에 "새겨진" 것처럼 트랜잭션의 증인 필드에 포함되며, 이는 인스크립션이라는 단어의 유래가 된 것입니다.
BRC-20: 오르디날스 프로토콜에서 영감을 받은 트위터 사용자 @domodata가 2023년 3월 8일에 비트코인의 실험적인 대체 토큰 표준인 BRC-20을 만듭니다. 오르디날스 프로토콜은 각 사토시에 다른 '속성'을 부여하여 BTC 네트워크를 생성합니다. 오디널스 프로토콜은 각 사토시에 다른 '속성'을 할당하여 BTC 네트워크를 생성하는 반면, BRC-20은 균일한 '형식'과 '속성'을 부여하여 BTC에 FT, 즉 동질화된 토큰을 생성합니다.
BRC-20은 토큰 계약, 채굴, 전송(디폴리, 민트, 전송)을 Ordinals 프로토콜을 통해 BTC 비문에 JSON 텍스트를 작성하여 배포하며, 여기서 배포의 핵심은 토큰 이름, 총 공급량, 거래당 최대 발행량 등입니다. 송금이나 매수/매도 거래의 경우, 오프체인 잔액을 추적하기 위해 추가 NFT가 새겨집니다. "선착순" 발행 메커니즘은 발행과 참여에 공정한 기회를 제공하며, 동시에 상대적으로 불완전한 BTC 생태계 인프라로 인해 특정 학습 임계값이 있고 유동성이 낮아 BRC-20 토큰을 쉽게 끌어 올릴 수 있으며 ordi, sats, rats 및 기타 BRC-20 토큰이 부의 창출의 물결을 열었습니다! 신화.
(2) 기타 프로토콜 - 아토믹, ARC 20
아토믹스의 탄생은 매우 극적이었습니다. 창립자인 아더는 오디널스 프로토콜이 처음 출시되었을 때 이를 기반으로 DID 프로젝트를 개발하고자 했지만, 개발 과정에서 오디널스 프로토콜이 구현하고자 하는 일부 기능을 지원하는 데 도움이 되지 않는 많은 한계가 있다는 것을 알게 되었습니다. 그래서 2023년 5월 29일, 아서는 몇 달간의 개발 끝에 2023년 9월 17일에 아토믹스의 프로토콜에 대한 아이디어를 처음으로 트윗했습니다. 이후 아토믹 프로토콜은 Dmint, 비트워크, ARC-20, RNS, 그리고 향후 AVM과 분할 방식과 같은 네 가지 주요 개념을 탄생시켰습니다.
오디널스 및 BRC 20과 마찬가지로, 아토믹스를 기반으로 동질화된 토큰을 배포하면 ARC 20이 형성됩니다. ARC 20에 관심이 있으신 분들은 더 자세히 읽어보세요.
https://docs.atomicals.xyz/arc20-tokens
(3) 기타 프로토콜 - Rune
오디널스의 창립자인 케이시 로다모어는 BRC-20 토큰이 "UTXO의 확산으로 인한 바람직하지 않은 결과"를 초래한다는 내용의 기사를 발표하고, UTXO 기반 프로토콜의 대안으로 룬을 제안했습니다. 기존 프로토콜은 일반적으로 복잡한 구현, 열악한 사용자 경험, 스팸성 미사용 트랜잭션 출력(UTXO), 네이티브 토큰이 작동해야 하는 문제점을 안고 있습니다.
룬의 전송은 프로토콜 메시지의 첫 번째 데이터 출력이 (ID, OUTPUT, AMOUNT) 튜플 시퀀스로 해석되는 정수 시퀀스로 디코딩되는 OP_RETURN을 사용합니다. 디코딩된 정수의 수가 3의 배수가 아닌 경우 프로토콜 메시지는 유효하지 않습니다. ID는 전송할 토큰 ID, OUTPUT은 할당할 출력의 인덱스(즉, 어떤 출력에 할당할 것인지), AMOUNT는 할당할 런의 양입니다. 모든 튜플 할당이 처리된 후 할당되지 않은 룬 토큰은 첫 번째 OP_RETURN이 아닌 출력에 할당되며, 나머지는 프로토콜 메시지가 포함된 OP_RETURN 출력에 룬 프로토콜을 할당하여 룬 토큰으로 소각할 수 있습니다.
룬 발행: UTXO에 기반한 동종 토큰 추적. 프로토콜 메시지에 두 번째 데이터 푸시가 있는 경우, 이는 발행 트랜잭션입니다. 두 번째 데이터 푸시는 두 개의 정수인 SYMBOL과 DECIMALS로 디코딩되며, 다른 정수가 남아 있으면 프로토콜 메시지는 유효하지 않습니다. SYMBOL은 오디날 이름에 사용되는 기호와 유사한 26비트 판독 가능한 기본 기호로, 현재 유효한 문자는 A~Z뿐입니다. DECIMALS는 소수점 뒤의 자릿수로 룬이 발행되어야 함을 나타냅니다. DECIMALS는 룬을 발급할 때 사용해야 하는 소수점 이하 자릿수입니다. SYMBOL이 지정되지 않은 경우, 룬 토큰에는 1부터 시작하는 ID 값이 할당됩니다. 심볼이 이미 할당되었거나 비트코인, BTC, XBT인 경우 새로운 룬이 생성되지 않습니다. 이는 룬 프로토콜의 특별한 기능입니다. 잔액 기록을 지갑 주소에 연결하는 대신 UTXO 자체에 기록을 저장합니다.
새로운 룬 토큰은 발행 트랜잭션으로 시작하여 공급량, 기호, 소수점 이하 자릿수를 지정하고 해당 공급량을 특정 UTXO에 할당합니다. UTXO는 크기에 관계없이 얼마든지 룬 토큰을 포함할 수 있으며, UTXO는 잔액을 추적하는 데만 사용됩니다. 그런 다음 전송 함수는 해당 UTXO를 사용하여 다양한 수의 룬을 포함하는 다양한 크기의 여러 개의 새 UTXO로 분할한 다음 기록을 다른 사람에게 보냅니다. BRC-20에 비해 룬은 서버 합의 계층이 하나 줄어들고 더 단순해지며, 오프체인 데이터에 의존하지 않고 네이티브 토큰이 없으므로 비트코인의 네이티브 UTXO 모델에 매우 적합합니다.
(4) 기타 프로토콜 - 비트코인 스탬프, SRC 20, SRC 721
비트코인 스탬프 시스템은 2023년 3월 마이크 인 스페이스가 처음에 카운터파티(2014년부터 존재해 온 비트코인 L2)에서 개념 증명 프로젝트로 출시했습니다. 기본 프로토콜의 업데이트로 인해 스탬프는 지난 여름에 완전히 비트코인으로 전환되었으며, 현재 SRC-20으로 알려져 있습니다. 설립자 마이크는 원래 스탬프를 영구적인 비트코인 대체 불가능한 토큰을 발행하는 수단으로 구상했습니다. 그러나 2023년 1월 케이시 로다모어가 비문 열풍으로 인해 오디널스를 출시한 이후 비트코인에서 번창한 대량 대체 가능한 토큰인 BRC-20을 복제하는 것으로 프로토콜이 확장되었습니다.
스탬프와 오디날의 가장 큰 차이점은 아키텍처입니다. 스탬프는 다중 서명 트랜잭션의 미사용 트랜잭션 출력(UTXO)에 메타데이터를 저장하는 반면, 오디날은 비트코인 트랜잭션의 '증인' 부분에 메타데이터를 저장하기 때문입니다. 이러한 설계의 차이는 개발자에게 장단점을 드러냅니다. 즉, 스탬프의 UTXO 방식은 오디날보다 제조 비용이 더 많이 들지만, 잘라낼 수 없으므로 영구적인 것처럼 보입니다. 반면, 증인 데이터를 사용하는 오디날은 궁극적으로 가지치기가 가능하며, 스탬프보다 제조 비용이 저렴합니다.
따라서 현재 암호화폐에서 NFT의 비용 대비 지속성은 오디날이 가장 우수할 수 있지만(이더에서 온체인 NFT를 생성하는 것도 가능하지만, 오디날보다 상대적으로 비용이 더 많이 듭니다), 현재로서는 스탬프가 가장 확실한 영구성을 보장하는 것으로 보입니다.
BTC 스탬프가 생성된 후 BRC 20과 유사한 원칙에 따라 SRC 20과 SRC 721이 생성되기 시작했습니다. BRC-20은 Ordinals 프로토콜을 기반으로 하고, SRC-20은 BTC 스탬프를 기반으로 합니다. 관심이 있으신 분들은 SRC 20과 SRC 721에 대해 자세히 읽어보실 수 있습니다.
https://docs.openstamp.io/introduction/src20-protocol
https://docs.openstamp.io/introduction/src721-protocol
이번 프레젠테이션에서는 비트코인 원레이어 네트워크의 주요 신기술이 소개되었습니다. 스케일업과 스케일아웃 측면에서 비트코인의 레이어 2와 같은 상위 레이어나 라이트닝 네트워크 등을 통해 구현되는 RGB와 같은 상위 레이어를 사용하기 시작했습니다. 이에 대한 자세한 내용은 "비트코인 레이어 2 구성의 기초에 대한 개요 v1.5", "상태 머신의 관점에서 비트코인 레이어 2를 보면 미래 웹 3.0 애플리케이션의 아키텍처와 구성 경로를 볼 수 있다" 또는 "웹 3.0 애플리케이션의 미래" 또는 "웹 3.0 애플리케이션의 미래"를 읽어보시길 권해드립니다. 또는 비트코인 레이어 2 구축 또는 아키텍처 설계에 관한 다른 기사를 참조하세요.
3. 새로운 기술 및 향후 필요한 개발에 대한 접근 방식
섹션 2를 통해 비트코인 생태계의 기술 발전이 대규모 애플리케이션을 위한 토대를 마련했음을 살펴보았습니다. 그러나 개발 과정과 일부 관련 기술의 미성숙으로 인해 현재 인기 있는 애플리케이션과 최종적으로 보편화된 애플리케이션 사이에는 여전히 상대적으로 큰 차이가 있습니다.
3.1. 새로운 기술의 사용 방식
앞선 두 섹션에서 살펴본 바와 같이 비트코인 기술의 발전은 본질적으로 블록 확장과 용량 확장에 관한 것입니다.
블록 확장 측면에서 분리된 증인은 사실상 블록 확장을 가져오는데, 증인 부분을 잘라내자는 다양한 제안이 있지만, 증인 부분에 더 많은 의미가 부여되었기 때문에 실현될 확률은 낮습니다.
확장 기능 측면에서 보면 탭루트, 슈노르, MAST, 탭루트 스크립트 및 기타 기술은 비트코인에 더 많은 기능을 부여했습니다. 특히, MAST+탭루트 스크립트는 복잡한 시나리오를 처리할 수 있는 비트코인 언어의 능력을 확장하는 여러 기술과 함께 비트코인 기본 스크립팅 언어의 기능을 확장할 것입니다. 그러나 이러한 확장은 비트코인을 개발하고 이해하는 것을 더 어렵게 만들 것입니다. 결국 이러한 스크립트의 개발은 높은 수준의 언어가 아니기 때문입니다. 그리고 용량 확장의 이 부분은 사용자가 블록 용량 확장에 대해 이해하고 학습하는 속도보다 뒤처질 것입니다.
블록을 사용해 용량을 확장하는 것은 쉽지만, 용량을 사용해 용량을 확장하는 것은 복잡하기 때문에 사용자들이 애초에 비트코인 메인 네트워크에 이러한 작은 그림 NFT를 작성한 것이며, 이것이 바로 BRC 20과 같은 애플리케이션이 만들어진 이유입니다. 현재 비트코인 메인넷의 거의 모든 애플리케이션이 블록 확장 사용을 모색하고 있습니다. 소수의 애플리케이션이 용량 확장에 대한 탐색을 시작했는데, 예를 들어 위에서 설명한 기본 요소로 구축된 더 많은 기능을 사용하는 BEVM의 1계층과 2계층 연결이 대표적입니다. 슈노르 서명 + MAST 컨트랙트 + 비트코인 라이트노드 네트워크 BTC L2 솔루션은 레이어 1과 레이어 2를 연결하는 방법을 학습하는 좋은 예입니다. 앞으로 더 많은 기능 확장의 예가 있을 것입니다.
용량 확장의 경계는 어디까지일까요? 이는 계층적 설계 관점에서 판단할 수 있습니다. 이러한 기능 확장이 비트코인의 레이어 1과 레이어 2를 연결하는 기술로 더 많이 사용된다면, 기능 확장을 지나치게 복잡하게 만들지 않아야 합니다. 그러나 인간의 풍부한 창의성과 자산 발행 및 관리의 강력한 매력을 바탕으로 일부 팀이나 개인은 더 많은 기능 확장 시나리오 사례를 탐구할 것입니다.
3.2. 향후 개발 필요성
블록체인 기술이 탄생한 가장 직접적인 이유는 디지털 화폐이기 때문에 자산 발행과 관리와 같은 애플리케이션은 비트코인이나 블록체인 분야에서 가장 시급한 요구 중 하나입니다. 컬러 코인에 대한 탐구부터 BRC 20, ARC 20 등과 같은 애플리케이션, 이더리움 기반의 ICO, IDO 등과 같은 애플리케이션까지 모두 자산 발행을 모색하고 있습니다. 유니스왑, 렌딩, AMM과 같은 애플리케이션은 모두 이더와 같은 네트워크에서 성숙하게 개발된 자산 관리 애플리케이션이며, 비트코인 생태계의 기술이 발전함에 따라 이러한 자산 관리 애플리케이션은 비트코인 생태계로 옮겨갈 것이며, 비트코인 레이어 2 위에서 더 많은 일이 일어날 것입니다.
자산 발행과 관리의 요구가 충족된 후에야 웹 3.0 시대(가치 시대라고도 할 수 있는)에 속하는 대규모 애플리케이션을 개발할 수 있는 에너지와 시간이 확보될 것입니다. 웹 3.0 시대의 미래 대규모 애플리케이션을 위한 시스템 아키텍처는 제 글 "비트코인의 레이어 2를 상태 머신 관점에서 보면 미래 웹 3.0 애플리케이션의 아키텍처와 구축 경로를 볼 수 있다"에 설명되어 있습니다.
구축 경로는 요구를 충족시키는 지속적인 과정으로, 단기, 중기, 장기의 세 단계로 나눌 수 있습니다. 단기적으로는 비트코인 메인 네트워크와 체인 기반 구축의 두 번째 레이어 위에 새로운 기술로 생성된 애플리케이션을 구축하는 단순한 단계이며, 생성된 애플리케이션은 다양한 금융 애플리케이션을 만족시키기 위해 주요 용량 확장을 완료할 것입니다. 중기적으로는 다양한 금융 애플리케이션과 신뢰 애플리케이션을 만족시키는 체인 기반 레이어 2 구축과 분산 시스템 기반 레이어 2 구축의 중후반 단계입니다. 장기적으로는 비트코인 생태계의 대규모 건설을 통해 진정한 웹 3.0 시대의 건설이 완성될 것입니다.





