원저자: 파우스트(Faust), 괴짜 web3
2023년 Summer of Inscription부터 현재까지 Bitcoin Layer 2는 항상 전체 Web3의 하이라이트였습니다. 이 분야의 부상은 Ethereum Layer 2에 비해 훨씬 늦었지만 POW의 독특한 매력과 현물 ETF의 원활한 구현으로 "증권화"의 위험을 걱정할 필요가 없는 비트코인은 Layer가 되었습니다. 이 파생 트랙은 불과 반년 만에 수백억 달러 규모의 주목을 받았습니다.
비트코인 레이어 2 트랙에서 TVL에 수십억 달러를 보유한 Merlin은 의심할 여지 없이 가장 큰 거래량과 가장 많은 팔로워를 보유한 사람입니다. 명확한 스테이킹 인센티브와 상당한 수익률로 Merlin은 몇 달 만에 거의 갑자기 땅에서 솟아오르며 Blast를 능가하는 생태학적 신화를 만들어냈습니다. Merlin의 인기가 점점 더 높아짐에 따라 기술 솔루션에 대한 논의가 점점 더 많은 사람들의 관심 주제가 되었습니다.
이 기사에서 Geek Web3는 Merlin Chain 기술 솔루션에 중점을 두고 게시된 문서와 프로토콜 설계 아이디어를 해석합니다 . 우리는 더 많은 사람들이 Merlin의 일반적인 작업 흐름을 이해하고 보안 모델을 보다 명확하게 이해할 수 있도록 최선을 다하고 있습니다. 이 "헤드 비트코인 레이어 2"가 어떻게 보다 직관적인 방식으로 작동하는지 알아보세요.
Merlin의 분산형 오라클 네트워크: 개방형 오프체인 DAC 위원회
Ethereum Layer 2이든 Bitcoin Layer 2이든 모든 Layer 2에서 DA 및 데이터 릴리스 비용은 해결해야 할 가장 중요한 문제 중 하나입니다. 비트코인 네트워크 자체에는 많은 문제가 있고 대용량 데이터 처리량을 자연스럽게 지원하지 않기 때문에 이 귀중한 DA 공간을 어떻게 활용할지는 레이어 2 프로젝트의 상상력을 테스트하는 어려운 문제가 되었습니다.
한 가지 결론은 분명합니다. 레이어 2가 처리되지 않은 거래 데이터를 비트코인 블록에 "직접" 게시하는 경우 높은 처리량이나 낮은 처리 수수료를 달성하지 못할 것입니다. 가장 주류를 이루는 솔루션은 고압축을 통해 데이터 크기를 최대한 작게 압축한 후 비트코인 블록에 업로드하거나 비트코인 체인 아래에 직접 데이터를 게시하는 것입니다.
첫 번째 아이디어를 채택한 Layer 2 중에서 가장 유명한 것은 아마도 Citrea일 것입니다. 이들은 일정 기간 동안 Layer 2의 상태 변화(state diff), 즉 여러 계정의 상태 변화 결과를 비교(diff)할 계획입니다. 해당 ZK 증명과 함께 비트코인 체인에 업로드됩니다. 이 경우 누구나 비트코인 메인넷에서 상태 차이와 ZKP를 다운로드한 후 Citrea 상태의 변화를 모니터링할 수 있습니다. 이 방법을 사용하면 체인의 데이터 크기를 90% 이상 압축할 수 있습니다.
이렇게 하면 데이터 크기가 크게 압축될 수 있지만 병목 현상은 여전히 명백합니다. 많은 수의 계정이 단기간에 상태를 변경하는 경우 레이어 2는 이러한 계정의 모든 변경 사항을 요약하여 비트코인 체인에 업로드해야 합니다. 이는 많은 이더리움에서 매우 낮은 수준으로 유지될 수 없습니다. 이는 ZK Rollup에서 볼 수 있습니다.
많은 비트코인 레이어 2는 단순히 두 번째 경로를 따릅니다. 즉, 비트코인 체인에서 DA 솔루션을 직접 사용하거나, 직접 DA 레이어를 구축하거나, Celestia, EigenDA 등을 사용하는 것입니다. B^Square, BitLayer 및 이 기사의 주인공인 Merlin은 모두 이 오프체인 DA 확장 솔루션을 사용합니다.
Geekweb3의 이전 기사 - "B^ 2의 새로운 기술 로드맵 분석: 비트코인 체인 하의 DA 및 검증 레이어의 필요성" 에서 B^ 2가 Celestia를 직접 모방하고 데이터 샘플링 기능을 갖춘 오프체인 지원 DA 네트워크를 구축한다고 언급했습니다. B^2 허브로 명명되었습니다. 거래 데이터나 상태 차이 등 "DA 데이터"는 비트코인 체인 아래에 저장되며, 데이터해시/머클 루트만 비트코인 메인넷에 업로드됩니다.
이는 본질적으로 비트코인을 신뢰할 수 없는 게시판으로 취급합니다. 누구나 비트코인 체인에서 데이터해시를 읽을 수 있습니다. 오프체인 데이터 제공자로부터 DA 데이터를 얻은 후, 온체인 데이터해시, 즉 해시(데이터 1) == 데이터해시 1?에 해당하는지 확인할 수 있습니다. . 둘 사이에 일치하는 부분이 있다면 오프체인 데이터 제공자가 귀하에게 제공한 데이터가 정확하다는 의미입니다.
위 프로세스를 통해 오프체인 노드가 제공한 데이터가 레이어 1의 특정 "단서"와 연결되어 DA 레이어가 악의적으로 잘못된 데이터를 제공하는 것을 방지할 수 있습니다. 그러나 여기에는 매우 중요한 사악한 시나리오가 있습니다. 데이터의 소스인 Sequencer가 데이터해시에 해당하는 데이터를 전혀 전송하지 않고 데이터해시만 비트코인 체인으로 전송하지만 누군가가 이를 방지하기 위해 의도적으로 해당 데이터를 보류한다고 가정해 보겠습니다. 읽어보세요. 지금은 무엇을해야합니까?
유사한 시나리오에는 ZK-Proof 및 StateRoot만 공개하고 해당 DA 데이터(상태 차이 또는 트랜잭션 데이터)는 공개하지 않는 경우가 포함되지만 이에 국한되지는 않습니다. 사람들은 ZKProof를 확인하고 Prev_Stateroot에서 New_Stateroot까지의 계산 프로세스가 유효한지 확인할 수 있지만 하지만 어떤 계정의 상태가 변경되었는지는 알 수 없습니다. 이 경우 사용자의 자산은 안전하지만 모든 사람은 네트워크의 실제 상태를 전혀 확신할 수 없습니다. 어떤 트랜잭션이 체인에 패키징되었는지, 현재 레이어 2에 어떤 계약 상태가 업데이트되었는지 알 수 없습니다. 기본적으로 종료와 동일합니다.
이것은 실제로 " 데이터 보류 "입니다. Ethereum Foundation의 Dankrad는 2023년 8월 트위터에서 비슷한 문제를 간략하게 논의한 적이 있습니다. 물론 그는 주로 "DAC"라는 것을 목표로 삼았습니다.
오프체인 DA 솔루션을 사용하는 많은 이더리움 레이어 2는 위원회를 구성하기 위해 특별한 권한을 가진 여러 노드를 설정하는 경우가 많으며, 그 전체 이름은 DAC(데이터 가용성 위원회)입니다 . 이 DAC 위원회는 보증인 역할을 하며 Sequencer가 실제로 완전한 DA 데이터(거래 데이터 또는 상태 차이)를 오프체인으로 공개했다고 외부 세계에 주장합니다. 그런 다음 DAC 노드는 다중 서명이 임계값 요구 사항(예: 2/4)을 충족하는 한 계층 1의 관련 계약이 기본적으로 DAC 위원회의 검사를 통과합니다. 전체 DA 오프체인 데이터를 공개합니다.
Ethereum Layer 2의 DAC 위원회는 기본적으로 POA 모델을 따르며, KYC 또는 공식 지정을 거친 소수의 노드만 DAC 위원회에 참여할 수 있도록 허용합니다 . 이는 DAC를 "중앙 집중화" 및 "동맹 체인"과 동의어로 만듭니다. 또한 DAC 모드를 채택한 일부 이더리움 레이어 2에서는 시퀀서가 DAC 회원 노드에만 DA 데이터를 전송하고 다른 장소에는 데이터를 거의 업로드하지 않습니다. DA 데이터를 얻으려는 사람은 DAC 위원회의 허가를 받아야 합니다. 얼라이언스 체인과 본질적인 차이는 없습니다.
DAC가 분산되어야 한다는 점에는 의심의 여지가 없습니다. 레이어 2가 레이어 1에 직접 DA 데이터를 업로드할 필요는 없습니다. 그러나 DAC 위원회의 액세스 권한은 소수가 공모하여 악을 행하는 것을 방지하기 위해 외부 세계에 공개되어야 합니다. . (DAC의 사악한 장면에 대한 논의는 Dankrad의 이전 트위터 발언을 참조하세요)
이전에 Celestia가 제안한 BlobStream은 기본적으로 Celestia를 사용하여 중앙 집중식 DAC를 대체합니다 . Ethereum L2 시퀀서는 Celestia 노드의 2/3가 이에 서명하면 Ethereum 2에 배포된 레이어가 DA 데이터를 게시할 수 있다고 가정합니다. 분류기는 실제로 Celestia 노드가 보증인 역할을 할 수 있도록 DA 데이터를 진실되게 공개했습니다. Celestia에 수백 개의 Validator 노드가 있다는 점을 고려하면 이 대규모 DAC는 상대적으로 분산되어 있다고 생각할 수 있습니다.
Merlin이 채택한 DA 솔루션은 실제로 Celestia의 BlobStream과 상대적으로 가깝습니다. 둘 다 POS를 통해 DAC에 액세스할 수 있어 더욱 분산화됩니다. 충분한 자산을 보유한 사람은 누구나 DAC 노드를 실행할 수 있습니다. Merlin의 문서에서는 위에서 언급한 DAC 노드를 Oracle이라고 하며 BTC, MERL 및 심지어 BRC-20 토큰의 자산 공약을 지원하여 유연한 공약 메커니즘을 구현하고 Lido와 유사한 대리 공약도 지원할 것이라고 명시되어 있습니다. (오라클의 POS 담보약정은 기본적으로 멀린의 차기 핵심 서사 중 하나이며, 제공되는 담보이자율은 상대적으로 높습니다)
여기에서는 Merlin의 작업 흐름을 간략하게 설명합니다(아래 그림).
시퀀서는 대량의 트랜잭션 요청을 받은 후 이를 집계하고 데이터 배치(데이터 배치)를 생성하며, 이는 Prover 노드와 Oracle 노드(탈중앙화 DAC)로 전달됩니다.
Merlin의 Prover 노드는 분산되어 있으며 lumoz의 Prover를 서비스로 사용합니다. Prover 마이닝 풀은 여러 데이터 배치를 수신한 후 해당 영지식 증명을 생성합니다. 이후 ZKP는 검증을 위해 Oracle 노드로 전송됩니다.
Oracle 노드는 Lmuoz의 ZK 마이닝 풀에서 보낸 ZK 증명이 Sequencer에서 보낸 데이터 배치와 일치하는지 확인합니다. 두 항목이 일치하고 다른 오류가 없으면 확인이 통과됩니다. 이 과정에서 분산형 Oracle 노드는 임계값 서명을 통해 다중 서명을 생성하고 시퀀서가 DA 데이터를 완전히 전송했으며 해당 ZKP가 유효하고 Oracle 노드의 검증을 통과했음을 외부 세계에 선언합니다.
시퀀서는 Oracle 노드에서 다중 서명 결과를 수집하고 서명 수가 임계값 요구 사항을 충족하면 서명 정보를 DA 데이터의 데이터 해시(데이터 배치)와 함께 비트코인 체인으로 전송하여 외부로 전달합니다. 읽고 확인하는 세상.
Oracle 노드는 ZK Proof를 검증하는 계산 프로세스에 대해 특별한 처리를 수행하고 Commitment Commitment를 생성한 후 이를 비트코인 체인으로 보내 누구나 "Commitment"에 이의를 제기할 수 있도록 합니다. 여기의 프로세스는 기본적으로 bitVM의 사기 방지 프로토콜과 동일합니다. 챌린지가 성공하면 Commitment를 발행한 Oracle 노드가 재정적으로 처벌됩니다. 물론 오라클이 비트코인 체인에 게시하려는 데이터에는 현재 레이어 2 상태인 StateRoot의 해시와 외부 감지를 위해 비트코인 체인에 게시해야 하는 ZKP 자체도 포함됩니다.
여기에서 자세히 설명해야 할 몇 가지 세부 사항이 있습니다. 우선, Merlin 로드맵에는 Oracle이 향후 Celestia에 DA 데이터를 백업할 것이라고 언급되어 있습니다. 이러한 방식으로 Oracle 노드는 데이터 지속 없이 로컬 기록 데이터를 적절하게 제거할 수 있습니다. 장소 상에서. 동시에, Oracle Network에 의해 생성된 Commitment는 실제로 Merkle Tree의 루트입니다. 이를 위해서는 Commitment에 해당하는 전체 데이터 세트를 공개해야 합니다. 타사 DA 플랫폼은 Celestia, EigenDA 또는 기타 DA 레이어일 수 있습니다.
보안 모델 분석: 낙관적인 ZKRollup+Cobo의 MPC 서비스
위에서 우리는 Merlin의 작업 흐름을 간략하게 설명했으며, 여러분은 이미 그 기본 구조를 마스터했다고 믿습니다. Merlin, B^Square, BitLayer 및 Citrea는 기본적으로 동일한 보안 모델(낙관적 ZK-Rollup)을 따른다는 것을 쉽게 알 수 있습니다.
이 단어를 처음 읽을 때 많은 이더리움 매니아들은 이상하게 느낄 수도 있습니다. "낙관적 ZK-Rollup"이란 무엇입니까? 이더리움 커뮤니티에 대한 이해에서 ZK Rollup의 "이론적 모델"은 전적으로 암호화 계산의 신뢰성을 기반으로 하며 신뢰 가정의 도입을 요구하지 않습니다. "낙관주의"라는 단어는 신뢰 가정을 정확하게 도입합니다. 이때에는 Rollup에 오류가 없고 신뢰할 수 있다는 점을 낙관하십시오. 오류가 발생하면 사기 방지를 통해 Rollup 운영자를 처벌할 수 있습니다. 이것이 OP Rollup이라고도 알려진 Optimistic Rollup이라는 이름의 유래입니다.
Rollup 기반의 Ethereum 생태계의 경우 낙관적인 ZK-Rollup은 다소 설명이 없을 수 있지만 Bitcoin Layer 2의 현재 상황과 정확히 일치합니다. 기술적 한계로 인해 비트코인 체인은 ZK 증명을 완전히 검증할 수 없으며, 특수한 상황에서는 ZKP 계산 프로세스의 특정 단계만 검증할 수 있습니다. 이러한 전제 하에서 비트코인 체인은 실제로 사기 방지 프로토콜만 지원할 수 있습니다. 오프체인 검증 과정에서 ZKP의 특정 계산 단계에 오류가 있음을 지적하고 사기 증명을 통해 이의를 제기했다. 물론 이는 이더리움 스타일의 ZK 롤업과 비교할 수는 없지만 이미 도달 범위 내에 있다. 비트코인 레이어 2의 가장 안정적이고 안전한 보안 모델입니다.
위의 낙관적 ZK-Rollup 방식에서는 레이어 2 네트워크에 챌린지를 시작할 권한이 있는 N명이 있다고 가정하고 N명의 챌린저 중 한 명이 정직하고 신뢰할 수 있는 한 오류가 감지되고 사기 방지가 시작될 수 있습니다. 레이어 2 상태 전환은 언제든지 안전합니다. 물론 상대적으로 완성도가 높은 Optimistic Rollup은 출금 브리지도 사기 방지 프로토콜로 보호되도록 해야 합니다. 그러나 현재 거의 모든 비트코인 레이어 2는 이 전제를 달성할 수 없으며 다중 기반에 의존해야 합니다. 서명/MPC. 그렇다면 어떻게 선택해야 할까요? 다중 서명/MPC 솔루션은 레이어 2 보안과 밀접한 관련이 있는 문제가 되었습니다.
Merlin은 브리징 솔루션으로 Cobo의 MPC 서비스를 선택하여 핫 월렛 및 콜드 지갑 격리와 같은 조치를 채택했습니다. 브리징 자산은 Cobo와 Merlin Chain이 공동으로 관리하며 모든 출금 행위는 Cobo와 Merlin Chain의 MPC 참가자가 공동으로 처리해야 합니다. 이는 본질적으로 기관의 신용 보증을 통해 인출 브리지의 신뢰성을 보장합니다. 물론 이는 현 단계에서 임시방편일 뿐이며, 프로젝트가 점차 개선됨에 따라 BitVM 및 사기 방지 프로토콜을 도입하여 출금 브릿지를 1/N 신뢰를 가정하는 "낙관적 브릿지"로 대체할 수 있습니다. 이를 구현하는 것은 더 어려울 것입니다(현재 거의 모든 공식 레이어 2 브리지는 다중 서명을 사용합니다).
전반적으로 Merlin은 BitVM 및 사기 방지 프로토콜을 도입하여 DAC 권한을 개방함으로써 DA 문제를 해결하기 위해 POS 기반 DAC, BitVM 기반 낙관적 ZK-Rollup 및 Cobo 기반 MPC 자산 보관 솔루션을 도입했다고 정리할 수 있습니다. 상태 전환 보안, 잘 알려진 자산 보관 플랫폼인 Cobo의 MPC 서비스를 도입하여 출금 브리지의 신뢰성을 보장합니다.
Lumoz 기반의 2단계 검증 ZKP 제출 솔루션
앞서 우리는 Merlin의 보안 모델을 정리하고 낙관적 ZK 롤업 개념을 도입했습니다. Merlin의 기술 로드맵에서는 분산형 Prover에 대해서도 언급됩니다. 우리 모두 알고 있듯이 Prover는 Sequencer에서 출시한 배치에 대한 ZKProof를 생성하는 역할을 담당합니다. 그러나 영지식 증명 생성 프로세스는 하드웨어 리소스를 매우 많이 소모합니다. 까다로운 문제.
ZK 증명 생성 속도를 높이기 위해서는 작업을 병렬화하고 분할하는 것이 가장 기본적인 작업입니다 . 소위 병렬화는 실제로 ZK 증명 생성 작업을 여러 부분으로 나누는 것을 의미하며, 이는 각각 다른 증명자에 의해 완료됩니다. 마지막으로 Aggregator는 여러 증명을 전체로 집계합니다.
ZK 증명 생성 프로세스의 속도를 높이기 위해 Merlin은 Lumoz의 Prover를 서비스 솔루션으로 채택할 예정입니다 . 이 솔루션은 실제로 많은 수의 하드웨어 장치를 모아 마이닝 풀을 형성한 다음 컴퓨팅 작업을 다른 장치에 할당하고 해당 인센티브는 POW 채굴과 다소 유사합니다.
이 분산형 증명자 솔루션에는 일반적으로 전방 실행 공격으로 알려진 공격 시나리오 유형이 있습니다. Aggregator인 Aggregator가 ZKP를 설정하고 보상을 받기 위해 ZKP를 전송한다고 가정합니다. 다른 애그리게이터들은 ZKP의 콘텐츠를 본 후 그가 ZKP를 먼저 생성했다고 주장하면서 동일한 콘텐츠를 그보다 먼저 게시했습니다.
아마도 모두가 생각하는 가장 본능적인 해결책은 각 Aggregator에 지정된 작업 번호를 할당하는 것입니다. 예를 들어 Aggregator A만 작업 1을 수행할 수 있고 다른 사람들은 작업 1을 완료하더라도 보상을 받을 수 없습니다. 하지만 이 접근 방식에는 문제가 있는데, 이는 단일 지점 위험에 저항할 수 없다는 것입니다. Aggregator A에 성능 오류가 발생하거나 연결이 끊어지면 작업 1이 중단되어 완료할 수 없습니다. 더욱이, 단일 기업에 작업을 할당하는 이러한 방식은 경쟁적 인센티브 메커니즘을 통해 생산 효율성을 향상시킬 수 없으며 좋은 접근 방식이 아닙니다.
Polygon zkEVM은 블로그에서 효율성 증명이라는 방법을 제안한 적이 있는데 , 이는 서로 다른 애그리게이터 간의 경쟁을 촉진하기 위해 경쟁 수단을 사용해야 하며, 인센티브는 선착순으로 할당되어야 한다고 지적했습니다. 첫 번째 - Aggregator를 체인에 제출하면 Proof가 보상될 수 있습니다. 물론 그는 MEV 선두주자 문제를 어떻게 해결할 것인지 언급하지 않았다.
Lumoz는 2단계 검증 ZK 증명 제출 방법을 채택합니다. Aggregator가 ZK 증명을 생성한 후 전체 콘텐츠를 먼저 보낼 필요가 없으며 ZKP 해시만 게시합니다. 즉, 해시(ZKP+Aggregator)를 게시합니다. 주소). 이런 방식으로 다른 사람이 해시 값을 보더라도 해당 ZKP 내용을 알 수 없으며 바로 앞서 나갈 수 없습니다.
누군가 단순히 해시 전체를 복사해서 먼저 게시한다면 해시에는 특정 수집자 X의 주소가 포함되어 있기 때문에 의미가 없습니다. 수집자 A가 해시를 먼저 게시하더라도 해시의 원본 이미지가 공개되면 모두가 여기에 포함된 집계자 주소는 A가 아니라 X입니다.
이러한 2단계 검증 ZKP 제출 방식을 통해 Merlin(Lumoz)은 ZKP 제출 프로세스에 존재하는 선행 문제를 해결함으로써 경쟁이 치열한 영지식 증명 생성 인센티브를 달성하고 ZKP 생성 속도를 높일 수 있습니다.
멀린의 유령: 다중 체인 상호 운용성
Merlin의 기술 로드맵에 따르면 Merlin과 다른 EVM 체인 간의 상호 운용성도 지원합니다 . 구현 경로는 기본적으로 이전 Zetachain 아이디어와 동일하며 다른 EVM 체인을 대상 체인으로 사용합니다. Merlin 노드가 사용자가 발행한 크로스 체인 상호 운용 요청을 감지한 후 대상 체인에서 후속 워크플로우를 트리거합니다.
예를 들어, Merlin 네트워크에 의해 제어되는 EOA 계정 은 사용자가 Merlin 체인에서 체인 간 상호 운용성 명령을 발행하면 Merlin 네트워크가 먼저 해당 내용을 구문 분석하고 대상에서 실행될 거래 데이터를 생성합니다. 체인을 구성한 후 Oracle Network는 해당 트랜잭션에 대해 MPC 서명 처리를 수행하고 해당 트랜잭션의 디지털 서명을 생성합니다. 이후 Merlin의 Relayer 노드는 Polygon에서 트랜잭션을 해제 하고 대상 체인의 EOA 계정에 있는 Merlin 자산을 통해 후속 작업을 완료합니다.
사용자가 요청한 작업이 완료되면 해당 자산은 대상 체인의 사용자 주소로 직접 전달되며 이론적으로는 Merlin 체인으로 직접 전송될 수도 있습니다. 이 솔루션에는 몇 가지 분명한 이점이 있습니다. 기존 자산이 크로스체인에 있을 때 크로스체인 브릿지 계약으로 인해 발생하는 처리 비용과 마모를 방지할 수 있으며 크로스체인 운영의 보안은 Merlin의 Oracle Network에 의해 직접 보장되며 다음과 같은 이점이 있습니다. 외부 인프라에 의존할 필요가 없습니다. 사용자가 Merlin Chain을 신뢰하는 한 이러한 크로스 체인 상호 운용성 동작은 문제가 없다고 가정할 수 있습니다.
요약하다
이 기사에서는 더 많은 사람들이 Merlin의 일반적인 작업 흐름을 이해하고 보안 모델을 보다 명확하게 이해하는 데 도움이 될 수 있다고 믿는 Merlin Chain의 일반적인 기술 솔루션에 대해 간략하게 설명합니다. 현재 비트코인 생태계가 본격화되고 있다는 점을 고려할 때, 우리는 이러한 기술 과학 대중화가 가치 있고 일반 대중에게 필요하다고 믿습니다. Merlin, bitLayer 및 B^Square와 같은 프로젝트에 대한 장기적인 후속 조치를 수행할 것입니다 . 앞으로는 기술적인 솔루션에 대한 더욱 심층적인 분석을 제공할 예정이니 계속 지켜봐 주시기 바랍니다!
