플라즈마는 죽지 않았다 — Part 1

Aiden Park
Tokamak Network
Published in
17 min readApr 9, 2020

By 박정원(Aiden Park) and 철학자(Kevin Jeong)

핵심 요약

들어가며

2017년 8월 비탈릭 부테린과 조샙푼이 작성해 공개했던 이더리움 기반의 레이어2 확장성 솔루션인 플라즈마(Plasma : : Scalable Autonomous Smart Contracts)는 연구자들의 오랜 숙원이덨던 블록체인 트릴레마를 완전히 해결할 수 있을 것이라는 기대감을 조성하며 커뮤니티의 많은 관심을 받았다. 하지만 약 2년여의 이더리움 커뮤니티의 연구개발 및 논의는 플라즈마가 트릴레마를 해결할 수 있는 궁극의 수단은 아니라는 방향으로 모아지고 있다. 블록체인 연구자인 Ashwin Ramachandran는 플라즈마의 삶과 죽음(The Life and Death of Plasma)이라는 글을 통해 “플라즈마 연구는 완전히 사라진 것처럼 보이며, 많은 연구자들은 개발을 중단했다”고 말하며 “새로운 솔루션인 옵티미스틱 혹은 영지식 롤업과 같은 방식이 더 나은 확장성 솔루션으로 주목받고”있고 “플라즈마는 사망했다(It seemed that Plasma was dead)”고 선언했다.

어떤 분야든 새로운 기술이 등장하면 사람들은 이 기술이 변화시킬 우리들의 장밋빛 미래에 대한 기대감에 부풀어 오른다. 이 기대감은 자본을 타고 수많은 전문가들을 투입시켜 기술을 발전시키고 이에 대한 응용 사례를 쏟아내게 된다. 이때 일부 화술 좋은 연구자들은 글과 강연을 통해 기술의 현실을 대중에게 적나라하게 노출시킨다. 그리고 대중은 그들이 공개한 기술의 민낯이 생각보다 아름답지 않다는 것을 깨닫고는 실망과 좌절, 심지어는 분노와 환멸까지 쏟아낸다. 이 단계에서 많은 연구자들은 대중의 냉소를 견디지 못하고 해당 분야를 떠난다. 하지만 제프리 힌튼이 연구에 몰두했던 인공신경망 이론이나 혹은 Wei Dai의 b-money와 같이 추후에 완전히 재조명되거나, 혹은 적어도 특정 분야에서 유용한 쓰임새를 찾는 경우도 있다.

이 관점에서 우리는 플라즈마 또한 아직 사망하지 않았으며, 여전히 유용하게 사용될 수 있음을 논증하고자 한다.

플라즈마 커뮤니티는 죽은 것처럼 보인다

블록체인의 오랜 숙원 이었던 블록체인 트릴레마를 완전히 해결할 수 있을 것으로 기대를 모았던 플라즈마는 커뮤니티에서 수 많은 관심을 받았다. 하지만 약 2년여의 연구 개발 및 논의 끝에 플라즈마는 트릴레마를 간단히 해결할 데우스 엑스 마키나가 아니라는 결론에 도달하게 되었고, 커뮤니티 내의 발길은 점차 줄어들게 되었다.

플라즈마를 향한 발길이 차츰씩 줄어들고있다.

플라즈마에 대한 커뮤니티의 관심이 줄어든 원인은 다음의 3가지 문제가 쉽게 해결되지 못했기 때문이다.

  1. 데이터 불가용성(Data Unavailability)
  2. 집단 탈출(Mass Exit)
  3. 감시의 문제(Monitoring Issue)

엄밀히 말해 2,3번은 1번에서 비롯한 일종의 합병증이라 볼 수 있다. 근본적으로 모든 문제는 데이터 불가용성(Data Unavailability)에 기인한다. 플라즈마의 데이터 불가용성은 플라즈마의 운영자(Operator)가 사용자들의 자산 혹은 상태 데이터들을 숨김으로 인해서 사용자들이 데이터에 접근하기 어려워진 상황을 뜻한다. 이 경우 플라즈마 운영자는 어떠한 견제 없이 일방적으로 사용자들의 데이터를 조작할 수 있는 권한을 획득하게 된다. 때문에 플라즈마는 이러한 문제를 방지하기 위해 탈출(Exit) 혹은 탈출게임(Exit Game)이라는 운영자 견제 장치를 도입하였다. 이 장치가 동작하는 한, 선량한 일반 사용자들은 플라즈마의 운영자가 데이터를 숨겨버릴 경우 해당 플라즈마 체인에서 그들의 데이터를 안전하게 탈출시킬 수 있게 된다.

플라즈마의 안전성(Security)은 결국 이 탈출을 얼마나 효율적으로, 효과적으로 할 수 있느냐에 의존하게 되었고, 이를 개선하고 발전시키기 위해 많은 연구들이 이뤄졌다.

안타깝게도 제안된 많은 솔루션들은 논의의 출발점을 크게 벗어나지 못했다. 특히 대부분의 탈출 방식은 사용자들이 운영자가 만들어내는 모든 데이터 생성 과정을 지켜봐야 한다는 것(3. Monitoring Issue)과 제한 시간 내에 모든 인원이 탈출할 수 밖에 없다는 것(2. Mass Exit)을 인정할 수밖에 없었다. 이 둘은 플라즈마의 사용성 측면에 있어서 치명적이었다. 모든 사용자들이 매 순간 운영자를 감시하지 않는다면, 운영자가 데이터 불가용성을 이용해 공격을 하는 일부 사용자들이 탈출하지 못하는 문제가 생길 수 있었고, 만약 모두가 지켜볼 수 있다고 한들 짧은 시간내에 많은 사용자들의 탈출이 동시에 이루어져야 하기 때문에 탈출 자체가 처리되지 않을 수도 있는 위험이 존재했다(또한 이런 상황은 레이어-1인 이더리움 자체의 확장성에도 의존해야 했다).

이로 인해 이더리움 커뮤니티는 플라즈마가 아닌 다른 가능성을 모색하기 시작했다. 그렇게 등장한 것이 롤업(Rollup), 혹은 옵티미스틱 롤업(Optimistic Rollup)이다. 사실 롤업은 아주 새로운 이야기는 아니다. 지난 몇 년 전 언급 되었던 그림자 체인(Shadow chain)의 변주에 지나지 않는다. 그럼에도 불구하고 근래에 롤업이 다시 주목받는데에는 이유가 있다.

지긋지긋한 데이터 불가용성에서 벗어날 수 있다.

https://github.com/plasma-group/ovm

롤업은 레이어-2에서 발생한 모든 트랜잭션들을 레이어-1에서 확인할 수 있도록 업로드한다(레이어-1의 스토리지(Storage)에 직접 저장하지는 않는다. 트랜잭션의 CALLDATA에서 누구나 확인할 수 있도록 한다). 이를 통해 롤업은 항상 데이터 가용한 상태가 된다. 이는 곧 복잡한 탈출 게임이 필요없어진다는 의미와 같고, 언제든지 누구나 레이어-2 체인의 상태 연산을 검증할 수 있게 된다는 것을 의미한다.

롤업은 비록 플라즈마에 비해 확장성을 대폭 제한하고, 더 값비싼 비용을 지불하게 되었지만, 데이터 불가용성을 원천적으로 제거하였기 때문에 사용자들이 레이어-2를 계속해서 감시하거나, 제한 시간내에 반드시 탈출해야만 하지 않아도 레이어-2를 안전하게 이용할 수 있게 되었다.

여기까지 살펴보면 플라즈마는 실패하였고, 롤업은 성공한 도구처럼 보인다.

그런데 과연 정말 그럴까? 잠시 다른 이야기를 해보자.

호미 vs 굴삭기

때때로 적절한 질문은 사물과 현상의 본질을 이해하는데 많은 도움이 준다.

호미와 굴삭기 중 어떤 것이 더 유용한 도구인가?

(주: 호미는 한국의 전통 소형 농기구이다.)

정답은 ‘우열을 가릴 수는 없다’이다.

정답을 말하지 못했다면 적어도 당신은 정확히 어떤 측면에서 유용성을 가리는 것인지 되물어야 했었다. (글을 읽으며 스스로 이렇게 되물은 독자들은 정답을 맞춘것과 다름없다!)

얼핏보기에 굴삭기는 그 자체로 호미에 비해 월등히 우월해보인다. 수많은 기계 장치의 집합체인 굴삭기는 현대 공학 기술의 결정판이라고 볼 수 있다. 반면에 호미는 그 모양새와 성능이 초라하다. 그런데 이 질문에 특정한 상황이 부여되면 정답은 곧바로 뒤집힌다.

(집안의 작은 정원을 아름답게 가꾸기 위해) 호미와 굴삭기 중 어느 것이 더 유용한가?

굴삭기로는 손바닥만한 모종을 심기가 쉽지 않다. 정원을 가꾸는 데에는 호미가 굴삭기보다 보다 더 유용한 것은 분명하다.

하지만 큰 건물을 지어야 하는 상황에서의 굴삭기는 호미보다 훨씬 유용할 수 있다. 호미로는 수백 킬로그램에 달하는 토사 채굴이 쉽지 않다. 때문에 토목공사 현장에서는 호미가 낄 자리가 없다. 반면 그곳에 굴삭기는 필수 도구다. 이러한 관점에서는 굴삭기가 호미보다 유용하다고 할 수 있다.

앞선 질문과 답변은 굴삭기와 호미 그 자체는 어느것이 절대적으로 유용하거나 우월하다고 말하기 어렵다는점을 시사한다. 여기서 중요한 점은 각각의 도구들의 장단점이 특정한 상황에서 유용할수도, 그렇지 않을수도 있다는 점을 인식하는 것이다. 우리는 하나의 잣대만을 기준으로 도구의 유용성을 판단하는 함정에 빠져서는 안된다.

이를 염두에 두고 이더리움의 확장성을 위해 고안했던 도구인 플라즈마와 롤업으로 돌아가보자.

플라즈마 vs (옵티미스틱) 롤업

앞서 플라즈마의 단점들만 주로 논의했지만 사실 플라즈마는 특유의 막강한 장점들 또한 갖고 있다.

플라즈마의 가장 큰 장점은 (탈중앙성과 안전성을 크게 희생하지 않고 얻을 수 있는) 확장성이다.

Plasma is a proposed framework for incentivized and enforced execution of smart contracts which is scalable to a significant amount of state updates per second (potentially billions) enabling the blockchain to be able to represent a significant amount of decentralized financial applications worldwide. — Plasma Whitepaper

플라즈마 백서는 서두부터 이를 강조하고 있는데, 플라즈마는 현존하는 모든 레이어-2 솔루션 중 가장 확장성이 높은 솔루션임에는 분명하다. 이는 매우 큰 장점이며, 플라즈마 하나로 이더리움 블록체인을 포함한 모든 블록체인들의 고질병인 확장성을 탈중앙성과 안전성(Security)을 -특정 조건이 필요하지만- 희생하지 않고 해결할 수 있게 되기 때문이다.

이를 롤업과 비교해보자. 앞서 말했듯이 롤업은 플라즈마와 달리 모든 트랜잭션 데이터를 루트체인에 업로드하여 누구나 이를 확인할 수 있게 한다. 따라서 롤업에서는 단 한명의 정직한 검증자만 있다면, 나머지 모든 사용자들이 안전하게 레이어-2 체인을 이용할 수 있다. 플라즈마와 달리 추가적인 조건 없이 이더리움 수준의 안전성을 보장할 수 있게 된 것이다.

하지만 롤업은 플라즈마의 핵심 단점들을 모두 제거함과 동시에 장점인 확장성도 대폭 희생하게 되었다. 롤업은 레이어-2체인의 데이터 가용성을 확보하기 위해 레이어-1에 블록 루트를 저장할 때 모든 트랜잭션 데이터를 트랜잭션의 calldata로 업로드 한다. 구체적으로 현재 calldata를 사용하는 비용은 1바이트(non-zero)당 16 gas이다. 이를 바탕으로, 일반적인 ERC-20 토큰의 전송에 필요한 가스는 약 1257 gas이 된다. 기존에 비해 확연히 비용이 줄어들었지만 여전히 트랜잭션마다 일정 수준 이상의 수수료가 필요한점은 변하지 않은 것이다.(물론 이 트랜잭션 비용은 기존의 ~50000 gas보다 큰 폭으로 줄어든 것은 확실하다.)

결과적으로 확장성 측면에서 롤업을 이용할 경우 기존 이더리움에 비해 최소 4~50배 이상의 TPS는 얻을 수 있게 된다. 문제는 이것이 상한선, 즉 한계라는 점이다. 아무리 많은 롤업 체인을 이용하더라도 그 결과는 동일하다. 롤업은 아무리 최적화를 하더라도 레이어-1의 확장성을 플라즈마와 같이 기하급수적으로 늘릴 수 없다. s가 이더리움의 확장성이라면 롤업은 s의 상수배인 n*s만큼 확장성을 증가시킬 수 있을 뿐이다. 롤업의 확장성 증가폭은 레이어-1의 확장성에 선형적으로 의존하기 때문이다.

반면에 플라즈마는 확장성을 s의 상수배가 아닌 지수배인 s^m으로 증가시킬 수 있다. 이 때 중요한점은 m이 상수가 아니라 변수가 될 수 있다는 점이다. 루트체인에 저장하는 플라즈마 블록의 루트 안에는 수 많은 트랜잭션들이 포함될 수 있으며, 심지어 수십, 수백개의 블록들을 하나의 루트로 저장하는 것 또한 가능하기 때문이다. 이처럼 플라즈마의 확장성이 바다라면, 롤업의 확장성은 호수 정도로 비유할 수 있다.

하지만 앞서 언급한것처럼 플라즈마에서 안전성을 보장하기 위해서는 추가적인 장치와 조건들이 필요하다. 반면에 롤업은 그 방법이 매우 단순하기 때문에 안전성 측면에서 확실히 플라즈마보다 우위에 있다고 할 수 있다.

플라즈마, 롤업, 그리고 블록체인 트릴레마

앞서 논의한 내용을 바탕으로 플라즈마와 롤업을 블록체인의 블록체인 트릴레마의 관점에서 다른 솔루션들과 단순하게 비교하여 표현하면 다음과 같이 나타낼 수 있다.

트릴레마 관점에서 비교한 각 솔루션들의 위치

(주: 위 그림에 관해 각 솔루션들에 대한 구체적인 평가에 대해 이견이 있을 수 있다. 하지만 중요한것은 플라즈마와 롤업이 이 그래프에서 어느정도 위치에 있는지를 파악하는 것이다.)

롤업은 이더리움 수준에 가까운 안전성과 탈중앙성을 제공함과 동시에 이더리움에 비해 향상된 확장성을 제공할 수 있다. 반대로 플라즈마는 롤업에 비해 안전성을 다소 희생한 대신, 상황에 따라 EOS 등으로 대표되는 컨소시엄 블록체인 보다도 높은 확장성을 제공할 수 있게 된다.

사실 플라즈마에 대한 초기 커뮤니티의 기대는 아래 그림과 같이 플라즈마가 블록체인 트릴레마를 완전히 해결하는 것이었으나, 실제로는 그 기준에 미치지 못하게 된 것이 사실이다. 비유하자면 초기의 플라즈마가 대규모 토목공사와 작은 묘목 심기 모두를 할 수 있는 만능 도구는 아니었던 것이다.

이더리움 커뮤니티가 초기에 꿈꿨던 플라즈마의 모습 — 아쉽게도 플라즈마의 꿈은 이뤄지지 않았다.

하지만 그렇다고 해서 플라즈마 특유의 장점이 사라진 것은 아니다. 호미가 고유의 장점이 있고, 굴삭기도 고유의 장점이 있는 것처럼 플라즈마는 막대한 확장성을 갖는 레이어-2 솔루션이라는 점은 변하지 않는다. 다만 우리는 이 도구의 확장성을 제대로 활용해보지도 못하고 관에 넣고 묻어버렸다.

이제 이 도구를 다시 꺼내 활용처를 알아보자.

플라즈마, 그리고 옵티미스틱 롤업

플라즈마와 롤업의 장단점은 서로 뚜렷이 대비된다. 플라즈마의 장점인 확장성은 롤업의 단점이며, 롤업의 장점인 안전성은 플라즈마의 단점이다.

이는 사실 앞서 논의한 호미와 굴삭기의 비교와 유사한 면이 있다. 호미는 작은 정원 가꾸기와 같은 작업에 특화되어있지만, 반대로 대규모의 공사현장에서 사용되기는 불가능하다. 굴삭기는 그 반대로 작은 정원 조경작업에 사용되는 것은 사실상 불가능하지만 대부분의 토목공사에서 반드시 필요한 도구이다. 우리가 실생활에서 호미가 필요한 곳에는 호미를 쓰고, 굴삭기가 필요한 곳에는 굴삭기를 쓰는 것처럼, 플라즈마와 롤업도 그 목적에 맞게 활용할 수 있다.

예를 들어, 탈중앙화된 레딧(DReddit)이 있다고 생각해보자. 수 많은 서브레딧, 포스트, 코멘트들이 생성되고 저장되기 위해서는 높은 확장성이 필수적으로 보장되어야 할 것이다. 또한 특정 주체가 사용자들의 소셜 활동을 검열하고 막을 수 없도록 높은 수준의 탈중앙성 또한 보장되어야 한다. 여기에 더해 작성된 포스트나 코멘트가 위변조 되거나 임의로 삭제되는 것을 방지하기 위해 데이터에 대한 안전성 또한 보장되어야 한다. 어느 요소 하나 중요하지 않은 것이 없지만, 각 요소의 중요도를 바탕으로 필요한 우선순위를 따져보면 확장성 > 탈중앙성 > 안전성 정도로 정리할 수 있다. 탈중앙성, 안전성도 물론 중요하지만 확장성이 보장이 되지 않으면 서비스 자체가 운영이 불가능하기 때문이다.

반대로, 탈중앙화된 거래소(DEX)를 생각해보자. 수 많은 거래들이 동시다발적으로 발생되기 때문에 역시 높은 확장성이 보장되어야 한다. 탈중앙성 역시 특정 사용자의 거래 행위를 검열하거나 제3자에 의해 거래소가 갑자기 폐쇄되는 상황등을 방지하기 위해 반드시 필요하다. 하지만 무엇보다 중요한점은 바로 안전성이다. 사용자의 자산이 공격자에 의해 탈취당하고, 이중지불되는 상황은 어떤 것을 희생하더라도 반드시 막아야만 하는 상황이다. (이것이 초기 비트코인과 이더리움이 확장성을 희생하고 안전성과 탈중앙성을 희생한 이유이다) 따라서, 이 경우 각 요소의 우선순위는 안전성 > 탈중앙성 > 확장성 정도로 정리된다.

DReddit과 DEX를 운영하는데 필요한 각 요소의 우선순위는 다음과 같이 그림으로 간략하게 나타낼 수 있다.

여기서 우리가 해야하는 것은 이 요구사항을 최대한 충족하는 가장 적합한 솔루션을 선택하는 것이다.

다른 어떤 요소보다 안전성이 중요한 DEX의 경우 플라즈마보다는 롤업에서 운영되는것이 보다 적합해 보인다. 반대로, DReddit의 경우 안전성보다는 확장성이 더 우선하므로 롤업보다는 플라즈마가 더 적합한 솔루션이라고 할 수 있다.

물론 안전성을 다소 희생하더라도 더 많은 거래를 처리하고자 한다면 DEX또한 플라즈마에서 운영될 수 있으며, 반대로 DReddit 또한 확장성을 희생하고 안전성을 우선한다면 롤업에서 운영될 수 있다. 핵심은 플라즈마와 롤업 모두 강점과 약점이 다르며, 요구사항에 관한 우선순위를 바탕으로 적절한 솔루션을 선택할 수 있어야 한다는 것이다.

DApp(Decentralized Application)은 여기서 사용한 예시인 DReddit, DEX 이외에도 수 없이 많은 종류가 이미 존재하고, 또 새롭게 생길 수 있다. 이러한 각각의 DApp은 확장성, 혹은 안전성, 탈중앙성 측면에서 각 요구사항에 관한 우선순위가 모두 다를 수 있다. 플라즈마와 롤업은 다양한 DApp들의 요구사항에 맞춰 각자의 역할을 훌륭히 수행해 낼 수 있으며, 심지어 이더리움과의 강력한 상호운용성(Inter-operability)을 바탕으로 강력한 이더리움 커뮤니티를 통해 여태까지 이더리움에서 상상도 하지 못한 더욱 다양한 DApp이 만들어 질 수 있다.

플라즈마와 롤업이라는 효과적인 두 솔루션을 적절하게 사용한다면, 위 그림과 같이 기존의 이더리움에서는 불가능했던(보라색과 주황색 영역의) 다양한 DApp들을 이더리움 커뮤니티에 가져다 줄 수 있을 것이다.

여기서 끝이 아니다. 플라즈마와 롤업을 동시에 사용하는 것도 가능하다. 정확히 말하자면, 시기와 목적에 따라 플라즈마와 롤업중 하나의 솔루션을 선택하여 사용하는 것이 가능하며, 중간에 변경하는 것 또한 가능하다. (그 구체적인 방법에 대해서는 Part 2에서 논의한다. 다만 이는 플라즈마와 롤업중 하나의 솔루션을 선택하여 사용하는 것을 의미하는 것이지, 두 솔루션의 장점을 혼합한 궁극의 솔루션을 말하는 것이 아니다. )

우리는 이처럼 플라즈마와 롤업이라는 도구를 목적에 따라 유연하게 사용할 수 있도록 하는 수단을 마련하고자 한다. 이러한 형태의 아키텍처는 분명히 기존 이더리움이 충족시키지 못한 다양한 스펙트럼의 요구사항(확장성, 사용성, 안정성)을 위해 레이어-2 솔루션을 택하는 DApp 개발자, 사용자들에게 큰 도움이 될 것이라 확신한다.

마치며

적어도 현재까지 등장한 모든 레이어-2 솔루션들은 기존의 블록체인 트릴레마를 완전히 극복하기 위한 수단이 되지는 못했다. 어쩌면 이 트릴레마는 앞으로도 완벽하게 해결할 수 없는 난제일지도 모른다. 하지만, 적어도 우리는 트릴레마에 대한 부분적인 최적화 방안들을 도입하여, 각 수단의 활용성을 극대화하고자 한다. 이는 궁극적으로 블록체인을 활용해 시장의 요구사항에 맞춰 응용 어플리케이션을 만드는 개발자들의 선택의 자유(freedom to choose)를 극대화시켜 블록체인의 활용처를 한층 넓히게 될 것이다.

그리고 이어지는 2편을 통해서 그 구체적인 방법에 대해서 더 이야기를 나눠보자.

참고자료

--

--