EOSIO 코드 포크체인 알아보기

eosys
EOSYS
Published in
12 min readJan 10, 2019

안녕하세요 이오시스 서포터 디온(@donekim)입니다. 2019년 새해의 시작과 함께 이오시스 미디엄 첫 글의 주제로 어떤 것을 다루는 것이 좋을지에 대해 많은 고민을 하다가, 최근에 이오스 커뮤니티에서 가장 많은 분들이 관심을 가지고 있으시면서도 해당 개념에 대해 다소 어려움을 느끼고 있는 “EOSIO 코드 포크체인(Code fork chain)”부터 다뤄보기로 결정했습니다. 오늘의 포스팅에서는 EOSIO 코드 포크체인이 무엇인지 함께 살펴보시죠!

#1. EOSIO vs EOS

EOSIO 포크체인에 대해 설명하기에 앞서, 먼저 EOSIO와 EOS의 개념부터 명확히 정리하는 것이 중요합니다. 많은 분들이 EOSIO와 EOS라는 단어를 명확히 구분하지 않고 사용하시는 경우가 많은데 사실 이 둘은 엄밀히 다른 것을 지칭하는 단어입니다. 그렇다면 구체적으로 EOSIO와 EOS는 어떻게 다를까요?

① EOSIO란? (= Software)

EOSIO는 각종 블록체인 메인넷들의 한계를 보완하기 위해 블록원(Block.one)에서 개발하고 있는 블록체인 소프트웨어를 일컫는 단어입니다. EOSIO는 탈중앙화된 애플리케이션(DApp, Decentralized Application)의 수평적·수직적 확장이 가능하게끔 설계된 블록체인 아키텍처를 도입한 오픈 소스 소프트웨어입니다. 이오스 메인넷을 비롯해 다양한 블록체인 네트워크들이 EOSIO 소프트웨어를 사용하여 구축될 수 있습니다.

② EOS란? (=Mainnet, Symbol)

우리가 흔히 이오스 메인넷이라고 부르는, “EOSIO라는 오픈 소스 소프트웨어를 기반으로 하여 첫 번째로 런칭한 블록체인 네트워크”, 또는 이오스 메인넷의 “네이티브 토큰 심볼”을 일컫는 단어입니다. EOSIO 소프트웨어 개발사인 블록원이 이오스 메인넷의 소유권을 가지고 있고, 이를 런칭한 것으로 오해하고 계시는 분들이 있으신데 정확히 말씀드리자면 EOS 메인넷은 (블록원이 아니라) 커뮤니티에 의해 런칭되었습니다.

EOSIO 소프트웨어를 활용한 가장 대표적인 퍼블릭 블록체인이 EOS 메인넷이며 EOS 메인넷의 성공을 위해 블록원이 EOSIO 소프트웨어를 계속해서 업데이트하고 기술지원을 아끼지 않고 있으나, EOS 메인넷이 블록원과 직접적인 관계가 있다고 할 수는 없습니다.

이제 EOSIO와 EOS의 차이가 어느 정도 구분이 되시죠?

다시 한 번 예를 들어 보완설명을 해보겠습니다. 퍼블리토(PUBLYTO)라는 이오스 메인넷 상의 댑(DApp)은 EOSIO 오픈 소스 소프트웨어를 활용한 EOS 메인넷 상의 탈중앙화된 애플리케이션입니다. 따라서 아래와 같이 표현할 수 있습니다.

  • Publyto on EOSIO → (O)
  • Publyto on EOS → (O)

그러나 EOSIO 소프트웨어를 기반으로 독자적인 별도의 체인을 구축한 텔로스(TELOS)의 경우는 아래와 같이 표현할 수 있습니다.

  • Telos on EOSIO → (O)
  • Telos on EOS → (X)

왜냐하면 텔로스는 EOSIO라는 오픈 소스 소프트웨어를 사용하여 구축된 블록체인 네트워크이기는 하지만, 이오스 메인넷(EOS)과는 완전히 독립적인 별도의 메인 네트워크를 구축했기 때문입니다.

#2. 포크(Fork)란?

“하드포크(Hard fork), 소프트포크(Soft fork)는 알겠는데 코드포크(Code fork)는 또 뭐람?”

이미 크립토씬에 어느 정도 관심을 가지고 계셨던 분들이라면 여기서 말하는 포크(fork)가 양식을 먹을 때 사용하는 포크가 아니라는 건 잘 알고 계실 것 같습니다. 크립토씬에서 포크란 “블록체인의 유효성과 관련해 노드 간 충돌이 있거나, 하나 이상의 블록체인이 네트워크에 있거나, 모든 블록체인이 일부 채굴자에 의해 검증될 때 발생하는 것”을 의미합니다.

소프트포크는 투자자들에게 크게 체감되는 것이 없기 때문에 일반적으로 포크(fork)라는 용어는 그동안 크립토씬에서 하드포크(hardfork)를 지칭하는 용어로 많이 사용되었습니다. 아마 하드포크에 대해서는 이미 많은 분들이 익히 잘 알고 계실 거라고 생각합니다. 비트코인의 하드포크로 비트코인캐시, 비트코인골드가 탄생했고 이더리움의 하드포크로 이더리움클래식이 탄생했었기 때문입니다.

그러나 포크(fork)라는 개념은 크게 체인 포크(chain fork), 코드 포크(code fork), 사이드체인(side chain)으로 세부적으로 분류가 될 수 있습니다. 이 3가지가 어떻게 다른지에 대해서 자세히 살펴보겠습니다.

체인 포크(chain fork) vs 코드 포크(code fork)

포크라는 용어를 듣는 경우, 우리는 일반적으로 이더리움클래식, 비트코인캐시 등과 같이 기존 체인에서 떨어져 나온 “하드포크(hard fork) 체인”을 떠올리는 경우가 많습니다. 그러다보니 자연스럽게 코드 포크체인이라는 개념에 대한 혼동이 발생하게 됩니다. 그러나 사실 “①체인 포크(chain fork)와 ②코드 포크(code fork)체인은 완전히 다른 개념”이라는 사실에 주의하셔야 합니다.

① 체인 포크(chain fork)

체인 포크(Chain fork)와 코드 포크(Code fork)의 차이를 가장 간단하게 구분하는 기준은 “공통의 역사를 공유하고 있느냐”입니다. 먼저 체인 포크부터 설명하자면, 예를 들어 비트코인캐시는 체인 포크가 일어나기 이전에는 비트코인과 한 몸이었고, 이더리움클래식 또한 이더리움과 한 몸이었습니다. 그들은 “함께 공통의 역사를 공유하고 있었던 이력”이 있습니다.

② 코드 포크(code fork)

반면에 코드 포크(Code fork)의 경우에는 동일한 소프트웨어를 기반으로 설계가 된 것일 뿐이지 “어떠한 공통의 역사를 전혀 공유하지 않는 완전 별도의 체인”입니다. 대표적인 예로 11월 1일에 메인넷을 런칭한 워블리(WORBLI)의 경우에는 EOSIO 소프트웨어를 기반으로 하지만 이오스(EOS) 메인넷과는 체인이 전혀 연결되어 있지 않으며, 그들의 니즈에 맞게 EOSIO 소프트웨어를 코드 중 일부를 이오스(EOS) 메인넷과 다르게 커스터마이징한 완전히 독자적인 별도의 체인입니다.

EOSIO라는 오픈 소스 소프트웨어를 사용하기 때문에 아키텍처가 굉장히 유사하고, 정말 넓은 의미에서 보았을 때는 이오스 멀티버스를 구성하는 체인 중에 하나라고 할 수 있으며, 이오스 메인넷과 EOSIO라는 근본 뿌리가 같고 닮은 점이 많기 때문에 시스터체인(Sister chain)이라고 부르기도 하지만 완전히 독립된 하나의 블록체인 네트워크인 것입니다.

③ 사이드체인(side chain)

사이드체인이라는 개념은 Adam Back의 2014년 발표 논문 Enabling Blockchain Innovations with Pegged Sidechains에서 처음 등장한 개념입니다.

사이드체인도 광의의 포크(fork) 체인 중 하나라고 할 수 있으나, 위에서 설명한 체인 포크(chain fork)나 코드 포크(code fork)를 통해 탄생한 별도의 독립적인 체인과 달리 사이드체인은 특정 메인체인에 종속된 관계를 가지는 체인을 의미합니다.

사이드체인은 다른 말로 “버디체인(buddy chain)”, “사이드킥 체인(sidekick chain)”이라고 부르기도 하는데, ①Two-way pegging을 통해 메인체인과 항상 연결되어 있다는 대표적인 특징을 가집니다. 더불어 메인체인과 항상 연결되어 있기 때문에 ②사이드체인에서 발행되는 토큰 가격은 메인체인의 네이티브 토큰(EOS 메인넷의 경우에는 EOS 네이티브 토큰)의 가격과 고정된 비율로 움직이게 되고, 텔로스나 워블리처럼 ③별도의 블록프로듀서가 존재하지 않습니다(메인체인의 블록프로듀서를 공유함).

토큰 가격이 메인체인의 네이티브 토큰과 고정된 비율로 움직인다는 것에 대해서 잘 이해가 되지 않으실 분들을 위해 예를 들어 설명해보겠습니다. 이오스 메인넷에 종속된 EOSYS라는 이름의 사이드체인이 만들어질 수도 있고, 워블리에 종속된 WORBLYS라는 이름의 사이드체인이 만들어질 수도 있는데, 이때 EOSYS라는 이오스 메인넷의 사이드체인 토큰은 EOS 네이티브 토큰과 항상 사전에 정해진 비율, 예를 들어 10:1로 항상 고정된 채로 움직이게 되고, WORBLYS라는 워블리 메인넷의 사이드체인 토큰은 WBI토큰과 항상 사전에 정해진 비율, 예를 들어 2:1로 고정된 채로 움직이게 되는 것입니다.

위에서 예로 들었던 비율에 따르면 EOS가격이 200원 하락하면, EOSYS토큰의 가격은 20원 떨어지고, WBI토큰의 가격이 100원 상승하면 WORBLYS토큰의 가격은 50원 올라가게 됩니다.

BP를 포함하여 메인체인과 항상 고정된 관계를 유지하며 메인체인에 묶여있어야 하는 것이 사이드체인의 운명이지만, 사이드체인은 그 안에서 네트워크 리소스의 가격 등을 다르게 설정하는 등 “사이드 생태계(Side ecosystem)”을 구축함으로써 메인체인의 확장성을 높여주는 해결책으로 작동할 수 있다는 장점이 있습니다.

#3. EOSIO 코드포크 체인들

최근 이오스 멀티버스에 EOSIO 코드 포크체인(Code fork chain)들이 하나둘씩 등장하고 있습니다. EOSIO 오픈 소스 소프트웨어를 활용한 가장 대표적인 최초 사례이자 맏형의 역할을 하는 이오스 메인넷이 2018년 6월 15일에 런칭하였고, 지난 11월 1일에는 워블리(WORBLI)가, 12월 9일에는 텔로스(TELOS)가 메인넷을 런칭하였습니다.

텔로스의 경우에는 이오스 메인넷의 거버넌스 구조를 개선하겠다는 목표와 함께 새로운 아키텍처를 제시하며 등장하면서 이슈가 되었고, 워블리의 경우에는 금융 부문에 특화된 특수목적형 블록체인으로 이오스 메인넷의 다수 BP들이 합류하면서 이슈가 되었습니다. 더불어 이오스 네이티브 토큰(EOS)을 보유하고 있는 토큰 홀더들에게 에어드랍(쉐어드랍)까지 진행하면서 이오스 커뮤니티로부터 많은 관심의 대상이 되었던 것 같습니다.

① 워블리(WORBLI): 9월 8일 스냅샷을 기준으로 해당 일자에 이오스 메인넷 계정에 보유하고 있는 EOS 네이티브 토큰과 동일한 수량의 WBI토큰을 쉐어드랍. (포탈에서 KYC 및 계정생성 후 별도의 클레임 필요)

②텔로스(TELOS): 이오스 메인넷의 제네시스 스냅샷을 복사+붙여넣기 한 정보를 가지고 EOS 네이티브 토큰과 동일한 수량의 TLOS토큰을 에어드랍하였습니다. (이오스 메인넷 제네시스 계정 소유자의 경우 별도의 클레임 불필요)

워블리와 텔로스가 EOS토큰 홀더들을 대상으로 에어드랍(쉐어드랍)을 진행했었기도 했고 이오스 메인넷 BP들이나 개발진들 중 일부가 툴킷이나 익스플로러를 제공하면서, 많은 홀더들이 “EOSIO 코드 포크 체인들을 이오스 메인넷과 어떠한 관계를 가지는 사이드체인(side chain)인 것으로 오해”하는 경우가 많습니다. 그러나 이들은 위에서도 설명했던 것처럼 EOSIO라는 오픈 소스 소프트웨어를 기반으로 한 EOSIO 멀티버스의 또다른 구성원으로서 이오스 메인넷과의 연결고리를 가지고자 에어드랍을 진행한 것일뿐 이오스 메인넷과 동일한 네트워크를 쓰는 것도, 종속관계를 가지는 것도 아닌 별도의 체인이라는 사실을 기억하셔야 합니다.

더불어, 현재 이오스 커뮤니티에서는 워블리와 텔로스가 가장 많이 알려져 있지만, 사실 워블리, 텔로스 말고도 EOSIO 오픈 소스 소프트웨어를 기반으로 이미 런칭된 코드 포크체인들이 다수 존재하며, 앞으로 새롭게 등장 예정인 프로젝트들도 굉장히 많습니다.

위에서 보실 수 있는 프로젝트들이 이미 런칭되었거나 앞으로 런칭예정인 EOSIO 코드 포크 체인들입니다. 아마 한 번쯤 들어보신 프로젝트들도 있으실거고, 어떤 프로젝트는 진짜 EOSIO 코드 포크 체인이 맞나 싶은 것도 있으실 것 같습니다.

현재 이오스포스(EOSforce)나 왁스(WAX), 인사이트 네트워크(Insights network) 등은 이미 런칭이 되었고 폴라리스(Polaris), 이오스블랙(eosBLACK), 게임엑스코인(GXC), 울트라(ULTRA), 오노(ONO), 유오스 네트워크(UOS), 보스코어(Boscore) 등 엄청나게 다양한 EOSIO 코드 포크 체인들이 EOSIO의 거대한 멀티버스에 합류할 예정입니다.

이렇게 새롭게 합류하는 체인들은 또 다른 테스트 베드가 되어 각자의 영역에서 이오스의 멀티버스를 계속해서 확장하고 기존의 거버넌스나 아키텍처의 개선, 새로운 아이디어나 개념의 채택 등을 통해 보다 효율적인 블록체인 네트워크로서 함께 성장하는데 공헌하는 역할을 해주지 않을까 많이 기대가 됩니다.

--

--

eosys
EOSYS
Editor for

The first EOS.io block producer candidate from Korea