5분 만에 Truebit 이해: 프로토콜 메커니즘, 애플리케이션 시나리오 및 경제 모델
작성자: Essence Labs
마지막 강세장에서 시작된 베테랑 Layer 2 프로젝트로서 Truebit은 마침내 4월 말에 낮은 키 방식으로 가동되었습니다. 토큰 가격이 계속 상승하고 특별 가격 책정 메커니즘과 TruebitOS 차익 거래 기회를 둘러싼 논의가 진행됨에 따라 Truebit 커뮤니티의 열정은 계속 뜨거워지고 있습니다. 이 기사는 Truebit 네트워크의 프로토콜 메커니즘, 애플리케이션 시나리오 및 경제 모델을 분류하여 사용자가 프로젝트의 파노라마 개요를 얻을 수 있도록 돕고자 합니다.
또한 V God의 최신 Optimistic Rollup EVM 솔루션도 독자들과 함께 자세히 살펴봅니다.
마지막으로 Truebit 네트워크 참여를 연습하고 싶다면 기사 끝에 있는 사려 깊은 지침을 놓치지 마십시오.
문제 배경
현재 이더리움에는 다음과 같은 문제가 있습니다.
전체 처리량이 낮습니다. 컴퓨팅 파워를 많이 소모하지만 처리량은 스마트폰 수준에 불과합니다.
유효성 검사가 낮습니다. 이 문제는 검증자의 딜레마로 알려져 있습니다. 패키징 권한을 획득한 노드는 보상을 받고 다른 노드는 검증이 필요하지만 보상을 받지 못하고 검증 열의가 낮습니다. 시간이 지남에 따라 계산이 확인되지 않아 체인의 데이터 보안에 위험이 발생할 수 있습니다.
계산량은 제한되어 있고(gasLimit) 계산 비용이 높습니다.
위의 문제는 이더리움의 모든 (전체) 노드가 검증을 수행하도록 설계되어 있기 때문에 발생합니다. 중복 계산량이 너무 많습니다. TrueBit은 컴퓨팅 작업의 "전체 노드 중복 검증" 설계를 소수의 오프체인 노드에서만 중복 검증으로 줄입니다.
계약 프레임워크
TrueBit 프로토콜에는 스마트 계약이 포함되어 있습니다.사용자는 스마트 계약에 컴퓨팅 작업을 제출하고 이 작업에 대해 지불하고자 하는 가격을 제시할 수 있습니다.이러한 사용자를 작업 제공자라고 합니다.
Solver는 작업을 완료하고 보상을 받고자 하는 참여자이며, Solver는 작업에 할당될 수 있도록 계약에 일정 금액을 지불하고 이 계산 작업을 완료하여 보상을 받습니다.
게임 확인
게임 확인
앞 장의 프로토콜 프레임워크 소개에서 알 수 있듯이 불일치가 있을 때 솔버와 챌린저 사이에서 누가 맞는지 판단하는 검증 게임이 필요합니다. 이 검증 게임은 스마트 계약으로 구성됩니다. 스마트 계약이 많은 계산을 지불해야 하는 경우 체인의 실행 비용이 매우 높아져 gasLimit를 초과할 수 있습니다. 우리의 목표는 가능한 한 체인에서 계산을 적게 하는 것입니다.
현재 이 목표를 달성하기 위한 방법은 Solver와 Challenger가 양 당사자의 계산 과정에서 첫 번째 분기점을 찾도록 하는 것입니다. 계약에서 실행될 수 있도록 계산하고 누가 옳은지 판단할 수 있습니다. 특정 프로토콜은 다음과 같이 간략하게 설명됩니다.
메인 루프 스테이지
시간 간격 t의 계산에 대해 의심이 있다고 가정하고 시간 t를 c 등분으로 나누고 솔버가 머클 트리로 각 시점의 상태를 나타내도록 하면 트리의 리프 노드는 모두 기계 상태 변수입니다. c 머클 트리 루트를 해시하여 계약을 커밋합니다.
도전자가 i번째 시점에서 해시를 찾으면 로컬에서 계산된 해시와 일치하지 않는 첫 번째 시점입니다. i를 계약서에 제출하십시오.
판사는 C 해시와 숫자 i의 적법성을 확인합니다.
다음 단계에서는 i-1과 i 사이의 시간 간격을 의심 대상으로 하고 이전 단계를 재귀적으로 반복합니다.
확인 단계
보조 제목
상금 메커니즘(대박)
Solver는 자체 계산 결과를 제공하고 Verifier는 반복 계산을 수행하여 Solver가 제공한 결과가 올바른지 확인합니다. 이것은 정상적인 작동 논리입니다. 그러나 이 논리는 다음과 같은 문제를 안고 있다.
검증 작업이 검증자에게 할당되고 이에 대한 비용을 지불하는 경우 검증자는 이중 계산을 전혀 하지 않고(이에 대한 계산 비용을 지불하지 않음) Solver의 결과를 직접 두 번째로 계산할 수 있으므로 매우 위험합니다. 프로토콜.
그들이 발견한 버그 결과에 대해서만 검증자에게 비용을 지불한다면 그들은 언제 버그를 발견할지 확신할 수 없으며 실제로 오랫동안 버그를 찾지 못할 수 있으며 검증자가 참여할 인센티브가 없습니다. 실용적인.
보조 제목
구현 및 애플리케이션 시나리오
검증 게임을 구현하기 위해서는 Instruction Architecture를 통합해야 합니다. TrueBit 프로젝트는 원래 Lanai 아키텍처를 사용하기를 원했지만 나중에 Lanai 컴파일러의 구현이 느리다는 것을 알게 되었습니다. 현재 WebAssembly를 대신 사용하고 있습니다.
다음은 초기 TrueBit 계획의 적용 시나리오입니다(당시에는 RollUp 확장 아이디어가 없었습니다. 어제 Vitalik은 TrueBit OS가 출시된 후 TrueBit에 낙관적 RollUp 제안을 했습니다. 자세한 내용은 다음 섹션을 참조하십시오.)
아웃소싱 컴퓨팅 파워: 이전에 도입된 적이 있습니다.
분산형 광산 풀: 분산형 광산 풀의 장점은 단일 지점(중앙 집중식 광산 풀 운영자)이 공격당하는 것을 방지하는 것입니다. 탈중앙화 마이닝 풀은 스마트 계약을 통해 구현할 수 있지만 ZCash의 POW가 gasLimit를 초과하는지 확인하는 등의 작업은 TrueBit 메커니즘을 통해 극복할 수 있습니다. 이러한 분산형 마이닝 풀을 실현하도록 도와주세요.
보조 제목
프로토콜 검토
TrueBit 프로토콜의 대화형 검증 게임을 통해 사용자는 모든 컴퓨팅 작업을 제출(아웃소싱)하고 올바른 결과를 얻을 수 있습니다.
TrueBit은 다른 채굴자의 중복 검증 작업을 줄이고 보상 구조를 최적화합니다. Verifier의 딜레마 문제를 완화했습니다.
Vitalik: Truebit 기반 낙관적 롤업 EVM 구축
원본 링크원본 링크, 솔루션은 Truebit를 블랙 박스로 취급합니다. 즉, 명령을 입력하고 일정 시간 지연 후 결과를 반환할 것으로 예상할 수 있습니다. 이 모델을 기반으로 EVM 낙관적 롤업을 구성할 수 있습니다.
Truebit는 WebAssembly(WASM) 명령어를 수용할 수 있으며, 최신 고급 언어는 C++, Go, Rust, Java 등과 같은 WASM 바이트코드로 컴파일할 수 있습니다. 즉, 이러한 언어로 작성된 Ethereum 클라이언트는 또한 WASM으로 컴파일되어 Truebit에서 구현됩니다. Truebit를 기반으로 EVM을 구축하려는 경우 첫 번째 단계는 상태 비저장 이더리움 클라이언트를 구축하는 것입니다. Stateless 클라이언트는 이런 식으로 구현할 수 있는데, 블록 실행에 필요한 상태 데이터는 실행을 위한 상태 쿼리 테이블 형태로 클라이언트에 입력 매개변수로 전달된다. 순수한 기능적 프로세스로 추상화할 수 있습니다. process_block(state_lookup_table, block) -> post_state_root와 같은 순수하게 기능적인 상태 비저장 클라이언트는 wasm으로 컴파일되고 실행을 위해 Truebit에 넘겨질 수 있습니다.
두 번째 단계는 체인에 모듈을 구축하는 것인데 여기서 한 가지 어려운 점은 블록체인이 상태를 저장한다는 것입니다. 낙관적 롤업 체인의 N번째 블록이 사기 방지 프로세스를 실행하기 시작하면 N번째 블록의 stateRoot와 관련된 상태 데이터를 사용할 수 있다는 암시적 전제가 있습니다. 이 전제 때문에 잘못된 블록이 제출되면 사람들은 블록 오류를 처음부터 증명할 수 있습니다. 그러나 트루빗은 순전히 기능적인 상태 비저장 대화형 컴퓨팅 시스템이며 트루빗 호출 외부에서 몇 단계의 대화형 검증 프로세스를 통해 이러한 제한을 우회할 수 있습니다.
프로그램 흐름은 다음과 같이 설계할 수 있습니다.
1. 블록 해시와 stateRoot를 체인의 계약에 저장: List[Tuple[block_hash, state_root]]
2. 시퀀서(구현자에 의해 결정, 하나 이상일 수 있음)는 블록 추가를 담당하며, 이는 실행 전에 stateRoot가 필요한 add_block(expected_pre_state: bytes32, block: bytes, post_state: bytes32) 메서드를 호출하여 구현됩니다. 매개변수로 전달되면 ((block, post_state))가 체인에 추가됩니다.
3. 도전자는 다음 논리를 실행할 도전(index: int, lookup_table: bytes, block: bytes) 메서드를 호출하여 stateRoot에 도전할 수 있습니다.
제출된 블록이 저장된 해시와 일치하는지 확인
Truebit 호출 process_block()을 만들어 블록 콘텐츠를 실행합니다.
조회 테이블의 Merkle 루트 계산 및 저장
챌린지가 시작되면 누구든지 preStateRoot를 루트로 하여 Merkel Path에 값을 제출하고 도전자가 제공한 Merkel Path의 동일한 값과 비교하여 도전자가 제공한 쿼리 테이블이 잘못되었다고 이의를 제기할 수 있습니다. 갈등이 있으면 도전자에게 문제가 있다는 뜻이고, 도전자는 벌을 받는다.
트루빗이 대기 기간을 거쳐 실행 블록 결과 post_state_root를 반환하면 챌린지가 정상임을 의미합니다(즉, 아무도 챌린저에 문제가 있음을 증명하지 않음). 블록 실행. 그런 다음 결과가 정확하다는 가정에 따라 다음 논리가 실행됩니다.
결과가 이전에 제출된 post_state_root와 일치하지 않고 오류 ERROR: LOOKUP_TABLE_MISSING_NEEDED_VALUE가 아닌 경우 챌린지가 성공하고 원래 제출자는 처벌을 받으며 다른 사람들은 올바른 블록 및 상태 데이터를 계속 제출하여 하나의 블록과 상태가 잘못되었습니다.
보조 제목
경제 모델 개요
Truebit의 토큰은 TRU이며 작업 제출자가 해결자와 검증자에게 비용을 지불하는 데 사용됩니다. 결제를 받은 후 Solver와 Verifier는 작업 실행을 시작할 수 있습니다.
보조 제목
TRU 토큰 공급 방식
TRU 토큰은 누적 수요에 따라 시간이 지남에 따라 생성 및 소멸됩니다. 사용자는 ETH를 통해 TRU 토큰을 "구매" 또는 "출금"할 수 있습니다. 모든 구매 거래는 ETH의 일부를 준비금 에스크로에 예치하고(나머지는 회사로 이동) 모든 판매 거래는 준비금에서 ETH의 일부를 인출합니다. 모든 Truebit 작업은 TRU 토큰도 소각합니다. Truebit OS의 "작업 비용" 명령을 통해 현재 "소각률"과 "토큰 가격"을 알 수 있어 TRU의 현재 구매 및 종료 가격을 이해하는 데 도움이 될 수 있습니다.
보조 제목
제한된 시간 인센티브
보조 제목
ETH 수수료
보조 제목
가격 설정 정책
Truebit은 가격 책정을 위해 본딩 곡선 모델을 채택합니다.수요가 증가하고 토큰의 총량이 증가함에 따라 곡선의 가격도 동시에 상승합니다.
보조 제목
Truebit 네트워크에 조기에 가입하는 방법
현재 사용자는 개인/기관 소개, Github 주소, Truebit 사용 시나리오 등 신청서를 제출하여 Truebit에 대한 조기 액세스 권한을 얻을 수 있습니다. 접수 후 관리자가 검토 후 답변드립니다.
신청 주소는 다음과 같습니다.
https://truebit.substack.com/p/truebit-early-access
또한 Truebit의 사용 및 메커니즘에 대한 모든 논의는 gitter에서 개발자와 소통할 수 있습니다.
https://gitter.im/TruebitProtocol/community
저자 소개:
Essence Labs는 DeFi 및 Web3.0 방향으로 새로 설립된 기업가 팀입니다. 그 비전은 Web3.0의 실현을 촉진하고 일반 사람들이 접근할 수 있는 더 많은 애플리케이션 시나리오에 분산된 신뢰를 강화하는 것입니다.
Essence Labs의 구성원은 블록체인 핵심 합의 메커니즘 연구 및 블록체인 플랫폼 개발 및 구현 경험은 물론 선도적인 인터넷 및 금융 기술에 대한 배경을 가지고 있습니다. 우리는 Web3.0 미들웨어, 확장성 솔루션, DeFi 프로토콜과 같은 트랙에 세심한 관심을 기울이고 업계 동료들과 함께 블록체인 산업의 미래 방향을 모색하기를 기대합니다.


