이오스 REX에 대해서 알아보자

Juno
EOS Chrome
Published in
9 min readJan 8, 2019

--

최근들어 대두되고 있는 이오스의 REX (Resource Exchange)에 대해 알아보도록 하겠습니다. 이 기고 문은 EOS Cafe Block의 기고문을 참조하여 작성 되었습니다.

서론

2018년 8월 3일 Block.One CTO, Dan Larimer(EOS 총괄 개발)는 EOS 자원 임대 및 할당에 대한 기고문을 기재했습니다. 래리머는 이 기고문을 통해 EOS 보유자들이 자신들에게 제공 되었지만 사용하지 않는 CPU와 Network Bandwidth를 다른 사람에게 자유롭게 임대할 수 있게 하는 효율적인 임대시장 구축 방안을 커뮤니티에 제안 합니다.

원활한 임대 시장을 구축하기 위해선 반드시 시장의 수요와 공급이 만나 결정되는 적절한 가격 형성이 선행 되어야 합니다. 이 EOS 임대 시장의 주 수요자로 EOS 블록체인의 CPU와 NET Bandwidth를 사용하고자 하는 dAPP 개발자들을 들 수 있습니다. 임대 시장의 공급자는 EOS의 CPU와 NET Bandwidth를 지금 당장 사용하지 않는 모든 EOS 토큰 보유자가 됩니다. 결과적으로, 비교적 많은 양의 EOS 블록체인 컴퓨팅 자원을 사용하는 dAPP개발자들은 저렴한 가격으로 여분 EOS를 빌려서 사용할 수 있고, 일반 EOS 보유자들은 자신이 사용하지 않는 EOS를 임대하여 부수 수입을 얻을 수 있게 됩니다. 보다 효율적인 자원의 배분 및 활용을 달성할 수 있는 것입니다.

그렇다면 미래 EOS Mainnet에 공개 될 REX에 EOS 보유자들이 어떤 방식으로 참여할 수 있는지 차근차근 알아보도록 하겠습니다.

1단계: 현재 상태

REX 사용 1 단계: 현재 상태, Status Quo

철수는 지금 2000 EOS를 가지고 있습니다. 철수는 2000개의 EOS를 블록체인 네트워크에 스테이킹 해 두었고 이에 따라 2000 투표 파워(Voting Power)와 2000 CPU/NET Power를 가지게 되었습니다. 이것이 2019년 1월 4일 기준 일반 EOS보유자들이 자신이 보유한 EOS를 사용하는 방법 중 거래소에서 다른 가상화폐와 교환하는 것을 제외하고 가장 흔한 케이스 입니다. 2000 EOS를 스테이킹 한 철수는 30개의 다른 BP(블록 생성자)에게 투표를 진행할 수도 있고 자신이 스테이킹 한 만큼 EOS 블록체인에서 제공하는 CPU/NET Bandwidth를 사용할 수도 있습니다.

EOS 스테이킹 및 투표율

하지만 EOS 메인넷이 출범한지 7개월이 지났음에도 불구하고 투표율은 상당히 저조한 상태를 유지하고 있습니다. 2019년 1월 4일 기준 EOS사용자 중 약 50% 정도 자신의 EOS를 스테이킹하고 있으며 약 25%에 해당하는 사람들만 투표에 참여하고 있습니다. EOS 네트워크 분산화의 핵심은 투표입니다. 따라서, 투표에 참여하는 사람이 적으면 적을수록 전체 EOS 블록체인의 분산화 정도는 낮아지게 됩니다. 안정적인 분산화 블록체인 네트워크를 유지하기 위해선 반드시 많은 EOS 보유자들이 투표에 참여해야 합니다.

더불어, 스테이킹 비율이 50%라는 것은 아직까지 자신이 보유한 EOS를 스테이킹 하지 않고 EOS 블록체인의 컴퓨팅 자원을 사용하지 않은채 방치하는 비율이 50%에 달하는 것을 의미합니다. 이들 대부분은 자신이 보유한 EOS를 가상화폐 거래소에 사용하거나 또는 방치하고 있는 것입니다.

REX 참여 조건: 21개 이상의 BP에게 투표 완료 또는 PROXY를 통해 투표 권한 위임

REX는 이러한 EOS 블록체인의 저조한 투표율과 비 효율적인 컴퓨팅 자원의 사용을 해결하고자 커뮤니티에 제안된 것입니다. REX를 사용하고자 하는 모든 사용자는 반드시 21명 이상의 BP들에게 투표, 또는 Proxy를 통해 자신의 투표 권한을 위임해야 합니다. 이 참여 조건을 충족하지 않은 EOS 보유자는 REX를 사용할 수 없게 설계 되었습니다.

2 단계: REX Account으로 EOS 보내기

2 단계: REX로 원하는 만큼 EOS 보내기 Part 1.

REX가 정식 출범한 이후 철수는 자신이 보유한 2000 EOS 중 1000 EOS를 REX ACCOUNT로 보내게 됩니다. 그리고 철수는 1000 T-REX를 받게 됩니다. T-REX 는 타인에게 전송할 수 없습니다. T-REX는 철수가 1000개의 EOS를 REX ACCOUNT에 넣었다는 영수증과 같습니다.

2 단계: REX로 원하는 만큼 EOS 보내기 Part 2.

이제 철수는 1000개의 EOS와 1000개의 T-REX를 자신의 어카운트에 보유하게 됩니다. 철수가 REX ACCOUNT에 보낸 1000개의 EOS는 임대를 위해 시장에 제공됩니다. 1000개의 EOS를 보낸 철수의 REX ACCOUNT의 장부 가치는 1000 EOS로 기록 됩니다. 철수의 투표 파워는 2000 그대로 유지 되지만 REX에 1000개의 EOS를 보내서 CPU와 NET을 필요로 하는 사람들에게 제공해 주기 위해 시장에 내 놓았으니 철수가 직접 사용할 수 있는 CPU와 NET 파워는 1000으로 줄게 됩니다.

3 단계: REX 이자 수입 구조

3 단계: REX를 통한 이자 수입 구조

철수는 REX를 통해 어떻게 수익을 낼 수 있을까요? Resource Exchange, 즉 자원 거래소라는 이름만 생각했을 때 사람들은 직관적으로 ‘철수가 남에게 EOS를 빌려주고 그에 따른 이자 수익을 내는구나’라고 생각할 수 있습니다. 하지만 REX의 수익 구조는 좀 다릅니다. REX는 Name Auction과 Ram Fee로 사용자들에게 수익을 제공합니다. 이건 또 무슨 말일까요? 좀 더 자세히 살펴보도록 하겠습니다.

Name Auction

현재 EOS 에는 Name Auction이라는 기능이 있습니다. Name Auction은 말 그대로 ‘이름 경매’ 입니다. 사람들이 EOS 블록체인 계정을 생성할때 보통 알파벳과 숫자 1–5로 랜덤하게 생성되는 12자리의 어카운트 이름을 부여 받습니다. 하지만 어떤 사람은 자신의 영문 이름, 예를 들어 ‘jason,’ ‘mike’와 같은 이름을 EOS 계정 이름으로 사용하고 싶어합니다. 이들을 위한 것이 바로 Name Auction입니다. 하지만 자신이 원하는 이름을 만들고자하는 모든 사람이 Name Auction을 통해서 특정 이름을 선점할 수 있는 것은 아닙니다. Name Auction에 올라온 수 많은 이름 중 EOS 블록체인 전체에서 가장 비싼 금액으로 경매에 올라온 1개의 이름이 24시간 동안 새로운 입찰자가 없을 경우 낙찰이 되는 방식 입니다.

2019년 1월 7일 기준 현재 ‘p’라는 1개의 이름으로 7002개의 EOS가 입찰되어 있는 상태 입니다. 만약 24시간 동안 이 이름에 대해 새로운 입찰자가 없을 경우에 입찰자인 ‘wbywbywbywby’는 ‘p’라는 이름을 가질 수 있게 됩니다. 그리고 입찰자가 내건 7002개의 EOS는 eos.saving이란 EOS 블록체인 계정(account)으로 들어가게 됩니다. 바로 이렇게 Name Auction을 통해 새로 들어온 돈이 REX에 자신의 EOS를 넣어둔 철수에게 지급이 되는 것입니다.

RAM Fee 램 수수료

EOS 블록체인에서 사용자들은 RAM을 구매하기 위해 Bancor Relay로 구현된 RAM Market을 사용합니다. RAM Market에서 사용자들은 EOS를 주고 시장가격에 맞게 RAM 메모리를 구입하고 이를 블록체인 네트워크에서 사용 합니다. 이때 사용자들은 RAM 구매에 따르는 1% 거래 수수료를 EOS 블록체인에 지불하게 되는데 이 RAM Fee역시 REX에 EOS를 넣어둔 철수에게 지급이 되게 됩니다. (RAM에 대한 이해를 위한 링크, 뱅커 알고리즘에 대한 이해를 위한 링크)

3 단계: REX를 통한 이자 수입 구조와 늘어나는 장부 가치

다시 3 단계 그림으로 돌아가서 설명을 이어가 보겠습니다. 철수는 1000개의 EOS를 REX에 넣어두고 시간이 흘렀습니다. 이후 지속적으로 Name Auction과 RAM Fee로 새로운 EOS가 EOS 블록체인에 쌓이고 이 돈은 고스란히 REX에 흘러 들어오게 됩니다. Name Auction에서 10개의 EOS가 유입이 되고 RAM Fee로 20 EOS가 유입이 된다고 가정할 경우 2 단계에서 1000 EOS였던 철수의 REX 장부 가치는 1030 EOS로 늘어나게 됩니다.

4 단계: T-REX 영수증으로 EOS 청구

4 단계: T-REX 와 REX에 쌓여있는 EOS 교환

이제 철수는 급하게 돈이 필요하여 REX에서 돈을 찾고 싶어 합니다. 철수는 REX에 1000 EOS를 예치 할 당시 부여받은 영수증과 같은 1000 T-REX 를 가지고 있습니다. 철수가 이 1000 T-REX 영수증을 가지고 요구할 수 있는 금액은 자신이 처음에 예치한 초기 투자금 1000 EOS와 지금까지 철수의 REX account에 유입된 30 EOS 입니다. 만약 철수가 지금 1000 T-REX 영수증을 제시하지 않는다면 1030개 보다 더 많은 양의 EOS를 얻을 수 있을 것입니다.

결론

지금까지 EOS의 Resource Exchange, REX에 대해 알아 보았습니다. REX는 현재 EOS Jungle Testnet에서 테스팅 진행 중이며 조만간 EOS Mainnet에 런칭이 될 것으로 보입니다. REX 개발 진행 상황은 이 링크에서 확인 가능합니다. REX 개발의 주 취지는 EOS 블록체인 내 투표율을 높이고 CPU 와 NET Bandwidth 자원을 효율적으로 활용하기 위함입니다. 앞으로 REX가 어떤 방향으로 EOS 블록체인을 개선해 나갈지 지켜 봐야겠습니다만, 굉장히 흥미로은 프로젝트임은 확실합니다. 저희 EOS CHROME팀은 Resource Exchange가 EOS의 dAPP layer에서개발이 되는 것이 아닌 EOS.IO software layer에서 개발되고 적용되는 만큼 EOS CHROME에서도 REX기능을 적극 도입할 수 있을것으로 판단 됩니다.

Juno Yu

--

--