[RollUp&zkSync Part 2] zkSync: zkRollup으로 빠르고 간편한 트랜잭션을 제공하는 Matter Labs의 L2 프로토콜

NARI
SKKRYPTO
Published in
8 min readNov 13, 2023

Writer: Kang Nahyun of SKKRYPTO (nariveshere@gmail.com)

INDEX

1. Ethereum Scalability Issues and Rollup

2. About Matter Labs

3. zkSync Lite (1.0)

4. zkSync Era (2.0)

5. Features: zkPorter and Account Abstraction

6. Process and Status

7. Advantages: For Users and For Developers

1. Ethereum Scalability Issues and zkRollup

A. Ethereum Scalability Issues

이더리움의 확장성 문제는 더 많은 마이닝 노드와 코어를 투입하더라도 트랜잭션의 처리 속도(TPS, Transactions Per Second)가 증가하지 않아 트랜잭션이 증가하는 경우 트랜잭션이 블록에 담기기까지의 대기시간이 길어지는 것을 말한다. 생태계가 확장될수록 늘어나는 사용자 수와 트랜잭션에 대응해야 하기 때문에, 확장성은 탈중앙성, 보안성과 함께 이더리움의 중요한 해결 과제이다.

B. Rollup

이더리움의 확장성을 향상시키기 위한 Rollup은 L1 체인 외부에서 트랜잭션을 실행하고, 그 결과값만 L1에 기록하는 것으로, 데이터 가용성의 검증방식에 따라 Optimistic Rollup과 ZK Rollup으로 나뉜다.

i. Optimistic Rollup

Optimistic Rollup은 모든 트랜잭션이 사실이라고 가정하며 진위확인 시에는 검증자가 L1에 올라간 모든 트랜잭션을 재실행해 값을 대조하는 사기증명 방식을 활용한다. 블록체인의 저장 공간을 많이 절약할 수는 없으며 트랜잭션 확정이나 L1으로의 암호화폐 전송에 시간이 걸린다는 단점이 있으나, Rollup 내부에서 스마트 컨트랙트를 구동할 수 있다.

ii. zk Rollup

zk(Zero Knowledge) Rollup은 트랜잭션을 L1에 보낼 때 영지식 증명 방식인 zk-SNARK를 제공하고, 전송 전에 트랜잭션의 유효성을 확인하기 때문에 Optimistic Rollup보다 데이터의 크기를 더 많이 줄일 수 있다. Zk Rollup을 채택한 대표적인 프로젝트로는 zkSync가 있다.

2. About Matter Labs

zkSync를 출시한 Matter Labs는 2018년 Alexander Vlasov와 Alex Gluchowski가 공동 창립한 블록체인 테크 기업이다. 독일 베를린에 거점을 두고 있으며, 개인의 경제 주권 확립을 위한 암호화폐의 대중화에 힘쓰고 있다.

3. zkSync Lite (1.0)

Matter Labs가 개발한 zkSync의 초기 버전은 zkSync Lite로 불린다. 이는 이더리움 확장성 솔루션인 Plasma에 SNARK(zero-knowledge Succinct Non-interactive Argument of Knowledge)를 채택한 프로덕트로, 2019년 12월 공개되어 2020년 6월에 메인넷에 출시되었다. Lite 버전에서 범용적 스마트 컨트랙트는 지원하지 않으며, 결제와 같은 단순한 기능만 구현되었다. ETH와 ERC20 토큰의 즉시 전송을 지원해 트랜잭션 완결까지 10분이 소요되며, L1과 동일한 지갑 주소로 거래가 가능하지만 수수료는 기존의 1/100에 불과하다는 장점이 있다.

4. zkSync Era (2.0)

zkSync Lite의 후속으로 개발된 zkSync Era는 2022년 2월 테스트넷이 공개되었으며, 2023년 3월 메인넷이 출시되었다. Era는 Solidity, Vyper 언어와 호환되는 최초의 zkEVM이며, 결제 기능만 지원되었던 zkSync Lite와 달리 범용적 스마트컨트랙트를 구현할 수 있다. 현재는 zkSync 2.0 프로토콜의 분산화를 위한 개발자 도구, CLI와 SDK를 개발 중이다.

5. Features

A. zkPorter

StarkWare의 Volition 방법론에 따라 개발된 zkPorter는 zkSync 2.0에서 도입된 기술로, 블록체인 사용성을 개선하고 수수료를 크게 줄일 수 있다. 이 기술은 L2 상태를 zkRollup(온체인 데이터)와 zkPorter(오프체인 데이터)로 나누는데, 두 부분은 서로 상호작용 가능하다. zkPorter를 활용하면 사용자 경험을 유지한 채 수수료는 100배 이상 감소한다. Guardians라고 불리는 zkSync 토큰 홀더는 zkPorter 계정의 데이터 가용성을 보장하며, 이를 통해 데이터 가용성에 대한 암호경제학적 보증을 제공한다.

B. Account Abstraction

계정 추상화(Account Abstraction)는 블록체인에서 계정의 역할과 기능을 확장하고 다양한 기능을 활용 가능하게 한다. 블록체인 계정은 유형에 따라 외부 계정(EOA, Externally Owned Accounts)과 계약 계정(Contract Account)으로 나뉘는데, 개인이나 조직의 지갑 주소를 나타내는 외부 계정은 자산을 보유하고 전송하는 데 사용되며, 트랜잭션을 생성하고 서명하는 데 필요한 개인 키를 소유한다. 계약 계정은 스마트 컨트랙트를 의미하며, 스마트 컨트랙트는 특정 규칙과 조건에 따라 자산을 관리하고 다양한 작업을 수행할 수 있다. 계정 추상화는 개인키가 있고 트랜잭션 실행이 가능한 외부 계정과 트랜잭션 실행은 불가능하지만 프로그래밍이 가능한 계약 계정을 합친 것을 의미하며, 이를 통해 여러 거래를 일괄 처리하거나 자동 결제를 구현할 수 있다.

6. Process and Status

다음은 zkSync의 거래 과정 및 단계별 상태이다.

A. Process

i. 사용자가 트랜잭션 작업을 생성한다.

ii. 연산자는 이 요청을 처리한 후 롤업 연산을 생성하여 블록에 추가한다.

iii. 블록이 완성되면, 운영자는 블록을 Block Commitment으로 zkSync 스마트 계약에 제출한다. 일부 롤업 연산들의 로직의 일부는 스마트 컨트랙트에 의해 검증된다.

iv. 블록에 대한 증명은 zkSync 스마트 컨트랙트에 Block Verification으로 제출된다. 검증에 성공하면 새로운 상태는 최종 상태로 간주된다.

B. Status

i. Pending: 오퍼레이터에게 거래가 접수되었으나 아직 처리되지 않은 상태

ii. Processed: 거래가 오퍼레이터에 의해 처리되어 다음 블록에 포함될 예정인 상태

iii. Commited: 블록의 거래 데이터가 이더리움에 기록된 상태, 유효한 방식으로 실행되었음을

iv. 증명하지는 못하나 블록 데이터의 가용성을 보장함.

v. Finalized: 거래에 대한 SNARK 유효성 증명이 스마트 컨트랙트에 의해 제출되고 확인된 상태. Finalized 단계까지는 수 시간이 소요됨.

7. Advantages

zkSync의 사용자, 개발자에의 장점은 다음과 같다.

A. For Users

i. 거래가 L1에서 즉시 확인되며 빠른 처리가 가능하다.

ii. 거래 수수료가 매우 낮다.

iii. 거래 수수수료를 USDC 등의 ERC20 토큰으로 지불할 수 있다.

iv. Metamask 등의 기존 이더리움 기반 지갑을 지원한다.

B. For Developers

i. Solidity, Vyper로 스마트 컨트랙트를 작성해 실행 가능하다.

ii. 높은 호환성으로 기존 프로젝트를 손쉽게 옮겨서 활용할 수 있다.

iii. Hardhat 등의 기존 프레임워크를 사용할 수 있다.

iv. 로컬 테스트를 위한 다양한 도구가 지원된다.

8. Conclusion

Matter Labs가 개발한 zkRollup 프로토콜은 지난 3월 2.0 버전이 출시된 이후에도 지속적으로 새로운 기능을 개발하고 있습니다. zkSync는 zkPorter, Account Abstraction 등을 접목하여 L1에서의 사용자 경험을 유지한 채 빠른 트랜잭션과 낮은 수수료를 제공할 수 있으며, 개발자도 높은 호환성과 다양한 개발자 도구가 제공되는 환경에서 빌드할 수 있습니다. 주목할 만한 L2 프로젝트인 zkSync에서는 관련 에어드랍 이벤트도 종종 진행되고 있습니다. zkSync에 더 많은 유저가 유입되어 생태계가 지속적으로 성장하기를 기대합니다!

--

--