AVM을 이해하는 방법: BTC가 동적 "상태 머신"을 구현할 수 있게 하는 튜링 완전 가상 머신?
저자:Haotian
@atomicalsxyz가 최근 발표한 AVM 가상 머신 백서에 대한 이해는 어떻게 해야 할까요? 간단히 말해: 이는 비트코인 가상 머신을 시뮬레이션하여 본래 "무상태" 비트코인 메인넷이 스마트 계약 시스템을 탑재할 수 있는 능력을 구현하고, 이를 통해 BTC 자산 외에 더 복잡한 자산의 상태 기록 및 처리 능력을 완수할 수 있게 해주는 것으로, 튜링 완전 스마트 계약과 유사합니다. 다음으로, 제 이해를 공유하겠습니다:
1)비트코인은 본래 P2P 전자 현금 시스템으로 설계되었으며, 일정한 Script 스크립트 데이터 저장 능력을 가지고 있고, 기본적인 OP Codes 작업 코드와 UTXO 시간 잠금 및 지출 조건에 기반한 자산 검증 로직을 갖추고 있습니다.
따라서 비트코인 네트워크는 BTC 자산을 기록하고 전송할 때 "무상태"에서 자산 관리를 실현할 수 있습니다. UTXO의 극단적인 단순 모델과 미리 정의된 상태 전환 규칙의 제한으로 인해, 이러한 무상태 모델은 BTC 단일 자산의 제한된 관리만 처리할 수 있습니다.
비트코인 네트워크에 새로운 자산을 추가하려고 하면, 예를 들어 BRC20, ARC20, Runes 등의 자산은 이러한 자산의 저장, 거래, 상태 변화 등을 기록하기 위해 더 복잡한 동적 "상태 기계" 모델이 필요합니다. 어떻게 구현할 수 있을까요?
한 가지 방법은 외부 프로토콜과 Layer2 이층 솔루션을 사용하여 체인 외부에서 "상태 기계" 모델을 구축하여 처리하는 것입니다. @NervosNetwork, @RoochNetwork와 같은 현재 우수한 이층 확장 솔루션이나 RGB, 라이트닝 네트워크와 같은 네이티브 솔루션도 이 범주에 속합니다;
다른 방법은 Script 스크립트의 기능을 직접 확장하여 복잡한 자산의 생성 및 전이를 처리하기 위해 새로운 작업 코드나 저장 공간을 추가하는 것입니다. Covenant와 OP_CAT 등 BIP 제안 표준에 의존하여 통과된 솔루션이 이에 해당합니다;
위의 두 가지 방법은 지나치게 "적극적"이어서 단기간 내에 합의 통일을 이루기 어렵거나, 지나치게 "수동적"이어서 큰 불확실성을 동반합니다. AVM 가상 머신은 두 가지 사이의 특별한 처리 솔루션을 제공하여 비트코인 메인넷에서 가상 머신 실행 환경을 직접 구축합니다.
2)어떻게 할까요? AVM의 주요 작동 원리는 세 부분으로 구성됩니다:
비트코인 스크립트 시뮬레이션, 사실상 비트코인 명령어 집합으로, 이중 스택 PDA(압축 저장 자동기)를 통해 튜링 완전 속성을 구현했습니다;
샌드박스 실행 환경, 전체 시뮬레이터는 통제된 격리 환경에 있어 샌드박스 내의 실행과 외부의 실행이 서로 간섭하지 않습니다;
상태 해시, 참여자가 자신의 인덱서의 상태가 올바르게 동기화되었는지 검증할 수 있게 하여 상태 불일치로 인한 잠재적 공격을 방지합니다.
간단히 이해하자면: AVM은 현재 BTC의 제한된 저장 공간과 OP Codes 처리 프레임워크를 직접 활용하여, 각 BTC 메인넷 거래에 특별한 인코딩 및 디코딩 방식(샌드박스 환경)을 도입합니다.
이 샌드박스는 인덱서, 샌드박스 파서(명령어 집합), 글로벌 데이터베이스(데이터베이스) 등을 갖추고 있어 자산의 저장, 거래 상태 기록 등의 관리를 독립적으로 완료할 수 있으며, 이는 BTC 메인넷에 동적인 "상태 기계"를 내장한 것과 같습니다. 이를 통해 복잡한 스마트 계약 처리 및 상태 동기화와 검증을 실현할 수 있습니다.
3)AVM 가상 머신이 있으면 이론적으로 비트코인 메인넷이 기본 스마트 계약 작업 기능을 갖추게 되어, 비트코인이 다중 복잡 자산 및 복잡 상태 논리 DApp의 가능성을 관리할 수 있게 됩니다. 이는 비트코인 네트워크가 일정한 자가 구축 생태 기능을 갖추게 되는 것과 같습니다.
이는 분명히 큰 진전을 의미하며, 적어도 RGB, 라이트닝 네트워크 및 다양한 우수한 이층 프로토콜 처리 솔루션과 동급의 BTC 확장 능력 혁신으로 볼 수 있습니다. 심지어 네이티브 측면에서도 다른 솔루션보다 우수합니다.
하지만 AVM은 비트코인 Script 스크립트에 의존하여 인코딩 저장을 하고, OP Codes에 의존하여 거래 실행을 하므로, 전체적으로 BTC의 메인넷 성능에 제한을 받습니다. 예를 들어: 블록 저장 공간 크기, 빠른 속도 등.
상상해 보세요, AVM을 기반으로 구축된 DeFi 프로젝트가 매 분마다 7건의 거래만 처리할 수 있고, 두 상태 전환 사이에 10분을 기다려야 한다면, 이러한 스마트 계약은 이론적으로 완전하더라도 여전히 발목이 잡히게 됩니다. 또한 비트코인 Script 스크립트 명령어 집합을 사용하여 복잡한 계약 기능을 개발하는 것은 이더리움 Solidity와 같은 언어로 스마트 계약을 개발하는 것보다 더 복잡하고 어려운 일입니다.
게다가 AVM의 백서는 단지 이해할 수 있는 내장 가상 머신 실행 방식을 정리한 것일 뿐, 실제 배포 후 애플리케이션 환경에서 어떻게 작동하고 안정적으로 운영되는지는 여전히 미지수입니다.
이상
전체적으로 저는 AVM의 개발을 BTC 메인넷 Script 스크립트 확장의 유익한 적극적 탐색으로 보는 경향이 있으며, 실제로 일부 간단한 스마트 계약이 BTC 메인넷에 구현될 수 있도록 촉진할 수 있습니다. 또한 비트코인 메인넷이 이층 생태 구축 및 BitVM과 같은 체인 내외 조합 생태에서 더 큰 비율과 가치를 발휘할 수 있습니다.
하지만 다른 BTC 확장 솔루션과 마찬가지로 AVM도 장단점이 있으며, 실제 생태 구축 상황에 따라 "정통성"의 매력을 확대해야 합니다. 따라서 합리적이고 신중한 낙관적인 태도를 유지할 것을 권장합니다.