비트코인 서수 프로토콜과 BRC20 표준의 원리 혁신과 한계에 대한 해석
十四君
2023-05-22 14:00
本文约4521字,阅读全文需要约18分钟
응용 프로그램은 여전히 ​​매우 창백하지만 원을 깨려는 흥미로운 시도로 Bitcoin 프로그래밍 가능성의 상상력을 열었습니다.

"The Times 2009년 1월 3일 은행에 대한 두 번째 구제금융 직전의 총리." - Bitcoin Genesis Block

첫 번째 레벨 제목

보조 제목

1.1 개요

각 비트코인은 1억 개의 "사토시"(1 btc = 10 ^ 8 sat)로 구성되며, 각각은 고유하게 식별되고 나눌 수 없습니다.

1. 비트코인의 sat의 "서수"에 따르면,

2. 각 Satoshi에 "Inscriptions"라는 특정 의미 부여

이것은 서수 프로토콜입니다.

2. 사토시는 어떻게 번호가 매겨지나요?

그는 비트코인 ​​고유의 블록 프로세스와 UTXO 모델을 사용하여 모든 "사토시(토)” 고유 번호가 있습니다.

비트코인은 "채광"마이닝 프로세스는 채굴자가 복잡한 수학 문제(POW)를 해결하여 블록 권한을 획득하여 새로운 거래를 확인하고 블록체인에 추가하는 것입니다. 비트코인 ​​네트워크는 10분 정도마다 새로운 블록을 생성합니다. 새로운 거래 및 이전 블록의 해시 값, 채굴자의 수입이라고도 함코인베이스 블록

이더리움에서는 "계정 잔액 모델"을 채택합니다. 즉, 각 주소는 별도의 저장 구조를 가지며 공간 균형(balance)은 필드 중 하나입니다.

이 모델의 장점은 다음과 같습니다.

  • 간단함 이해하기 매우 쉽고 구현하기 쉬운 코드입니다.

  • 효율적이며, 각 트랜잭션은 전송 계정에 트랜잭션 비용을 지불하기에 충분한 잔액이 있는지 확인하기만 하면 됩니다.

확장 가능한 읽기:

확장 가능한 읽기:[프론티어 해석] Stanford Researcher Paper - Ethereum Reversible Transaction Standard ERC 20/721 R의 메커니즘, 혁신 및 한계

하지만 비트코인 ​​네트워크는 다릅니다.그의 계정 잔액은 숫자로 표시되지 않습니다.보조 제목

2.1 비트코인의 UTXO 모델

UTXO(미사용 트랜잭션 출력)는 원장 모델입니다.비트코인 시스템에서 각 트랜잭션은 일부 출력을 생성합니다.예를 들어 전송 트랜잭션의 출력은 수신자의 비트코인 ​​주소와 전송 금액입니다. 이러한 출력은 사용되지 않은 트랜잭션 출력을 기록하는 데 사용되는 UTXO 컬렉션에 저장됩니다.

각 트랜잭션은 여러 입력(Input)과 여러 출력(Output)으로 구성됩니다. 모든 트랜잭션은 입력에 비용이 들고 출력을 생성하며, 생성되는 출력은 "사용되지 않은 트랜잭션 출력"입니다. 입력은 이전 블록의 출력을 가리키며, Coinbase 트랜잭션만 입력하지 않고 허공에서 출력만 합니다.

UTXO 모델의 장점은 기존 계정 모델에서 유출될 수 있는 중앙화된 계정 기록 및 계정 잔액 정보가 없기 때문에 보안 및 개인 정보 보호가 더 강화된다는 것입니다.

UTXO 모델의 단점은 트랜잭션 검증 비용과 저장 비용이 증가한다는 것입니다. 트랜잭션의 지불 및 수령이 합법적인지 확인해야 할 때마다 대량의 UTXO 정보도 저장해야 합니다.

그래서 어떤 거래든텍스트

따라서 우리가 가지고 있는 비트코인(비트코인)의 수는 실제로 우리가 소유한 UTXO에 지정된 비트코인(비트코인)의 수를 의미하므로 주소의 BTC 수를 계산하려면 다음과 같이 합니다.

  1. 제네시스 블록에서 스캔을 시작하십시오.

  2. 특정 트랜잭션의 특정 출력이 지정된 주소이면 잔액이 증가합니다.

  3. 보조 제목

2.2 sat와 UTXO의 관계

UTXO는 나눌 수 없는 가장 작은 트랜잭션 단위이므로 sats는 UTXO에만 존재할 수 있고 UTXO는 일정 범위의 sats를 포함하며 특정 UTXO를 소비한 후에야 새로운 출력을 생성할 수 있습니다. 번호

예를 들어 Genesis 블록 또는 CoinBase 블록에서 50 BTC 보상을 받았으며 해당 Input 및 Output은

주소 B로 20 BTC를 전송하면 UTXO가 중앙에 나타나며 입력은 이전 트랜잭션의 출력입니다.

여기서 sats 소비 순서는 FIFO를 기반으로 합니다."선입선출"선입선출(First-In-First-Out) 원칙으로 거래 수수료가 같을 경우 앞선 UTXO가 뒤늦은 UTXO보다 우선적으로 거래에 사용된다.

보조 제목

2.3 서수의 표현

서수는 학위 표기법(Degree Notation) 등의 표현이 많다.

이 표기법에서 흥미로운 점은 비트코인 ​​자체의 순환 특성을 기반으로 인위적으로 sats에 대한 희소성을 생성한다는 것입니다.

  • 공통: 블록민트에서 첫 번째 새트가 아닌 모든 새트

  • 흔하지 않음: sat는 특정 블록에서 채굴된 첫 번째 sat입니다(D== 0).

  • 희귀: 난이도 조정에서 첫 번째 sat 마이닝 (C== 0&&D== 0)

  • 서사시: 반감 중 첫 번째 sat 마이닝 (B== 0&&D== 0

  • 전설: 주기 회전이 발생할 때 첫 번째 채광됨 (B==C==D== 0)

  • Mythic: 제네시스 블록에서 첫 번째로 채굴된 새토(A==B==C==D== 0)

예를 들어 https://ordinals.com/sat/1 ° 0 ′ 0 ″ 0 ‴이므로 Fomo 쫓는 핵심 포인트는 mint의 내용에 포함된 것이 아니라 Ordinal Number와 같은 해당 일련 번호 값입니다. .

첫 번째 레벨 제목

3. 콘텐츠를 비문하는 방법

보조 제목

3.1 SegWit(분리된 증인)

2017년 8월에 활성화된 비트코인의 주요 업그레이드입니다. 주요 목적은 비트코인의 트랜잭션 처리 기능을 최적화하고 트랜잭션 비용을 줄이며 더 안전한 조건에서 비트코인 ​​확장을 달성하는 것입니다. SegWit은 여러 BIP(141, 142, 143, 144 및 145)를 다루는 소프트 포크(Soft Fork) 업그레이드입니다. 이른바 소프트 포크는 비트코인 ​​네트워크 호환성을 파괴하지 않고 이전 버전의 비트코인 ​​클라이언트와 호환됩니다.

그것은핵심 변경 사항은 트랜잭션 데이터에서 트랜잭션의 서명(증인 데이터)을 분리하는 것입니다., 거래 데이터를 더 작게 만들어 거래 수수료를 줄이고 비트코인 ​​네트워크의 용량을 늘립니다.

SegWit의 구현은 모든 트랜잭션 데이터를 두 부분으로 나누어 한 부분은 트랜잭션의 기본 정보(Transaction Data)이고 다른 부분은 트랜잭션의 서명 정보(Witness Data)이며 서명 정보를 저장합니다. 새로운 데이터 구조는 "분리된 증인"이라는 새로운 블록에 있으며 원래 트랜잭션과 별도로 전송됩니다.

이와 같이 비트코인 ​​트랜잭션의 트랜잭션 데이터 크기의 상한선은 증가하는 반면 서명 데이터의 트랜잭션 수수료는 감소합니다. SegWit 업그레이드 전에 Bitcoin의 크기 제한은 1MB였으며 SegWit 이후에는 Bitcoin 트랜잭션의 크기 제한이 4MB에 도달했습니다.

그래서 Oridnals Inscription의본질은 증인 데이터에서 비문 데이터를 숨기는 것입니다.

3.2 탭루트 업그레이드

SegWit 업그레이드와 마찬가지로 Taproot 업그레이드도 소프트 포크 업그레이드입니다.2018년 비트코인 ​​코어 기여자 Gregory Maxwell이 제안한 비트코인 ​​업그레이드 제안입니다.통화 거래 메커니즘을 개선합니다.

업그레이드에는 주로 P2SH, MAST 및 Schnorr의 3가지 기술 개념이 포함됩니다. 그 결과 다중서명 거래, 타임록 거래와 같은 복잡한 거래를 일반 비트코인 ​​거래처럼 보이게 하여 비트코인의 프라이버시를 강화하고, 스마트 계약 전개, 비트코인의 사용 사례 확장. .

SegWit 업그레이드에서 새로운 거래 형식을 나타내기 위해 Bitcoin 프로토콜에 새로운 버전 번호가 추가되었습니다. Taproot 업그레이드에서 비트코인 ​​프로토콜의 가장 중요한 변경 사항은 스크립트 검증기를 ScriptVerify 플래그에서 ScriptVerify v2 플래그로 업데이트하여 Tapscript를 지원하는 것입니다.

Tapscript 연결은 커밋과 공개의 두 단계로 나누어야 합니다. Inscription의 내용은 공개 트랜잭션의 첫 번째 입력에 포함되므로 이 트랜잭션의 첫 번째 출력의 첫 번째 sat에 새겨집니다. 예를 들어

여기에는 여러 작업 명령이 있지만 시작은 OP_FALSE여야 합니다. 이 명령이 실행 스택으로 푸시된 후 스크립트는 실행을 중지하지만 여전히 체인에 저장됩니다.

따라서 Ordinal Inscription의 본질은 다음과 같습니다. 비트코인 ​​네트워크에서절대로 실행되지 않는 스크립트 탭스크립트로 간단한 회계 레이어가 구축됩니다., 자산 및 데이터의 통계 및 기록

부기 만 있기 때문에 스마트 계약과 유사한 스크립트 실행 및 검증 프로세스가 없음을 의미합니다.체인 아래의 중앙 집중식 관리 및 보고 결과에 크게 의존해야 합니다.

4. BRC20이란?

BRC-20의 이름은 언뜻 이더리움의 ERC 20과 많이 비슷해 보이지만 사실 두 기술은 매우 다릅니다. ERC-20 토큰의 보유 상태는 체인에 저장되며 네트워크 합의는 체인에서 얻을 수 있습니다. . BRC 20은 Ordinals 프로토콜의 도움으로 새겨진 JSON 형식의 비문입니다. 이 사양은 brc-20 토큰의 배포, 생성 및 전송 동작만 정의합니다.그리고 BRC-20 토큰의 보유 상태는 오프체인 서비스에 의해 유지됩니다.

배포된 json은 어떻게 생겼습니까?

해당 op도 Mint와 Transfer가 있습니다 두 형식은 거의 동일합니다 물론 이더리움에서의 트랜잭션에 익숙하신 분들은 이상하게 느끼실 것입니다 여기서 전송받는 사람을 어떻게 표현해야 할까요?

왜냐하면 이체거래가 성립되는 시점은 각인에 해당하는 sat이 거래되는 때이므로 각인에 해당하는 sat을 받는 사람이 이체대상이므로 brc-20의 이체는 반드시 이체를 동반해야 하기 때문이다. 비트코인 소유권(아닙니다 취급 수수료로만 소모됩니다).

중앙 집중식 조직은 체인에 등록된 각 작업을 기반으로 사용자가 가져야 하는 현재 잔액을 도출합니다.

[소스코드 해석] 당신이 구매한 NFT는 정확히 무엇인가요?

추가 정보:[소스코드 해석] 당신이 구매한 NFT는 정확히 무엇인가요?

이 과정에서 비문은 트랜잭션(사토시)에 '첨부'되며,Bitcoin 광부는 이러한 비문을 처리하지 않습니다, 체인의 관점에서 보면 여전히 다른 사토시와 다르지 않으며 모두 일반 사토시로 전송됩니다.

5. 서수 및 BRC 20을 평가하는 방법

BRC-20과 Ordinals NFT는 비트코인에 많은 논란을 불러일으켰으며 기본적으로 두 진영으로 나뉩니다.

지지자들은 거래 수수료를 지불하는 한트랜잭션이 무엇이든 상관없이 어떤 방식으로든 블록 공간을 사용할 수 있는 전체 권한, 그들은 BRC-20과 NFT가 비트코인에 새로운 문화와 내러티브를 가져와 비트코인의 실제 적용 가치를 향상시키는 데 도움이 된다고 믿습니다.

반대자들은 이러한 BRC-20 및 NFT가 가치가 없는 정크 거래라고 생각합니다.과도한 정크 거래는 거래 대역폭을 점유하여 거래 블록 진입 시간이 길어지고 처리 수수료가 높아집니다.

저자의 입장에서 위의 기술 구현 경로를 통해 새로운 것이 가격면에서 인기가 있지만 기술적 결함도 매우 명백하다는 것을 분명히 느낄 수 있습니다.

1. 너무 중앙 집중화

서수 프로토콜은 상태 유지를 위해 비트코인 ​​네트워크 외부의 오프라인 서비스를 기반으로 해야 합니다. 기본 상태 서비스를 사용할 수 없거나 결함이 있는 경우 비트코인 ​​네트워크는 유효하지 않은 비문이 체인에 업로드되는 것을 막을 수 없기 때문에 자산 손실로 이어질 수 있으며 중앙 집중식 플랫폼은 누구의 비문이 유효한지 결정해야 하며 이 플랫폼에서 유효합니다. .

2. 신뢰할 수 있는 검증 메커니즘의 부재

최신 최종 ERC-6147 해석: 최소한의 준강제적 NFT 재산권 분리 표준

확장 가능한 읽기:최신 최종 ERC-6147 해석: 최소한의 준강제적 NFT 재산권 분리 표준

3. 비트코인 ​​네트워크 성능 제한

현재 비트코인의 블록 간격은 10분 정도로 길며 거래 확인 속도가 너무 느려 거래 경험도 좋지 않습니다. 또한 비트코인의 거래 비용이 너무 높고 성공적인 온체인 비문 거래는 제3자 수수료, 플랫폼 네트워크 데이터 지연 및 다양한 지연으로 인한 예상 오류 비용을 차감하므로 광부 수수료는 최소 2가 소요됩니다. -3회

4. 인프라 부족

예를 들어, 토큰의 핵심 거래 및 가격 책정 서비스로서 현재 주로 거래 플랫폼의 주문 시스템 보장에 의존하고 있으며 완전한 중앙 집중화 결과 권위 있는 거래 방법과 가격 책정 방법이 부족합니다. 예를 들어 거래 장면에 중앙 집중식 플랫폼 규칙이 없으면 이중 지출이 매우 쉽습니다. 선착순 포모 비문 메커니즘과 채굴자 수수료에 따른 채굴자 우선 패키징 메커니즘의 논리적 역설은 민트가 반드시 공정하지 않다는 것을 결정합니다.

5. 보안 부족

BRC 20은 사용자에게 환상을 주기 쉽습니다., BRC 20은 비트코인만큼 안전하고 안정적일 비트코인의 보안을 이용하여 생성된 토큰이라고 생각하게 만들지만 사실 BTC와 같지는 않습니다. BTC의 보안은 암호화 및 합의 알고리즘을 기반으로 합니다. 지원에 더해 꽤 오랜 시간 동안 비교적 안정적으로 실행되고 있으며 시간의 테스트를 견뎌 왔습니다. BRC 20은 Ordinals 프로토콜을 사용하여 BTC를 바인딩합니다. Ordinals 프로토콜은 현재 짧은 시간 동안 실행 중이며 여전히 개발 초기 단계 아직 발견되지 않은 보안 위험이 있습니다.

SlowMist는 또한 BRC 20의 보안 위험에 대한 알림을 발행했습니다.

최근 BRC-20이 인기를 얻고 있습니다.우리는 BRC-20이 Mint 토큰에서 거래에 이르기까지 보안 위험이 있을 수 있음을 확인했습니다. , 악의적으로 공격하기 쉽습니다. 이 공격은 코드를 변조하여 Mint 사용자가 자산을 도용하는 결과를 초래합니다. 거래 방법은 두 가지가 있는데, 하나는 비공개 거래를 보증할 제3자를 찾는 것이고 사기꾼, 위조 화폐 등을 만나기 쉽고 다른 하나는 특수 거래 플랫폼에서 주문하는 것입니다. 이러한 거래 플랫폼의 보안은 보장할 수 없습니다.

저자는 자신 앞에 있는 서수에 대해 낙관적이지 않지만 결국 그의 블록 공간 적용은 여전히 ​​너무 단조롭고 그 안에 사진과 NFT를 넣는 것만으로는 더 많은 가치를 생성하지 않습니다. 그러나 흥미로운 시도로 이러한 획기적인 혁신은 모든 사람의 생각을 불러일으킬 수도 있습니다.

Bitcoin 프로그래밍 기능을 활용하는 방법은 무엇입니까? 결국 오늘날의 퍼블릭 체인에서 비트코인보다 더 강력한 합의와 보안은 없을 것입니다.

사실 OP-Ruturn의 Ordinals 프로토콜에 의해 출력되는 금융 거래는 풀 노드에 저장된 다른 것과 본질적으로 다르지 않지만 비트코인은 순자산이 높은 거래만 제공합니까? 저비용 데이터를 저장하고 실행하기 위해 블록 공간을 무료로 사용할 수 있습니까?

첫 번째 레벨 제목

부록

https://docs.ordinals.com/introduction.html

https://github.com/casey/ord/blob/master/bip.mediawiki#specification

https://docs.lightning.engineering/the-lightning-network/taproot-assets/taproot-assets-protocol

https://learnblockchain.cn/article/3050 

https://www.wu-talk.com/index.php? m=content&c=index&a=show&catid= 6&id= 13659 

https://learnblockchain.cn/article/5376 

Dex의 비영구 손실 해석: 원리, 메커니즘, 공식 도출

web3 산업의 이슈에 대해 논의하기 위해 공식 계정의 배경에서 저자에게 메시지를 남기는 것을 환영합니다.기술적 관점에서 가치를 제공하는 Fourteen에 집중

十四君
作者文库