대화 Matter Labs 팀: zkSync 2.0이 L2 트랙에서 어떻게 두드러질 수 있을까?
원문 제목:《메타버스의 길丨 zkSync 2.0 AMA:이더리움 Layer 2 트랙에서 두각을 나타내는 방법은?》
인터뷰 대상자:Matter Labs 팀
작성자:Bin Lynn
최근 이더리움 Layer 2 프로젝트 Matter Labs는 zkSync 2.0 테스트넷에서 첫 번째 Solidity dApp을 마이그레이션했으며, 그 기반 zkEVM 덕분에 이 ZK Rollup 2층 네트워크는 EVM과 완전히 호환됩니다.
이 새로운 Layer 2에 대해 Matter Labs 공식은 r/ethereum에서 AMA를 진행했으며, 아래는 DeFi의 길이 정리한 활동 내용 발췌입니다:
Q1 :Alex G는 Twitter에서 Starkware와 zkSync가 서로 다른 목표 사용자 그룹을 위해 구축되었다고 언급했습니다. 이에 대해 자세히 설명해 주실 수 있나요?
Alex:물론입니다. 저는 Matter Labs를 대표하여 발언할 수 있지만, 이것은 제 강한 의견입니다.
zkSync의 비전은 초기 암호화 운동의 정신과 철학에 깊이 뿌리를 두고 있습니다. 이는 암호 해커, 주권 개인, 사토시, 비탈릭 등의 사상에 기반하고 있습니다. 간단히 말해, 우리는 자유와 암호학이 가져오는 강력한 새로운 형태의 회복력을 소중히 여깁니다. 보시다시피, 암호학은 오늘날 누구나 사용할 수 있는 유일한 기술로, 가장 강력한 적(예: 강력한 전체주의 정권)에 저항할 수 있습니다. 암호학과 탈중앙화가 결합되어 블록체인 커뮤니티가 현상에 도전하고(궁극적으로 변화시킬 수 있는) 능력을 부여합니다. 탈중앙화와 저항성이 없다면, 오늘날 당신이 가진 것은 은행일 것입니다. 이 두 가지 속성이 블록체인에 필수적이지 않다고 생각한다면, "e-gold"와 "liberty reserve"를 구글에서 검색해 보시기 바랍니다.
이것은 두 회사 간의 주요 차이를 가져옵니다. zkSync는 "탈중앙화"와 "회복력 최적화"를 위한 개방형 프로토콜을 구축하고 있습니다. 우리는 대체 가능성이 있기를 원합니다: Matter Labs가 사라지거나 손상되더라도 네트워크는 번창해야 합니다. 우리의 주요 목표 청중은 1) 블록체인을 사용하여 금융 주권을 실현하는 사람들, 그리고 2) 이러한 사람들을 위해 구축된 탈중앙화 프로토콜입니다.
반면 StarkWare는 다소 독점적인 확장 솔루션을 구축하고 있으며, 이 솔루션은 그들의 IP의 성능과 방어 능력을 최적화하고 있지만 기업 수준의 지원과 SLA를 가지고 있습니다. 기술 및 서비스 제공업체로서 그들은 필수적인 위치를 유지하기 위해 행동하고 있습니다. 그들의 주요 목표 청중은 블록체인 위에 구축된 중앙화된 회사(dydx, Immutable, Sorre, TikTok)인 것 같습니다.
이러한 차이는 설계 결정의 중대한 차이를 초래합니다:
1、소프트웨어 라이센스:
zkSync는 관대하게 허가된 라이센스(Apache/MIT)를 가지고 있어, Matter Labs가 올바른 일을 하지 못할 경우 누구나 자유롭게 네트워크를 포크할 수 있습니다.
StarkWare는 Polaris를 제안했으며, 이는 StarkWare 자회사 외의 누구도 STARK 증명기를 실행하지 못하도록 합니다.
2、개발자 스택:
zkSync는 완전한 EVM 호환성에 집중하고 있습니다------우리는 네트워크가 모든 면에서 커뮤니티 소유가 되기를 원하며, 새로운 언어로 프로토콜을 다시 작성하고 검토하는 서비스 기관 역할을 하고 싶지 않습니다.
StarkWare는 성능을 위해 최적화된 새로운 도메인 특화 언어인 Cairo를 홍보하고 있으며, 이는 후방 호환성보다는 성능에 유리합니다.
3、업그레이드 가능성:
zkSync 1.0은 출시 첫날부터 강제 시간 잠금이 있는 업그레이드 메커니즘을 가지고 있었으며(후에 보안 위원회 메커니즘으로 확장됨), 우리는 취약점을 수정할 수 없는 위험을 인정하며, 우리는 이 방법을 선호합니다. zkSync 2.0은 이러한 접근 방식을 따를 것입니다.
StarkEx는 업그레이드를 실행하기 전에 작업을 동결할 수 있는 메커니즘을 가지고 있으며, 이는 최소한 초기 단계에서 시간 잠금이 없는 업그레이드 메커니즘입니다. 그들의 초점은 명백히 외부 공격자에 대한 보안이며, StarkWare 자체에 대한 의존성을 줄이는 것이 아닙니다.
4、체인 외 데이터 가용성:
ZKSync 2.0은 zkPorter를 포함하고 있으며, 이는 탈중앙화 최적화를 위한 체인 외 데이터 가용성 솔루션입니다. 설계 방식은 전체 노드가 기존의 이더리움 킬러보다 두 배 더 많아지며, 활성도에 대한 암호 경제학적 인센티브를 제공합니다.
StarkWare는 데이터 가용성 위원회(Data Availability Committee)에 베팅하고 있으며, 이는 소수의 데이터 저장자가 자신의 명성에 의존하는 구조입니다.
보시다시피, 이러한 차이는 우리의 가치관과 철학의 차이에서 비롯됩니다. 규제 압력이 증가함에 따라, 우리는 더 많은 문제가 발생하는 것을 보게 될 것이라고 생각합니다(가장 두드러진 것은 KYC, AML, 프라이버시 및 암호화 커뮤니티와 국가 간의 다른 긴장 분야에서 발생할 것입니다).
Q2: zkPorter가 동결되면 스마트 계약의 자금은 어떻게 되나요? 자동으로 철회되나요? 그렇지 않다면, 이는 Rollup 사용자에게 어떤 영향을 미칠까요? 예를 들어, Uniswap에서 ETH/DAI가 있고, Rollup 계정이 700만 달러를 기여하고, zkPorter 계정이 300만 달러를 기여하고 있습니다. zkPorter가 동결되면 무엇이 발생하나요, 특히 Rollup 사용자 관점에서?
Stan:일반적으로, 이는 Rollup 사용자에게 큰 변화가 없을 것입니다. 유동성은 계약에 남아 있으며, 정상적으로 운영됩니다.
추가 질문:zkPorter가 동결되면 zkPorter 계정이 제공한 유동성은 어떻게 정상적으로 운영될 수 있나요? 저에게는 안전하지 않은 것처럼 보입니다.
Stan:zkPorter 동결은 최악의 경우 zkPorter 계정이 스마트 계약에서 유동성을 인출할 수 없음을 의미합니다. 왜 이것이 안전하지 않을 수 있다고 생각하시나요? 계약의 전역 저장소, 즉 ERC-20 잔액은 여전히 Rollup에 저장되어 있습니다.
추가 질문:이것은 자금을 동결하는 것보다 더 나쁜 상황일 수 있습니다. 저는 zkPorter 상태가 동결된다는 것이 문자 그대로의 의미라고 생각했지만------실제로는 여기서 zkPorter를 동결하지 않는 것입니다. 단지 자금이 스마트 계약에 있지 않다는 것------이는 스마트 계약 플랫폼의 본래 목적에 반하는 것입니다.
제가 모든 것을 오해하지 않는 한 ------사용자가 zkPorter가 동결될 때 청산당하고 그들이 완전히 무력하다면, 이는 나쁜 사용자 경험이 될 것입니다. 더 큰 문제는 이것이 공격 벡터를 열어주며, 여기서 정렬자와 zkPorter 검증자가 결탁하여 강제 청산 및 기타 MEV 시나리오를 발생시킬 수 있다는 것입니다------이는 그것을 사이드체인만큼 안전하지 않게 만들며, 특정 MEV 사례에서는 더 나쁠 수 있습니다. 저는 zkSync 2.0이 Rollup이 동결된 경우에도 사용자가 스마트 계약에서 자금을 인출할 수 있는 메커니즘을 가지고 있다는 것을 알고 있으며, StarkWare도 유사한 보호적 인출 솔루션을 가지고 있습니다. 그렇다면 왜 zkPorter에 대해 사용자를 보호하기 위한 유사한 것을 구현하지 않았나요?
Stan:이렇게 포괄적으로 답변해 주셔서 감사합니다! 우리 팀은 이러한 잠재적 문제를 인식하고 있으며, 불행히도 모든 세부 사항을 제공할 수는 없지만, 우리는 동결이 시스템에 미치는 영향을 최소화하기 위해 노력하고 있습니다.
동결된 자금에 관해서는, 계약에 따라 다르며, 현재 Uniswap 이더리움 계약은 단일 샤드를 지원하므로, 만약 그 코드가 zkSync로 변경 없이 이식된다면, Rollup 시에만 잔액이 저장됩니다. 따라서 Porter에서 오는 사용자가 계약에 유동성을 제공할 때마다 그들은 자금을 계약의 Rollup 잔액으로 전송하게 됩니다. 이러한 자금은 모든 Rollup 자금과 마찬가지로 L1에서처럼 안전해야 합니다. 제가 이미 말씀드린 것처럼, 우리는 이러한 상황을 우아하게 처리하기 위해 노력하고 있습니다. 테스트넷 버전은 더 많은 세부 정보를 제공할 것입니다 :)
Q3: 이더리움 메인넷에서 실행되는 계약을 zkSync에 배포하는 과정은 얼마나 복잡한가요? 배포된 코드는 완전히 동일한가요?
Angela:네, Solidity 스마트 계약의 경우: 대부분의 DeFi 및 NFT 프로젝트는 코드 변경 없이 작동할 것입니다. 그러나 첫 번째 버전에서는 컴파일러가 SHA256 및 Keccak256 호출을 회로 친화적인 해시 함수로 자동으로 대체합니다. 현재 ecrecover 및 암호학적 프리미티브와 같은 다른 몇 가지 암호학적 원리는 지원되지 않습니다.
UI에 관해서는: 우리는 Web3 API 및 Ethers SDK를 통해 스마트 계약 및 zkSync 네트워크와 완전히 상호작용할 수 있으며, 읽기 요청의 경우, 모든 언어의 웹3 호환 프레임워크가 즉시 사용할 수 있으며 추가 선택적 zkSync L2 특정 기능이 있습니다. 쓰기 요청(거래 전송)의 경우: L1과 L2 간의 근본적인 차이로 인해, 추가 코드를 작성해야 합니다(예: zkSync는 어떤 토큰으로도 수수료를 지불할 수 있도록 지원하므로, 거래를 전송하는 것은 수수료를 지불할 토큰을 선택하는 것을 포함합니다).
그래서, 네! 최소한의 변경으로 현재의 프론트엔드를 재사용할 수 있습니다(거래 전송이 다르다는 것을 제외하고).
Q4: zkEVM 아키텍처에서 가장 긴급한 중앙화 지점은 무엇이며(예: 정렬자 또는 동등한 것), 이러한 분야에서 탈중앙화를 구현할 계획은 무엇인가요?
Angela:zkSync 2.0의 탈중앙화는 3가지 사항에 주목해야 합니다:
1、프로토콜의 점진적 탈중앙화
대부분의 Rollup 프로젝트와 마찬가지로, 우리는 혁신, 빠른 반복 및 취약점 수정을 위해 점진적 탈중앙화를 선택했습니다. zkSync는 기능 범위가 안정될 때까지 업그레이드 가능성을 유지하며, 이후에는 불변하게 됩니다. 그러나 탈중앙화/보안성과 반응성/업그레이드 가능성 간의 이상적인 균형을 이루기 위한 두 가지 메커니즘이 있습니다.
A) 신뢰 최소화 업그레이드 가능성:
zkSync 스마트 계약의 업그레이드는 zkSync 거버넌스에 의해 시작될 수 있으며, 4주 시간 잠금 기간이 있습니다. 거버넌스가 손상되면, 시간 잠금은 사용자가 우리의 우선 대기열/긴급 철회 메커니즘을 통해 선택적으로 탈퇴할 시간을 제공합니다.
B) 보안 위원회:
취약점/해킹 사건에 대응하기 위해, 우리는 15명의 존경받는 이더리움 커뮤니티 구성원으로 구성된 보안 위원회를 설립했으며, 그 권한은 4주 시간 잠금 통지 기간을 단축하는 것에 한정됩니다. (참고: 이 15명의 위원회 구성원에는 Aave 창립 팀, Itamar Lesuisse (Argent), Mike McDonald (Balancer), James Prestwich (cLabs), Michael Egorov (Curve), Jack Baumruk (Dekrypt), Haseeb Qureshi (Dragonfly), Justin Drake (이더리움 재단), Stefan George (Gnosis), Baek Kim (Hashed), Chris Burniske (Placeholder), Nick Grossman (USV), Will Harborne (ZK Validator), Sergej Kunz (1inch) 및 Lasse Clausen (1kx)이 포함됩니다.)
이 위원회는 스마트 계약에 의해 실행되며, 규칙은 다음과 같습니다:
8/15 서명이 있으면 시간 잠금을 2주로 단축할 수 있습니다;
10/15 서명이 있으면 시간 잠금을 1주로 단축할 수 있습니다;
12/15 서명이 있으면 시간 잠금을 3일로 단축할 수 있습니다;
최소 3일의 시간 잠금 기간은 최악의 상황을 방지합니다.
2、정렬자(Sequencer)
초기에는 승인된 정렬자만 zkSync L1 스마트 계약에 상태 전환을 제출할 수 있습니다. 우리는 일부 선택/전환 정렬자 메커니즘을 가질 수 있습니다. 그러나 궁극적으로 우리는 여러 검증자가 PoS 합의로 보호하는 집단 정렬자로 전환할 것입니다. 사용자는 정렬자에게 안전성을 보장받지 않습니다. 우리의 zkRollup에는 사용자를 정렬자의 검열로부터 보호하기 위한 우선 대기열/긴급 철회 메커니즘이 있습니다: 정렬자가 악의적이거나 실패하더라도, 사용자는 항상 zkSync에서 탈퇴할 수 있습니다.
3.zkPorter
zkPorter 사용자는 1-3센트의 고정 수수료로 거래할 수 있습니다. 이는 데이터 가용성(상태 재구성에 필요한 기본 거래 데이터)을 이더리움이 아닌 체인 외부에 두어 달성됩니다. 데이터 가용성은 zkSync 토큰 스테이커가 지분 증명(PoS)을 사용하여 보호합니다. zkPorter의 보안성은 다른 모든 L1 또는 사이드체인보다 엄격하지만, 최악의 경우 악의적인 행위자가 스테이킹된 정렬자와 총 지분의 2/3 이상을 제어하여 유효한 상태 전환을 서명할 수 있지만 데이터를 보유하여 상태를 동결할 수 있습니다. 이는 스테이킹된 zkPorter 사용자와 공격자를 동결할 수 있습니다.
가능한 한 zkPorter를 탈중앙화하기 위해, zkSync 토큰 공급의 2/3는 커뮤니티를 위해 남겨두고 있습니다.
Q5: 시장에 이렇게 많은 확장 솔루션이 있는데, 일반적으로 주장하는 "더 빠르고, 더 저렴하고, 더 안전하다" 외에 무엇이 여러분을 차별화하나요?
Lyova : zkSync 2.0은 zkPorter를 갖추고 있으며, 이는 체인 외 데이터 가용성을 갖춘 원활하게 상호 운용 가능한 초저비용 샤드입니다. 여기에서 모든 관련 정보를 읽을 수 있습니다.
또한, zkSync에서는 어떤 유동 토큰으로도 수수료를 지불할 수 있습니다------ETH나 MATIC과 같은 맞춤형 토큰을 구매할 필요가 없습니다.
P.S. "우리가 더 빠르고, 더 저렴하며, 더 안전하다"는 주장에 대해서는 l2beat와 l2fees를 참조할 수 있습니다.
Q6: zkSync의 다음 단계는 무엇인가요? 서로 다른 L2 및 다른 블록체인 환경 간의 상호 운용성을 높일 계획이 있나요?
Angela:zkSync의 다음 단계에 대해 우리는 구축해야 할 많은 것들이 있습니다!
개발자 도구: 아시다시피, 우리는 장기적인 접근 방식을 선택하고 컴파일러에 LLVM을 사용하고 있으며, 이는 디버거, 링커, 어셈블러, 역어셈블러 및 바이너리 유틸리티를 고려하도록 강요했습니다.
또한, x86 또는 arm 어셈블리를 작성한 경험이 있는 사람은 누구나 우리의 VM을 위해 코드를 쉽게 작성할 수 있습니다.
더 많은 스마트 계약 언어: LLVM은 또한 우리와 다른 팀이 언어 프론트를 쉽게 구축할 수 있도록 합니다, 예를 들어 Rust.
기능이 더 완전하고 효율적인 zkEVM: 첫 번째 버전에서 SHA256 및 Keccak256 호출은 컴파일러에 의해 자동으로 회로 친화적인 해시 함수로 대체되며, ecrecover 및 암호학적 프리미티브는 지원되지 않습니다. 물론, 우리의 다음 단계는 이를 효과적으로 지원하는 것입니다! 우리는 쓰기 시 복사(copy-on-write) 확장을 구현할 계획입니다.
UX/DevX 개선: 우리는 ETH 외의 다른 토큰으로 수수료를 지불하는 방법을 구현했으며, 계정 추상화를 구현하고 있으며, 더 많은 지원이 올 것입니다!
마지막으로, 암호학은 블록체인 세계에서 믿을 수 없는 도구로 입증되었습니다. 제로 지식 증명은 확장성과 프라이버시를 촉진하고 있으며, 이는 공공 무허가 블록체인에서 가장 중요한 두 가지 문제입니다. Matter Labs는 암호학과 수학을 사용하여 문제를 해결하는 데 열정을 가진 엔지니어 팀이며, 우리는 계속 그렇게 할 것입니다! 흥미로운 응용 프로그램 중 하나는 MEV를 제거하기 위해 시간 잠금 암호화를 구현하는 것입니다.
서로 다른 L2 및 다른 블록체인 환경 간의 상호 운용성 문제에 대해서는, 우리는 주로 zkSync 구축에 집중하고 있으며, zkSync와 다른 네트워크 간의 이동 문제는 주로 Optics, Connext, Hop 등의 브리지 솔루션이 해결합니다.
Q7: 왜 SNARKs를 선택했나요, STARKs가 아닌? 미래에 STARKs로 마이그레이션하는 것이 너무 어려울까요? 계약 규모에 제한이 있나요?
Lyova: SNARKs를 선택한 이유 중 하나는 데이터 크기가 작아 증명이 더 저렴하며, O(1) 공간만 차지하기 때문입니다. SNARKs는 재귀적으로 쉽게 수행할 수 있어 검증자에게 더 많은 계산량을 절약합니다. 또한, zkSync는 PLONK 스킴을 사용하고 있으며, 다른 SNARKs와 달리 하나의 일반적인 신뢰 설정만 필요하므로, 매번 회로를 업데이트할 때 "유독 폐기물"을 생성할 필요가 없습니다. 궁금하시다면 여기를 확인해 보세요! 우리는 미래에 STARKs로 마이그레이션할 계획이 없습니다.
L2에서 배포된 계약은 어떤 식으로든 L1에 게시되어야 합니다(현재 우리는 이렇게 하고 있습니다), "우선 모드" 동안 자금이 올바르게 실행되고 인출되도록 보장하기 위해서입니다. 이는 검열이 발생할 가능성이 낮은 상황에서 발생합니다. 이것이 L1 블록 가스 제한이 어떤 크기 제한을 부과하는 이유입니다.
Q8: 메인넷이 출시된 후, Matter Labs는 어떻게 수익을 창출하나요?
Angela:이더리움과 같은 방식으로, 초기 토큰 공급의 1/3은 팀과 투자자에게, 2/3는 커뮤니티에 속하며, zkSync 토큰은 zkSync 네트워크의 수수료 토큰입니다(우리는 다른 토큰으로 거래 수수료를 지불하는 것을 지원하지만, 이는 백그라운드에서 zkSync 토큰으로 교환됩니다).