게시판

블록체인 확장의 차세대 개척지: ZK 롤업에 대한 심층 분석 -(2)

코인올백 2024. 5. 20. 23:45

ZK Rollup은 훌륭하지만 개인 정보 보호를 의미하지는 않습니다.

위에서 설명한 ZKP의 속성은 ZK 롤업에서 잘 활용됩니다. 검증인은 공급자로부터 받은 ZKP에서 원본 거래 데이터를 추론할 수 없지만 간결한 증거를 확인하면 공급자의 주장(즉, 새로운 L2 상태)을 효과적으로 확인할 수 있습니다. 즉, 현재 ZK 롤업이 영지식과 간결한 속성을 완전히 고수한다고 주장하는 것은 오해의 소지가 있습니다. 공급자와 유효성 검사기 간의 상호 작용에 초점을 맞추는 경우 이는 사실일 수 있지만 ZK 롤업에는 시퀀서, 공급자 및 롤업 노드와 같은 다른 구성 요소가 있습니다. 그렇다면 그들에게도 '영지식' 원칙이 보장되는 걸까요?

ZK 롤업에서 ZKP를 사용하여 완전한 개인 정보 보호를 달성하려는 과제는 ZK를 통해 일부 부분을 비공개로 설정하고 다른 부분은 공개로 유지하는 경우 발생할 수 있는 타협에서 비롯됩니다. ZK 롤업의 트랜잭션 수명 주기를 생각해 보세요. 트랜잭션이 사용자에서 시퀀서로 전송될 때 개인 정보 보호가 유지됩니까? 공급자의 경우는 어떻습니까? 아니면 L2 배치가 DA 레이어에 제출되면 개인 계정 정보의 개인 정보가 보호됩니까? 현재 이러한 상황 중 어느 것도 사실이 아닙니다.

그림 4: ZK 롤업의 개인정보 유출

출처: 프레스토 리서치

대부분의 주류 ZK 롤업에서 시퀀서 또는 제공자(또는 강력한 권한을 가진 기타 중앙 집중식 엔터티)는 이체 금액, 계정 잔액 업데이트, 계약 배포 및 실행을 포함한 거래 세부 정보를 명확하게 볼 수 있습니다. 간단한 예로 ZK 롤업 블록 브라우저를 방문하면 언급된 모든 세부 정보를 쉽게 관찰할 수 있습니다. 그뿐만 아니라 중앙 시퀀서가 어떤 이유로 서비스를 중단하고 다른 롤업 노드가 롤업 상태를 복구하려고 시도하는 상황을 생각해 보세요. DA 레이어(대부분의 경우 L1 이더리움)에서 공개적으로 공개한 L2 데이터에서 정보를 추출하고 L2 상태를 재구성합니다. 이 과정에서 DA 계층에 저장된 L2 트랜잭션을 재생할 수 있는 모든 노드는 각 사용자 계정의 상태에 대한 정보를 복구할 수 있습니다.

따라서 현재 ZK 롤업에서는 "제로 지식"이라는 용어가 단편화된 형태로 구현됩니다. 이것이 틀렸다고 볼 수는 없지만 "ZK는 지식이 전혀 없다는 의미는 완전한 프라이버시와 동일하다"는 일반적인 인식과 다르다는 것은 분명합니다. 현재 ZK 롤업의 참신함은 "제로 지식" 대신 "간결함" 속성을 활용하는 데 있습니다. 즉, 오프체인 트랜잭션을 실행하고 검증인을 위한 간결한 증거를 생성하여 재작업 없이 실행의 유효성을 빠르고 확장 가능하게 확인할 수 있다는 것입니다. -그들을 실행합니다.

이러한 이유로 Starknet과 같은 일부 ZK 롤업은 혼동을 피하기 위해 스스로를 "유효성 롤업"이라고 부르는 반면, Aztec과 같은 진정한 ZK 개인정보 보호를 보장하는 다른 ZK 롤업은 스스로를 ZK-ZK 롤업이라고 표시합니다.

ZK 롤업의 실용성에 대한 심층 분석

앞서 언급했듯이 대부분의 ZK 롤업은 ZK 개인 정보 보호를 완전히 구현하지 않습니다. 그렇다면 우리의 다음 목표는 무엇입니까? 롤업의 모든 부분에 ZK를 완전히 배포하여 완전한 거래 개인 정보 보호를 달성하려면? 사실 이것은 간단한 질문이 아니다. 기술을 더욱 성숙시키기 위해서는 상당한 기술적 진보가 필요하다는 점 외에도 ZK는 이념(예: 개인 거래의 불법 사용) 및 실용성(예: 정말 유용한가?) 측면에서 여전히 논란의 여지가 있는 문제를 안고 있습니다. 완전한 거래 프라이버시의 윤리적 문제를 논의하는 것은 이 기사의 범위를 벗어나는 점을 고려하여 블록체인 프로젝트에서 직면하는 ZK 롤업의 두 가지 실제 문제에 중점을 둘 것입니다.

포인트 1: ZKP 생성은 빠른 최종성을 위한 병목 현상이 될 수 있습니다.

먼저 ZK 롤업 자체의 실용성에 대해 논의해 보겠습니다. ZK 롤업의 가장 매력적인 판매 포인트는 ZKP 덕분에 거래의 "빠른 최종성"으로 인해 자산 인출 대기 시간이 줄어든다는 것입니다. 증가된 TPS와 낮은 거래 수수료는 추가적인 이점입니다. ZK 롤업의 특성을 가장 효과적으로 활용하는 분야는 게임 산업입니다. 게임 내 화폐의 입출금이 매우 빈번하여 매초 수많은 게임 내 거래가 발생하기 때문입니다.

하지만 ZK 롤업이 정말로 게임을 위한 최고의 기술 스택으로 간주될 수 있을까요? 이를 위해 ZK Rollups의 "빠른 최종성" 개념에 대해 더 깊이 생각해 볼 필요가 있습니다. 사용자가 ZK Rollup 기반 기술 스택에서 실행되는 Web3 게임을 즐기고 있다고 상상해 보십시오. 사용자는 게임 내 아이템을 게임 화폐로 교환하고 해당 자산을 게임에서 인출하려고 합니다.

자산을 출금하려면 게임 내 거래가 완료되어야 합니다. 이는 거래가 새로운 롤업 상태 커밋에 포함되어야 하고, 해당 ZKP가 L1에 제출되어야 하며, 거래가 되돌릴 수 없음을 보장하기 위해 L1 이더리움에서 증명이 마무리될 때까지 기다려야 함을 의미합니다. 이러한 모든 프로세스가 즉시 발생할 수 있다면 ZK Rollups가 종종 선전하는 "즉시 거래 확인"을 달성하여 사용자가 즉시 자산을 인출할 수 있습니다.

그러나 현실은 이와 거리가 멀다. L2beat에서 제공하는 다양한 ZK 롤업의 마무리 시간 통계에 따르면 zkSync Era는 평균 약 2시간, Linea는 3시간, Starknet은 평균 약 8시간이 소요됩니다. 이는 ZKP를 생성하는 데 시간이 걸리고, 거래 수수료를 줄이기 위해 더 많은 거래를 일괄(즉, 단일 증명)에 포함하려면 추가 시간이 걸리기 때문입니다. 즉, 증거 생성 및 제출 속도는 ZK 롤업의 빠른 마무리를 달성하는 데 잠재적인 병목 현상이 되어 Web3 게임의 사용자 경험을 저하시킬 수 있습니다.

그림 5: ZKP 생성은 ZK 롤업의 빠른 최종성을 위한 잠재적인 병목 현상이 될 수 있습니다.

출처: imgflip

반면에 Ronin(Pixel 및 Axie Infinity와 같은 Web3 게임을 지원)과 같은 게임에 최적화된 체인은 분산화와 보안을 희생하면서 초고속 최종성을 보장합니다. Ronin은 ZK 또는 롤업 기반 체인이 아닙니다. 이는 PoA(권한 증명) + DPoS(위임 지분 증명) 합의 알고리즘에 따라 실행되는 EVM 블록체인입니다. 위임된 지분 수를 기준으로 22명의 검증인을 선택하고, 이들은 PoA 방식(즉, 22명의 검증인 간의 투표 프로세스)으로 블록을 생성하고 검증합니다. 결과적으로 Ronin에서는 트랜잭션이 빠르게 완료되고 지연이 거의 없이 블록에 포함되며 검증 시간이 짧습니다. 실린 하드포크 이후에는 거래당 평균 6초만에 최종 완료가 완료됩니다. Ronin은 ZKP 없이도 이 모든 것을 달성합니다.

물론 로닌에도 단점이 있습니다. 중앙화된 검증인에 의해 관리되기 때문에 51% 공격의 위협에 상대적으로 더 취약합니다. 또한 이더리움을 결제 레이어로 사용하지 않기 때문에 이더리움의 보안을 상속받을 수 없습니다. 크로스체인 브리지 사용에는 보안 위험도 있습니다. 하지만 사용자의 관점에서 볼 때 사용자는 이러한 사항에 관심이 있습니까? 분산형 주문이 없는 현재 ZK 롤업에도 SPOF(단일 실패 지점) 문제가 있습니다. Ethereum은 트랜잭션 롤백 가능성을 줄이기 때문에 보증을 제공하지만 중앙 집중식 시퀀서나 검증기가 실패하면 ZK 롤업도 중지됩니다. ZK 롤업의 "ZK"는 실행 정확성의 유효성을 확인하는 데만 사용됩니다. 동일한 기능을 제공하지만 더 빠르고 저렴한 다른 프로젝트가 있는 경우 ZK 롤업은 더 이상 Web3 게임 사용자 및 개발자가 선호하는 기술 스택으로 간주되지 않을 수 있습니다.

포인트 2: 출판 상태의 차이는 양날의 검이다

또 다른 점은 ZK 롤업 프로토콜 구현의 실용성입니다. 그 중에서 여기서는 ZK 롤업에서 데이터 가용성을 보장하는 방법 중 하나인 상태 차이 게시에 중점을 둡니다(Dencun 업그레이드 잠금 해제: DA 레이어 확장의 보이지 않는 진실, 하재현, 24년 4월 12일 참조).

Rollups의 데이터 가용성을 이해하는 간단한 방법은 아마추어 등반가가 에베레스트 산 등정을 증명하고 문서화하는 것을 상상하는 것입니다. 이를 수행하는 가장 간단한 방법은 베이스캠프부터 정상까지 모든 단계를 비디오에 기록하는 것입니다. 비디오 파일이 클 수 있지만 누구나 등반가의 등정을 확인하고 녹화된 내용을 재생할 수 있습니다. 이 비유는 데이터 가용성을 보장하기 위해 원래의 거래 데이터 게시 방법과 비교할 수 있습니다. 시퀀서의 상태 커밋을 신뢰할 수 없기 때문에 낙관적 롤업은 개별 도전자가 올바른 실행을 재생하고 확인할 수 있도록 이 접근 방식을 따릅니다. ZK 롤업에서 Polygon zkEVM 및 Scroll은 이 접근 방식을 사용하여 원본 L2 트랜잭션 데이터를 L1에 압축된 형식으로 저장하므로 누구나 L2 트랜잭션을 재생하여 필요할 때 롤업 상태를 복원할 수 있습니다.

다시 아마추어 등반가의 예로 돌아가서, 유명 등반가가 아마추어 등반가와 함께 에베레스트를 등반하여 그 등반이 실제로 완료되었음을 세상에 증명하는 것도 또 다른 검증 방법이 될 수 있습니다. 등반은 신뢰할 수 있는 개인에 의해 확인되었으므로 등반가는 더 이상 기록 보관을 위해 모든 단계를 기록할 필요가 없습니다. 출발점과 정상에서 사진만 찍으면 다른 사람들은 등산가가 산 정상에 도달했다고 생각할 것입니다. 이 비유는 데이터 가용성을 보장하는 데 사용되는 상태 차이 방법을 반영합니다. ZK Rollup에서는 zkSync Era와 StarkNet이 이 접근 방식을 채택하여 L1에서 L2 트랜잭션이 실행되기 전과 후의 상태 차이만 저장하므로 누구나 초기 상태와의 상태 차이를 계산하여 필요할 때 Rollup의 상태를 복원할 수 있습니다.

그림 6: 원래 트랜잭션 게시와 상태 차이 게시

출처: 프레스토 리서치

이 상태 차이 방법은 중간 트랜잭션을 저장하는 단계를 줄여 L1의 저장 비용을 줄일 수 있기 때문에 원래의 트랜잭션 데이터 게시 방법보다 비용 효율적이라는 점은 의심할 여지가 없습니다. 이는 일반적으로 문제가 되지 않지만 여기에는 여전히 잠재적인 결함이 있습니다. 이 방법은 전체 L2 트랜잭션 기록의 복구를 허용하지 않으며 이는 일부 DApp에서 문제가 될 수 있습니다.

DeFi 대출 프로토콜인 컴파운드(Compound)가 상태 차이를 기반으로 하는 ZK 롤업 기술 스택 위에 구축되었다고 가정합니다. 이러한 프로토콜에서는 매초 공급 및 대출 비율을 계산하기 위해 완전한 거래 내역이 필요합니다. 하지만 ZK Rollup 시퀀서가 실패하면 다른 Rollup 노드가 최신 상태를 복원하려고 하면 어떻게 될까요? 상태를 복원할 수 있지만 모든 중간 트랜잭션이 아닌 배치 간의 스냅샷만 추적할 수 있기 때문에 이자율이 부정확하게 복원됩니다.

결론

이 기사의 주요 주장은 오늘날 대부분의 ZK 롤업에는 "ZK"가 없으며 DApp에는 ZKP 및 ZK 절차를 사용하는 것이 최선의 선택이 아닐 수 있는 곳이 많다는 것입니다. ZK 기술은 자체에는 아무런 문제가 없기 때문에 무죄라고 느낄 수도 있지만, 기술 발전을 활용하는 과정에서 DApp의 성능 저하를 가져올 수도 있습니다. 하지만 이것이 ZK 기술이 업계에 쓸모없다는 뜻은 아니다. ZKP와 ZK 롤업이 결국 성숙해지면 확실히 블록체인 트릴레마에 대한 더 나은 솔루션을 제공할 수 있습니다. 실제로 ZK 프라이버시를 유지하는 ZK 기반 프로젝트가 이미 존재하며, ZKP와 ZK 컨볼루션을 효과적으로 활용하는 다양한 유형의 DApp이 있습니다.

코인올백 트위터

https://twitter.com/coinall100kr

영희에게 코인 인증하고 코인올백 심화방 입장하기

https://open.kakao.com/me/Coinall100yh