플라즈마 + zk-SNARKs: 이더리움 확장성의 새로운 아이디어?
저자: dt, DODO Research; 0xNing0x, EMC Fund 선임 연구원
지난 주 이더리움 창립자 비탈릭(이하 기사에서 V 신으로 언급)은 트위터에 최신 기사 "EVM 유효성 검증을 위한 Exit games: Plasma의 귀환"을 발표했습니다. 이 글은 Plasma 확장 기술에 대한 소개에 중점을 두고 있으며, 현재 점점 소외되고 있는 Plasma 확장 솔루션과 ZK 영지식 증명의 결합을 유도하려는 의도를 가지고 있습니다. 이 글이 발표되자 Plasma 기술과 관련된 많은 프로젝트가 즉시 급등하였고, Rollup에 의해 대체되어 점차 잊혀졌던 이 기술이 다시 이더리움 확장 경쟁에 돌아오게 되었습니다.
이번 주의 CryptoSnap에서는 DODO Research X NingNing (@0xNing0x)이 가장 간단하고 이해하기 쉬운 방식으로 Plasma를 설명하고 V 신의 최신 기사가 무엇을 표현하고 있는지 설명합니다!
Plasma란 무엇인가?
확장성 문제는 블록체인 세계의 개발자들이 중점적으로 연구하는 프로젝트입니다. 탈중앙화된 세계 컴퓨터의 목표를 달성하기 위해 저렴하고 빠른 블록체인을 구축하는 것은 필수적입니다. 따라서 이더리움 메인넷을 중심으로 다양한 확장 솔루션이 등장했으며, Plasma는 이더리움 확장 솔루션의 주류였습니다.
Plasma는 간단히 말해 이더리움 메인넷 위에 체인을 구축하는 것으로 이해할 수 있으며, 스마트 계약을 통해 메인넷과 Plasma 체인 간의 자금 접근 및 상호작용을 제어합니다. 사이드체인(BNB 체인, Gnosis 체인)과는 달리 Plasma 체인은 정기적으로 체인 상의 최종 상태를 이더리움 메인넷으로 되돌려 보내야 하며, Rollup 기술과는 달리 Plasma 체인은 전체 체인 거래 데이터를 되돌려 보내지 않고, 오직 머클 트리의 루트, 즉 Plasma 체인의 상태만을 되돌려 보냅니다.
출처: https://learnblockchain.cn/2018/10/20/plasma-framework
Exit Game 안전 "탈출 게임" 메커니즘
계산이 메인넷에서 이루어지지 않기 때문에 Plasma 체인은 전체 네트워크의 확장성을 크게 향상시킬 수 있으며, 악의적인 행위를 방지할 수 있는 상대적으로 안전한 검증 메커니즘을 가지고 있습니다. 안전성에 대해 이야기할 때 V 신이 제목에서 언급한 "Exit game", 즉 Plasma 체인의 안전 "탈출 게임" 메커니즘을 언급해야 합니다.
Plasma 프레임워크의 설계에서 안전성은 그 탈출 메커니즘에 의해 보호됩니다. 사용자가 메인넷으로 돌아가고 싶거나 Plasma 체인에서 공격이 발생했다고 생각할 때, 사용자는 메인넷 체인 상의 Plasma 계약에 "탈출"을 요청하고 증명을 제공할 수 있습니다. 만약 7일의 도전 기간 내에 도전자가 반증을 제기하지 않으면, 사용자는 메인넷에서 자산을 안전하게 회수할 수 있습니다. 반대로, 도전이 성공하면 "탈출"이 실패하게 되고, 악의적인 사용자는 상대방에게 벌금을 지불해야 합니다.
일반적인 공격 행위는 다음 세 가지입니다:
- 거래 후 즉시 탈출(Not latest owner): 이 공격은 사용자가 송금 거래를 보낸 후 도전 기간 내에 즉시 자산을 탈출하는 것을 의미합니다. 이는 무효입니다. 최신 자산 소유자는 거래의 수신자여야 하며, 네트워크는 이 탈출을 도전하여 자산이 다른 사람에게 이전되었음을 증명할 수 있습니다.
- 이중 지출 공격(Double spend): 이중 지출 공격은 동일한 자산이 두 번 이상 불법적으로 사용되는 것을 의미합니다. 예를 들어, 앨리스가 밥에게 1개의 토큰을 송금한 후, 앨리스가 찰리에게 동일한 토큰을 다시 송금하는 경우입니다. 네트워크는 이 토큰이 이중으로 사용되었음을 감지할 수 있으므로, 이 불법 송금을 도전할 수 있습니다.
- 불법 거래 이력(Invalid history): 이는 자산 거래 이력에서 불법적인 상태 전환이 감지되었음을 의미합니다. 예를 들어, 대응되는 소비가 없는 거래 출력이 존재하는 경우입니다. 사용자는 해당 도전에 대응하기 위해 적절한 소비 증명을 제공할 수 있습니다.
Plasma Cash
이어 V 신은 이 글에서 Plasma 프레임워크를 사용하는 프로젝트인 Plasma Cash를 소개했습니다. Plasma Cash에서 사용자가 예치한 각 토큰은 하나의 NFT로 간주되며, 각 NFT는 거래 이력을 가지고 있으며 이를 머클 트리 형태로 기록합니다. 그러나 NFT의 독특한 불가분성으로 인해 Plasma Cash의 사용 사례는 제한적이며 특정 송금 용도로만 사용될 수 있습니다. 이때 UTXO 모델로 개선된 버전이 등장하여, UTXO 장부 형태를 통해 Plasma Cash의 원래 NFT 송금 설계에서 분할할 수 없는 문제를 해결할 수 있게 되었습니다. 이는 재지불 분야의 발전에 도움이 되지만 동시에 스마트 계약과의 상호작용을 어렵게 만듭니다.
출처: https://vitalik.ca/general/2023/11/14/neoplasma.html
Plasma 기술 병목 현상
현재 Plasma의 기술 병목 현상은 EVM을 구현하기 어렵다는 것입니다. EVM 계약 내의 많은 상태 객체가 명확한 "소유자(Owner)"를 가지고 있지 않기 때문에, 이는 Plasma의 안전 모델과 모순됩니다. Plasma 탈출 메커니즘은 각 상태 객체가 명확한 소유자를 가져야 하며, 소유자는 이 상태 객체의 데이터를 모니터링하고 필요할 경우 자산 안전을 위해 탈출해야 할 책임이 있습니다. 그러나 EVM 계약 내에는 많은 상태 객체가 명확한 소유자를 가지고 있지 않습니다. 예를 들어, Uniswap의 유동성 풀이나 MakerDAO CDP 포지션은 단일 소유자가 없습니다. 이러한 경우, Plasma 체인에 문제가 발생하면 다음과 같은 상황이 발생할 수 있습니다:
- 소유자가 상태 탈출을 수행하지 않아 상태가 Plasma 체인에 영구히 잠길 수 있습니다.
- 외부인이 탈출을 시도할 수 있더라도 Exit Game 공격이 발생할 수 있으며, 위험이 큽니다.
- 복잡한 상태의 계약은 검증하기 어렵습니다.
Plasma + ZK-SNARKs
Plasma가 현재 직면한 기술 병목 현상에 대해 V 신은 현재 이미 성숙한 유효성 증명(zk-SNARKs) 기술과 결합할 수 있다면 일부 병목 현상을 효과적으로 해결할 수 있다고 응답했습니다. 구체적으로는 다음 다섯 가지로 나눌 수 있습니다:
- zk-SNARKs는 메인 체인에서 Plasma 블록의 유효성을 증명할 수 있어 탈출 메커니즘에 대한 의존도를 줄일 수 있습니다.
- Plasma 체인에서 자산의 즉각적인 인출을 가능하게 하여 7일의 사기 증명 도전 기간을 제거하고 체인 재조직 문제를 줄일 수 있습니다.
- EVM 상태를 나타내는 병렬 UTXO 구조를 구축하고 zk-SNARKs로 그 동등성을 증명하여 EVM의 일부 문제를 회피할 수 있습니다.
- zk-SNARKs를 사용하면 사용자가 검증하고 저장해야 하는 상태 데이터 양이 크게 줄어들어 사용자 경험을 최적화할 수 있습니다.
- 소유자를 정의하기 어려운 스마트 계약의 경우, 핵심 부분이 검증 가능한 객체로 분할될 수 있다면 일부 안전 보장을 받을 수 있습니다.
비록 이러한 방법이 여전히 모든 복잡한 EVM 계약을 포괄할 수는 없지만, ZK 기술의 발전과 Plasma 설계 공간의 지속적인 탐색을 통해 우리는 안전성, 확장성 및 경험 간의 더 나은 절충안을 찾을 수 있기를 기대합니다.
필자의 견해
DT @19971122:
V 신의 이 글을 읽기 전, 필자는 Plasma의 기술 구조에 대해 잘 알지 못했습니다. 현재 이더리움 확장 솔루션은 거의 Rollup 기술의 세상이라고 할 수 있으며, 각 팀은 Rollup 기술의 L2 네트워크를 선보이기 위해 경쟁하고 있으며, 데이터 가용성 계층(DA 계층)을 다른 네트워크에 구축하는 모듈화 구조(Celestia, EigenLayer, Avail)도 발전하고 있습니다. 따라서 이더리움 재단의 연구원 댄크라드 페이스트가 트위터에서 언급한 "ETH를 DA 계층(데이터 가용성 계층)으로 사용하지 않는 모듈화 블록체인은 Rollup도 아니고, 이더리움 L2도 아니다"라는 발언이 등장하게 되었습니다. 이더리움 발전의 정통성이 무엇인지에 대한 논쟁은 항상 존재해왔습니다. Rollup 발전에 대한 논의가 치열해지는 가운데 V 신의 이 글은 Plasma에 활력을 불어넣는 것처럼 보이며, 이더리움 커뮤니티에 이더리움의 확장 솔루션이 Rollup 하나만이 아니라는 것을 알리고, ZK+Plasma의 새로운 방향도 하나의 선택이 될 수 있음을 시사합니다.
필자는 탈중앙화된 세계에서 다원적 발전이 본래 자연스러운 과정이라고 생각하지만, 자본 효율성을 고려할 때 모듈화된 동질적 발전이 더 경제적일 수 있습니다. 그래서 OP Stack이나 Polygon zkEVM CDK와 같은 표준화된 프레임워크 제품이 등장하여 각 자본이 자신의 L2 네트워크를 구축할 수 있게 되었지만, 동시에 일부 다원성을 잃게 되었습니다. V 신의 이러한 행위는 이더리움 확장성 솔루션의 발전이 균형을 잃었다고 판단하여 방향을 제시한 것일 수 있습니다. 향후 발전에서 팀이 나와 실현할지는 매우 주목할 만한 일이며, 필자는 이더리움의 장기 사용자이자 지지자로서 이더리움 확장 기술의 균형 발전을 기쁘게 생각합니다.
NingNing @0xNing0x:
Plasma는 블록체인의 확장성을 높이기 위해 설계된 솔루션으로, 대부분의 데이터와 계산을 체인에서 체인 밖으로 이동시켜 이를 실현합니다. Plasma는 2017년에 처음 등장했으며, Plasma Cash, Plasma Cashflow 등 여러 반복 버전을 거쳤습니다. 그러나 Plasma는 결제 범위를 초과하는 애플리케이션으로 확장할 때 존재하는 기본적인 제한(무주 상태 문제와 인센티브 흐름 문제)으로 인해 Plasma L2 솔루션은 점차 소외되었습니다.
동시에 Rollup은 L2의 주류 솔루션이 되었으며, 그 주요 장점은 설계의 간결성과 개발자 친화성입니다. 그러나 ZkEVM 기술의 구현과 성숙에 따라 Plasma는 새로운 설계 공간을 맞이하게 되었으며, 개발자 경험을 단순화하고 사용자 자산을 보호할 수 있는 새로운 가능성을 제공합니다.
비탈릭이 이번에 Plasma L2를 소개한 목적은 아마도 L2 패러다임의 다양성과 혁신의 중요성을 강조하기 위함이지, 새로운 패러다임의 Plasma L2 솔루션이 Rollup L2 솔루션의 주류 지위를 도전할 수 있다고 생각하지는 않을 것입니다. 현재 Rollup L2 솔루션은 TVL 규모와 사용자 수에서 절대적인 선두를 차지하고 있으며, 마태효과의 존재로 인해 이 지위는 예측 가능한 미래에 더욱 강화될 것입니다.
최근 며칠 동안 Paradigm과 Blur 팀이 협력하여 출시한 새로운 패러다임 L2 Blast는 또 다른 탐색 경로를 보여주었습니다. 비록 그 구조가 비탈릭의 L2에 대한 엄격한 정의와 일치하지 않지만, 시장과 커뮤니티에서 상당한 성공을 거두었으며, 빠르게 커뮤니티의 관심과 많은 자본 참여를 끌어들였습니다. 이는 시장과 커뮤니티가 L2 패러다임의 다양성을 갈망하고 있으며, 더 이상 하나 또는 두 가지 표준 설계에 만족하지 않음을 나타냅니다.
종합적으로 볼 때, Plasma L2 솔루션은 일정한 잠재력과 혁신성을 가지고 있지만, L2의 발전은 최고의 이성적인 상위 설계자가 설계한 청사진에 의존해서는 안 되며, 복잡하고 비선형적인 시장 경쟁에서 자생적으로 성장해야 합니다.