Cosmos、Tendermint란?

최근 Binance가 Binance Chain을 발표하며 큰 화제가 되었습니다. 분산형 거래소 기반으로 Binance와 해당 커뮤니티를 통해 개발된 이번 Binance Chain은 ‘Cosmos’나 ‘Tendermit’ 기술을 채용해 많은 주목을 받았습니다. 이번 기사에서는 그런 ‘Cosmos’나 ‘Tendermit’에 대해 알아보도록 하겠습니다.

Cosmos로 들어가기 전에

‘Cosmos’에 대해 이야기하기 전에 알아둬야 할 것 중 ‘확장성 문제’라는 것이 있습니다. 알고 계신 분들도 많으실 겁니다. Bitcoin이나 Ethereum을 사용하는 인원(네트워크에 참가하는 사람)이 늘어나면 한 블록의 용량이 정해져 있는 설계상 송금이 막혀 결과적으로 송금 수수료가 급등하는 등의 문제가 발생합니다. 2017년 12월에 이 문제를 직접 겪으신 분도 적지 않을 것입니다. 바로 이 문제를 해결하기 위해서는 체인(chain) 자체의 처리를 빨리 하거나(퍼스트레이어 영역), 체인 밖에서의 움직임을 빠르게 할 필요가 있습니다(세컨드레이어 영역). ‘Lightning network’와 ‘Plasma’ 등은 세컨드레이어 영역입니다. 하지만 ‘Cosmos’는 퍼스트레이어 영역의 소프트웨어라고 할 수 있습니다.

Cosmos란

‘Cosmos’란 보다 광범위한 블록체인 에코 시스템을 위한 프로젝트입니다. Cosmos 네트워크에서는 ‘Hub’와 ‘Zone’이라는 2개의 독립된 블록체인이 존재합니다.

‘Hub’의 역할은 다양한 블록체인과 동기화하여 ‘Zone’에 토큰이나 데이터를 모으는 것입니다. ‘Hub’의 영역에서는 Bitcoin이나 Ethereum 등이 다른 블록체인을 연결해 블록체인끼리의 통신을 관장하는 IBC 프로토콜(Inter-Blockchain Communication Protocol)이라는 기술에 스왑이 가능합니다.

Bitcoin이나 Ethereum 등 다른 블록체인의 가교 역할로서 확장성의 대폭 향상과 Cosmos 네트워크를 통한 다른 블록체인끼리의 스왑도 가능합니다.

[출처: blockgeeks.com]

Cosmos의 기반이 되는 Tendermint

‘Cosmos’를 이해하는데 있어서 ‘Tendermint’ 시스템은 반드시 짚고 넘어가야 합니다. Tendermint는 Tendermint Core와 ABCI(Application Blockchain Interface) 두 가지로 구성되어 있습니다.

Tendermint Core란 컨센서스 알고리즘(PoS)으로 이루어져 있습니다. Bitcoin의 컨센서스 알고리즘(Pow)은 각 블록의 계산을 가장 빨리 마친 마이너에게 보수를 지급합니다. 아시는 분들도 많으시겠지만 Bitcoin의 경우 부정이나 문제가 없도록 6블록을 생성한 후 처음으로 파이널리티(완전성)가 결정됩니다. 이 시스템은 승인에 다소 시간이 걸립니다(산출이 끝날 때까지의 기간도 설정되어 있어 마이너의 hashpower에서 10분 정도면 블록이 생성됩니다).

Tendermint Core는 컨센서스 알고리즘(PoS)을 채택한 컨센서스 엔진을 말합니다. PoS를 채용하여 블록의 완전성까지의 시간을 단축했습니다. PoS에서는 1/3까지 검증 노드에 정지나 부정이 있어도 나머지 2/3의 노드만 괜찮으면 부정 없는 블록이라고 증명할 수 있습니다. 이 구조로 인해 PoS 화폐에는 33% 공격이 통용됩니다. 다만 참여하는 노드의 수가 늘어날수록 33%공격을 하기는 더 어려워집니다.

또한 Tendermint Core는 온갖 프로그래밍 언어로 쓰여진 프로그램 전이 머신을 사용해 많은 머신에서 안전하게 복제합니다. 이를 통해 개발자는 다양한 프로그래밍 언어로 개발할 수 있게 됩니다.

[참고: github.com/tendermint/tendermint]

 

또 하나의 구성요소인 ‘ABCI(Application Blockchain Interface)’는 Tendermint Core의 컨센서스 엔진과 외부 애플리케이션을 연결하는 역할을 맡고 있습니다. 다른 프로젝트나 Dapps 개발자들은 이 ABCI(Application Blockchain Interface)를 개발한 Dapps로 연결할 수 있습니다.

[참고: github.com/tendermint/abci]

Cosmos에서 사용되는 토큰은 Atom과 Photon

‘Cosmos’ 에서는 Atom 토큰과 Photon 토큰을 사용합니다.

ATOM 토큰은 기본적으로 스테이킹용이기 때문에 스테이크를 통해 Cosmos 네트워크에 참가할 수 있습니다. 컨센서스 알고리즘의 특성상 많은 Atom을 스테이크해 두면 보수를 받을 수도 있습니다. 몇몇 거래소에 상장되어 있어 거래도 가능합니다.

시장 랭크#18

시가 총액 880,829,008 USD

24시간 거래량$ 77,573,164 USD

순환 공급 190,688,439 Atom

총공급 237,928,231 Atom

[2019.5.28 기준]

Photon은 Cosmos 네트워크상에서 Gas 역할을 합니다. Photon에 대해서는 다음 기회에 설명 드리도록 하겠습니다.

정리

이번에는 Cosmos에 대해 소개를 드렸습니다. ‘Cosmos’는 암호자산(가상통화) 중에서도 장래성이 있는 화폐라고 생각됩니다. 이번 기회에 어느 정도 보유해 두는 것도 좋을 것 같습니다.