검수요청.png검수요청.png

"코스모스코인"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
잔글
잔글 (같이 보기)
 
(사용자 11명의 중간 판 149개는 보이지 않습니다)
1번째 줄: 1번째 줄:
[[파일:코스모스코인 로고.png|썸네일|200픽셀|'''코스모스코인'''(Cosmos Coin) 로고]]
+
[[파일:코스모스코인 로고.png|썸네일|200픽셀|'''코스모스코인'''(Cosmos Coin)]]
[[파일:코스모스코인 글자.png|썸네일|300픽셀|'''코스모스코인'''(Cosmos Coin) 로고와 글자]]
+
[[파일:코스모스코인 글자.png|썸네일|300픽셀|'''코스모스코인'''(Cosmos Coin)]]
 +
[[파일:텐더민트 글자.png|썸네일|300픽셀|'''[[텐더민트]]'''(Tendermint)]]
  
'''코스모스코인'''<!--코스모스 코인-->(Cosmos Coin, 宇宙币) 또는 간략히 '''코스모스'''(Cosmos)는 서로 다른 블록체인을 연결하는 [[인터체인]]을 위한 [[암호화폐]]이다. 코스모스체인은 각각 독립적으로 존재하는 여러 [[블록체인]]들이 서로 통신할 수 있도록 [[네트워크]]로 연결해 마치 블록체인 인터넷(internet of blockchain)처럼 상호 연계되어 작동하도록 하는 역할을 한다. 코스모스 네트워크는 [[존]](zone)이라고 불리는 여러 개의 독립적인 병렬 블록체인들로 구성된다. 각각의 존은 [[텐더민트 비잔틴 장애 허용]](TBFT; Tendermint Byzantine Fault Tolerant) 합의 알고리즘으로 작동하고, 코스모스는 그 아래에서 각각의 존들을 연결하는 기간망으로 작동한다.<ref>강석오 기자, 〈[http://www.datanet.co.kr/news/articleView.html?idxno=110567 보스코인·코스모스, ‘블록체인 인터넷’ 구축 협력]〉, 《데이터넷》, 2017-05-10</ref> 코스모스체인의 창시자는 한국계 미국인인 [[재 권]]<!--재권-->(Jae Kwon, 권용재)이다.
+
'''코스모스코인'''<!--코스모스 코인-->(Cosmos Coin, 宇宙币) 또는 간략히 '''코스모스'''(Cosmos)는 서로 다른 블록체인을 연결하는 [[인터체인]]을 위한 [[암호화폐]]이다. 코스모스체인은 각각 독립적으로 존재하는 여러 [[블록체인]]들이 서로 통신할 수 있도록 [[네트워크]]로 연결해 마치 블록체인 인터넷(internet of blockchain)처럼 상호 연계되어 작동하도록 하는 역할을 한다. 코스모스 네트워크는 [[존]](zone)이라고 불리는 여러 개의 독립적인 병렬 블록체인들로 구성된다. 각각의 존은 [[텐더민트 비잔틴 장애 허용]](TBFT; Tendermint Byzantine Fault Tolerant) 합의 알고리즘으로 작동하고, 코스모스 허브는 각각의 존들을 연결하는 기간망으로 작동한다.<ref>강석오 기자, 〈[http://www.datanet.co.kr/news/articleView.html?idxno=110567 보스코인·코스모스, ‘블록체인 인터넷’ 구축 협력]〉, 《데이터넷》, 2017-05-10</ref> 코스모스체인을 개발한 회사는 '''[[텐더민트]]'''(Tendermint)이고, 창시자는 한국계 미국인인 '''[[재 권]]'''<!--재권-->(Jae Kwon, 권용재)이다.
 +
 
 +
==개요==
 +
코스모스는 서로 다른 블록체인을 연결하는 '인터체인' 분야 프로젝트다. 독립 블록체인들이 서로 통신할 수 있도록 연결하는 플랫폼으로, ‘블록체인의 인터넷’을 표방한다. 반면 지금 대부분의 블록체인들은 상호운용성 없이 별개로 존재한다. 이더리움 네트워크에서 비트코인을 쓸 수 없는 것도 상호운용성이 없어서다. 또한, 기존 [[블록체인]] 프로젝트의 경우, [[PoW]] 방식의 에너지 비효율, 거래량 처리 등 확장성의 한계, 미성숙한 [[거버넌스]] 등의 결함이 지적되어 왔다. 이외에도 암호화폐의 상호운용을 위해 제 3자인 [[거래소]]에서 거래를 승인받고 거래가 완료되기까지 오랜 시간이 걸리고, 거래소의 보안이 취약한 문제도 있다.<ref>Ash Han 한승환, 〈[https://brunch.co.kr/@ashhan/32 코스모스와 아톰 – Cosmos&Atom Token]〉, 《브런치》, 2016-12-24</ref> 가장 이상적인 해결책은 수천 개의 블록체인을 확장성과 보안성이 보장된 방식으로 연결시키는 것이다. 이를 위해 코스모스는 허브와 존(Hubs and Zones)이라는 두 종류의 블록체인 구조를 만들었다. 존은 서로 다른 각각의 블록체인이며 허브는 존을 함께 연결하기 위해 특별히 고안된 블록체인이다. 코스모스 네트워크의 허브와 존들은 블록체인 간 통신 프로토콜을 통해 상호 통신한다. 토큰들은 존들 간 거래소의 유동성 없이 허브를 통과하여 하나의 존에서 다른 존으로 안전하고 빠르게 전송될 수 있다. 코스모스 허브는 각 존이 보유한 토큰 총액을 추적하며, 누구든지 코스모스 허브에 새로운 존을 연결할 수 있어 새로운 블록체인과도 호환성을 가진다.
 +
이를 위해 코스모스는 블록체인을 쉽게 만들 수 있어야 한다는 생각으로, 텐더민트 코어와 코스모스 SDK로 블록체인을 강력하고 쉽게 개발할 수 있게 했다. 그리고 IBC 프로토콜과 페그존을 통해 다른 종류의 블록체인들이 서로 가치(토큰)와 데이터를 거래하는 동시에 자체 블록체인의 권한을 유지하도록 했다. 또, 코스모스는 수평적 및 수직적 확장성 솔루션을 통해 블록체인 애플리케이션이 수백만 명의 사용자로 확장될 수 있도록 했다. 무엇보다 코스모스는 제품이 아니라 모듈형, 적응형, 상호교환이 가능한 도구 세트를 기반으로 구성된 생태계다. 2017년 4월 코스모스코인은 한국의 암호화폐 거래소인 [[코인원]](Coinone)을 통하여 [[ICO]]를 진행하여, 불과 1분 만에 펀딩 목표 금액인 1,000만 달러(약 110억원)를 투자 자금으로 모금 완료했다.<ref name="강희영">강희영 기자, 〈[http://www.cbci.co.kr/news/articleView.html?idxno=322674 코인원, 전 세계 최초 ‘코스모스 블록체인’ 아톰(ATOM) 상장]〉, 《CBC뉴스》, 2019-02-19</ref>
 +
 
 +
==주요 인물==
 +
[[파일:재 권.jpg|썸네일|200픽셀|'''[[재 권]]'''<!--재권-->(Jae Kwon, 권용재) 코스모스코인 창시자]]
 +
* [[재 권]] :  재 권(Jae Kwon)은 코스모스코인(Cosmos Coin)의 창시자이다. 한국계 미국인으로, 한국식 이름은 권용재이다. 미국 코넬대학교에서 컴퓨터 공학을 전공한 그는, 작업증명방식(PoW)의 결점인 나씽 앳 스테이크(Nothing at Stake)를 악용한 공격 문제를 해결하기 위해 텐더민트(Tendermint) 합의 알고리즘을 만들었고 이로 인해 블록체인 업계의 유명 인사로 떠올랐다. 그는 지금도 텐더민트를 개선하고 생태계를 확장하기 위한 개발과 연구에 집중하고 있다. 현재 그는 스위스 추크의 인터체인 재단(Interchain Foundation)에서 이사직을 맡아 코스모스(Cosmos)의 비전을 홍보하고 퍼블릭 블록체인의 상호 운용성과 확장성을 높이기 위해 노력하고 있다.
  
 
==등장배경==
 
==등장배경==
[[파일:재 권.jpg|썸네일|200픽셀|'''[[재 권]]'''<!--재권-->(Jae Kwon, 권용재) 코스모스코인 창시자]]
+
[[비트코인]]을 시작으로, 2세대 [[이더리움]], 3세대 [[이오스]], [[카르다노|카르다노(에이다)]], [[테조스]], [[네오]] 등 [[퍼블릭 블록체인]]들이 속속 등장하고 있다. 1세대 [[블록체인]]인 비트코인은 2008년에 만들어진 [[P2P]] (peer-to-peer) 디지털 통화이다. [[PoW]] 합의 알고리즘을 사용하고, 블록체인 상에서 운영되는 최초의 분산형 애플리케이션이었다. 당시 이 분산형 애플리케이션을 개발하기 위해서는 비트코인 코드베이스를 포킹하거나 그 위에 바로 구축하는 방법 밖에 없었다. 그러나 비트코인 코드베이스는 매우 단일화되어 있었고, 네트워킹, 합의 및 애플리케이션이라는 세 가지 층 모두가 혼재되어 있었다. 또한 비트코인 스크립팅 언어는 제한적이고, 사용자 친화적이지도 않았다.
  
[[비트코인]] 프로젝트를 시작으로 많은 [[퍼블릭 블록체인]] 프로젝트들이 발표되고 있다.<ref name="목적">Jae Kwon, Ethan Buchman, 〈[https://docs.google.com/document/d/1o6fXhxb0ROU25eKc2WDzOoTLmakcdvvQ271ClsbBbbs/edit purpose.MD (kor)]〉</ref> 각각의 프로젝트는 금융, 저작권, 개인정보 보호, 소셜 미디어, 무역 등 다양한 분야에 새로운 가치를 만들어 내는 것을 목표로 하고 있다.<ref name="계획">Jae Kwon, Ethan Buchman,  〈[https://docs.google.com/document/d/1AKdA8EoqbTxdrQjxUxONRxb10177JaMSloj2PbYtSXo/edit plan (kor)]〉</ref> 하지만, [[암호화폐]] 간에 상호운용이 어려워, 각자의 생태계에 고립되어 있다. 그리고 제3자인 [[거래소]]에서 거래를 승인받고 거래가 완료되기까지 오랜 시간이 걸리기도 하고, 거래소의 보안이 취약한 문제가 있다.<ref>Ash Han 한승환, 〈[https://brunch.co.kr/@ashhan/32 코스모스와 아톰 – Cosmos&Atom Token]〉, 《브런치》, 2016-12-24</ref> 또한, 기존의 [[블록체인]] 프로젝트의 경우, [[PoW]] 방식의 에너지 비효율, 거래량 처리 등 확장성의 한계, 미성숙한 [[거버넌스]] 등의 결함이 지적메커니즘의 모습을 보여왔다.<ref name="목적"></ref> [[라이트닝 네트워크]]는 특정 거래들을 원장에 기록하지 않으면서 비트코인의 확장성에 도움을 주고 소액 결제나 프라이버시 보호형 지급 [[플랫폼]]에 적합하지만 보다 범용적인 확장에는 적합하지 않을 수 있다.<ref name="계획"></ref>
+
2014년 [[비탈릭 부테린]]은 분산형 애플리케이션을 구축하기 위해 비트코인과는 차별화된 모든 종류의 프로그램을 배포할 수 있는 단일 블록체인인 [[이더리움]]을 내놓았다. 이더리움은 애플리케이션 계층을 EVM(Ethereum Virtual Machine)이라는 가상 머신으로 전환함으로써 이를 달성했다. 이 가상 머신은 개발자가 이더리움 블록체인에 배포할 수 있는 [[스마트 계약]]을 처리 할 수 있다. 이 새로운 접근법으로 인해 수천 명의 개발자가 [[디앱]]을 만들 수 있었다. 그러나 이 접근법에도 다음과 같은 문제점이 있었다. 첫 번째는 확장성이다. 이더리움 위에 구축된 디앱의 [[TPS]]는 15건이다. 이것은 PoW 사용과 이더리움 디앱들이 단일 블록체인의 제한된 리소스를 놓고 경쟁하기 때문에 생긴 문제이다. 두 번째는 사용성이다. EVM은 모든 사용 사례를 수용해야 하는 샌드박스이기 때문에 평균 사용 사례에 대해 최적화돼 있다. 이는 개발자가 디앱의 설계와 효율성을 절충해야한다는 것을 의미한다. 무엇보다도 몇 가지 프로그래밍 언어로 제한되어 있어 코드 자동 실행을 구현할 수 없다. 마지막은 권한의 문제다. 각각의 디앱이 모두 동일한 기본 환경을 공유하기 때문에 주권에 제한이 있다. 기본적으로 이더리움은 디앱 계층과 기본 환경 계층이라는 두 개의 관리 계층을 만든다. 전자는 후자에 의해 제한된다. 디앱에 버그가 있는 경우, 이더리움 플랫폼 자체의 거버넌스에 의해 승인되지 않으면 아무 것도 수행 할 수 없다. EVM에 새로운 기능이 필요한 디앱의 경우 이더리움 플랫폼의 거버넌스에 전적으로 의존해야 한다. 즉, 이더리움은 스마트 계약의 형태로 사용자 맞춤형 로직을 배포할 수 있는 가상 머신 블록체인을 제공하여 디앱 개발을 단순화했다. 그러나 블록체인 자체 개발을 단순화한 것은 아니었다. 비트코인과 마찬가지로 이더리움은 포크하기가 어렵고, 사용자 맞춤형으로 제작하기 어려운 모놀리식 기술 스택으로 남아 있다.  
  
가장 이상적인 해결책은 병렬의 블록체인들이 각자의 보안을 유지하면서 호환이 되는 것이다.<ref name="목적"></ref> [[작업증명]]의 경우 이것이 상당히 어렵다는 것이 증명되었다. 코스모스는 [[]](Zone)이라고 불리는 많은 독립된 블록체인의 네트워크이고, [[허브]](Hub)는 단순한 거버넌스 메커니즘을 통해 [[네트워크]]가 적응하고 [[업그레이드]]할 수 있게 하는 ‘다중 자산 지분 증명 암호화폐’이다.<ref name="계획"></ref> 코스모스 네트워크의 허브와 존들은 블록체인 간 통신프로토콜을 통해 상호 통신한다.<ref name="목적"></ref> 이 프로토콜은 블록체인들을 위한 가상의 [[UDP]](User Datagram Protocol)와 [[TCP]](Transmission Control Protocol) 역할을 한다.<ref name="계획"></ref> 토큰들은 존들간 거래소의 유동성 없이 허브를 통과하여 하나의 존에서 다른 존으로 안전하고 빠르게 전송될 수 있다.<ref name="목적"></ref> 코스모스 허브는 각 존이 보유한 토큰 총액을 추적하며, 누구든지 코스모스 허브에 새로운 존을 연결할 수 있어 새로운 블록체인과도 호환성을 가진다.<ref name="계획"></ref>
+
이더리움의 문제점은 이더리움에만 국한되지 않고 모든 사용 사례에 맞는 단일 플랫폼을 만들려고 한는 모든 블록체인에 적용된다. 즉, 현재 블록체인의 가장 큰 문제 중 하나는 블록체인이 기존 블록체인과 상호 운용이 불가능하며, 심지어 암호화폐들 자체 간에도 상호 운용이 어렵다는 점이다. 각 화폐는 자체 블록체인과 자체 커뮤니티를 가지면서 지나치게 독립적이다. 이러한 문제를 해결하기 위해 코스모스가 탄생한 것이다. 코스모스의 비전은 개발자들이 서로 소통을 할 수 있는 환경에서 블록체인을 만듦으로 블록체인 간의 장벽을 무너뜨리는 것이다. 최종 목표는 분산된 방식으로 서로 통신할 수 있는 블록체인 네트워크인 ‘블록체인의 인터넷’을 만드는 것이다. 코스모스를 이용하면 블록체인들은 자신의 블록체인에 대한 권한을 가질 수 있고, 트랜잭션을 신속하게 처리하며 생태계의 다른 블록체인과 통신할 수 있어 다양한 사용 사례에 최적으로 사용할 수 있다. 코스모스는 [[텐더민트]], 코스모스SDK 및 IBC 프로토콜과 같은 오픈 소스 도구 세트를 통해 사람들이 맞춤식, 안전성, 확장성 및 상호 운용 가능한 블록체인 디앱을 신속하게 구축 할 수 있도록 설계돼 있다.<ref name= "공식 홈페이지">코스모스코인 공식 홈페이지 - https://cosmos.network/intro</ref>
  
 
==특징==
 
==특징==
 +
[[파일:텐더민트 글자.png|썸네일|300픽셀|'''[[텐더민트 비잔틴 장애 허용]]'''(TBFT)]]
 +
 +
=== 텐더민트 코어===
 +
[[파일:코스모스 구조.jpg|썸네일|500픽셀|코스모스 블록체인 구조]]
 +
최근까지 블록체인을 구축하려면 처음부터 3개의 층(P2P 네트워킹 층, 합의 층, 애플리케이션 층)을 모두 구축해야 했다. 텐더민트 코어는 이 3개의 층 중에서 P2P 네트워킹 층과 합의 층을 일반 엔진으로 묶어 개발자가 복잡한 기본 프로토콜이 아닌 디앱 개발에 집중할 수 있도록 지원하는 솔루션이다. 즉, 텐더민트 코어는 두 개의 층, 즉 합의 층과 P2P 네트워킹 층으로 구성된 프로토콜이다. 결과적으로 텐더민트는 수백 시간의 개발 시간을 절약하게 한다. 텐더민트의 유용함은 사용자보다는 디앱 개발자에게 작용한다. 또, 텐더민트는 텐더민트 코어 엔진 내에서 사용되는 비잔틴 장애 허용(BFT) 합의 알고리즘의 이름으로도 사용된다. 텐더민트 코어 엔진은 ABCI(Application Blockchain Interface)라는 프로토콜에 의해 애플리케이션 층에 연결된다. 이 프로토콜은 모든 프로그래밍 언어로 래핑할 수 있으며, 개발자들이 그들의 필요에 맞는 언어를 선택할 수 있게 해준다. 그러나 이게 끝이 아니다. 텐더민트 코어를 최첨단 블록체인 엔진으로 만드는 속성은 다음과 같다.
 +
 +
* '''퍼블릭/프라이빗 블록체인''' : 텐더민트 코어는 블록체인의 P2P 네트워킹 층과 합의 층만 처리하는데, 이는 노드들이 트랜잭션을 전파하고, 검증자들이 블록체인에 추가하기 위한 일련의 트랜잭션 합의를 돕는다는 것을 의미한다. 반면 검증자들을 선출하는 방법을 정의하는 것은 애플리케이션 층의 역할이다. 따라서 개발자는 텐더민트 코어 엔진 위에 퍼블릭 및 프라이빗 블록체인을 모두 구축할 수 있다. 만약 애플리케이션 층이 얼마나 많은 토큰을 보유하고 있느냐를 기준으로 검증자를 선출하는 방법을 정의하는 경우, 이 블록체인은 PoS(Proof-of-Stake)로 특성화될 수 있다. 그러나 애플리케이션 층에서 사전에 승인된 제한된 세트만 검증자가 될 수 있다고 정의하면, 블록체인은 허가형 또는 프라이빗으로 특성화될 수 있다. 이런 식으로 개발자는 블록체인의 검증자 선출 방식을 사용자 맞춤형으로 자유롭게 정할 수 있다.
 +
* '''고성능''' : 텐더민트 코어는 1초 단위로 블록 시간을 가질 수 있으며 초당 최대 수천 건의 트랜잭션을 처리 할 수 ​​있다.
 +
* '''즉결성''' : 텐더민트 합의 알고리즘의 속성은 즉각적인 최종성이다. 검증자의 1/3 이상이 정직한(byzantine) 이상, 포크는 결코 만들어지지 않는다. 또, 사용자는 블록이 생성되자마자 트랜잭션이 완료되었는지 확인할 수 있다. 반면 비트코인이나 이더리움과 같은 PoW 블록체인에서는 그렇지 않다.<ref name= "공식 홈페이지"></ref>
 +
 +
====텐더민트 비잔틴 장애 허용====
 +
텐더민트는 [[비트코인]]의 [[작업증명]](PoW) 합의 알고리즘이 지닌 속도, 확장성, 과다한 전기료 등의 문제를 해결하기 위해 2014년에 탄생했다.<ref>안성주지몬, 〈[http://potensj.tistory.com/15 (백서 정리)코스모스 백서 정리(Cosmos Whitepaper)-1]〉, 《티스토리》, 2018-07-31</ref> 1988년 [[MIT]]에서 개발한 [[BFT 알고리즘]]을 개선하여 [[지분증명]](PoS) 알고리즘의 Nothing-at-stake 문제를 해결한 최초의 프로젝트다. 즉, 코스모스는 [[텐더민트 BFT 합의 알고리즘]]에 기반한 [[퍼블릭 블록체인]]이다.
 +
 +
오늘날, 사실상 모든 비트코인 모바일 지갑은 신뢰할 수 있는 서버를 사용하여 트랜잭션 검증을 제공한다. 이것은 작업 증명의 트랜잭션이 확정된 것으로 간주되기 전에 많은 확인을 기다려야 하기 때문이다. 이렇다 보니 코인베이스와 같은 서비스에서는 이미 이중 지출 공격이 나타나기도 했다. 다른 블록체인 합의 알고리즘과 달리, 텐더민트는 즉각적이고 안전한 모바일-클라이언트 지불 검증을 제공한다. 텐더민트는 절대 포크를 하지 않도록 설계돼 있어 모바일 지갑은 즉각적으로 거래 확인을 받을 수 있어 스마트 폰에서 신뢰가 필요없는 결제를 실현할 수 있다.
 +
 +
코스모스의 검증자들은 비트코인의 채굴자들과 비슷한 역할을 하지만 대신 암호서명을 사용해 투표를 한다. 즉, 검증자는 다음 블록에 대해 합의하기 위해 암호서명 투표를 전달하여 합의 프로토콜에 참여한다. 검증자의 투표 권한은 투표권이 담보로 묶인 토큰의 양(PoS)에 따라 결정된다. 이 합의 알고리즘은 고정된 알려진 검증자들을 필요로 하며, 각각의 검증자는 공개키로 식별된다. 검증자는 한 번에 한 블록씩 합의에 도달할 수 있다. 한 블록에 대한 합의를 위한 투표는 각 라운드에서 진행된다. 각 라운드에는 라운드 리더 또는 블록을 제안하는 제안자가 있다. 그런 다음 검증자들은 제안된 블록을 수락할지 아니면 다음 라운드로 넘어갈지에 대해 단계적으로 투표한다. 라운드 제안자는 검증자들의 투표권에 비례하여 순서화된 검증자 목록에 의해 선택된다.
 +
 +
검증자가 아닌 노드들은 ‘[[아톰]]’이라고 부르는 그들의 지분 토큰을 임의의 검증자에게 위임하여 블록 수수료와 아톰 보상을 얻을 수는 있으나, 위임된 검증자가 해킹당하거나 [[프로토콜]]을 위반할 경우, 처벌을 받게 될 수도 있다.<ref name="황치규기자">황치규기자, 〈[http://www.thebchain.co.kr/news/articleView.html?idxno=2636 (심층분석)인터블록체인 플랫폼 코스모스, 개발 어디까지 왔나?]〉, 《더비체인》, 2018-12-05</ref>
 +
 +
====검증자====
 +
텐더민트는 검증자 수가 많아질수록 통신의 복잡도가 증가하여 속도가 느려진다.<ref name="김가현기자">김가현기자, 〈[https://blockinpress.com/archives/9423 “3세대 코스모스, 무엇이 다른가”...첫 코스모스 아카데미 서울서 열려]〉, 《블록체인프레스》, 2018-10-03</ref> 반면 충분한 검증자들을 통해 블록체인의 전 세계 분산화 및 매우 빠른 이체확인 속도를 제공할 수 있다.<ref name="블록인프레스">블록인프레스, 〈[https://blockinpress.com/archives/4919 코스모스의 가치에 대한 이해]〉, 《블록인프레스》, 2018-04-26</ref> 또한 대역폭이나 저장공간 및 병렬 컴퓨팅 용량이 증가하면서 더 많은 검증자들을 지원할 수 있다.<ref name="김민석"></ref> 텐더민트는 처음 최대 검증자 수가 100명이 되도록 제한하고 있으며 10년동안 매년 13%비율로 증가하여 최종적으로는 총 300명의 검증인을 가질 것이다.<ref name="kim066"></ref> 허용된 검증자 수보다 많은 경우를 제외하고는 누구든지 검증자이 될 수 있다. 만약 검증자 수가 허용치 이상인 경우, 가장 적은 아톰을 보유한 검증자보다 더 높은 아톰을 담보로 제공해야 하며, 이런 경우 새로운 검증자가 기존 검증자를 대체할 수 있다. 검증자 관련 인센티브는 아래와 같다.
 +
 +
* '''검증자 처벌'''  : 동일한 높이 또는 라운드에서 이중 서명 혹은 텐더민트 합의 프로토콜을 위반한 행위는 즉시 발견할 수 있기 때문에, 검증자는 해당 지위를 상실하고 예치된 보증금과 지분을 상당히 잃을 수 있다.<ref name="Peter Yoon"></ref> 때때로 지역 네트워크 단절, 전원 장애나 그 밖의 이유로 검증자는 단절될 수 있다. 그 경우 과거의 투표가 이루어지지 않은 횟수를 고려하여 일정 수준 이상인 경우 검증인을 비활성화하고 지분의 일정 부분을 잃게 한다. 특정 악의적 행위는 블록체인 내 명확한 증거가 남지 않을 수도 있는데, 이런 경우 압도적 다수의 합의가 있다면, 검증자들은 외부에서 합의하여 악의적 검증자를 제외 시킬 수 있다.<ref name="김가현기자"></ref> 투표권의 1/3 이상이 악의적으로 연합하여 코스모스를 중단시키거나 이들이 악의적 행동의 증거가 블록체인으로 들어오지 않게 검열하여 삭제하는 경우, 허브는 하드포크를 통한 블록 재조정 프로포잘로 복구되어야 한다.<ref name="krexchange"></ref>
 +
* '''인센티브''' : 코스모스 검증자들은 아톰뿐만 아니라 어떤 유형의 토큰이라도 이체 수수료로 받을 수 있다.<ref name="블록인프레스"></ref> 각 검증자는 교환비율과 이체방식을 주관적으로 선택할 수 있다. 징수된 수수료는 세금을 제외하고 본딩된 아톰에 비례하여 주주들에게 재분배된다.<ref name="publicworker"></ref> 투표권을 다른 검증자에게 위임하는 아톰 보유자는 일정 수준의 수수료를 위임받은 검증자에게 지급한다.<ref name="kim066"></ref>
 +
* '''세금''' : 이체된 수수료 중 지금준비금 세금은 ‘지급준비금 풀’에 충당이 되며 이는 코스모스 네트워크의 보안과 가치를 높이는 데 이용된다.<ref name="김민석"></ref>
 +
* '''해커에 대한 인센티브''' : 코스모스 허브 보안의 핵심은 검증자인데, 이들이 해킹당할 경우 네트워크 전체의 보안이 위험해질 수 있다.<ref name="krexchange"></ref> 따라서 코스모스 허브는 해커들이 특정 검증자에게 해킹당한 사실을 알린다면, 해킹이 확인된 즉시 해당 검증자와 위임자들은 비활성화되고, 검증자과 위임자들의 아톰이 감소하며 해커는 그만큼 보상을 받는다(약 5%).
 +
 +
===코스모스 SDK===
 +
텐더민트 코어는 블록체인의 개발 시간을 몇 년에서 몇 주 단위로 단축하지만, 처음부터 안전한 ABCI-app을 구축하는 것은 여전히 어려운 작업이다. 이것이 코스모스 SDK가 존재하는 이유다. 코스모스 SDK는 텐더민트 코어 위에 안전한 블록체인 애플리케이션을 구축하는 과정을 간소화하는 일반화된 프레임워크다. 그것은 다음의 두 가지 주요 원칙에 기반한다.
 +
 +
* '''모듈성''' : 코스모스 SDK는 모든 코스모스 도구와 마찬가지로 모듈형으로 설계되었다. 코스모스 SDK의 목표는 개발자가 애플리케이션의 각 기능을 처음부터 코딩하지 않고도 애플리케이션별 블록체인을 쉽게 시작할 수 있는 모듈 생태계를 만드는 것이다. 누구나 코스모스 SDK 용 모듈을 만들 수 있으며, 블록체인에서 준비된 모듈을 사용하는 것은 모듈을 애플리케이션으로 가져오는 것만큼 간단하다. 예로, 텐더민트 팀은 코스모스 허브에 필요한 기본적인 모듈 세트를 만들고 있다. 이 모듈들은 개발자가 자신의 애플리케이션을 구축할 때 사용할 수 있다. 또한 개발자는 새로운 모듈을 만들어 애플리케이션을 사용자 맞춤형으로 만들 수 있다. 코스모스 네트워크가 발전함에 따라 SDK 모듈 생태계가 확장되어 복잡한 블록체인 애플리케이션의 개발이 점점 쉬워질 것이다.
 +
* '''기능 기반의 보안성''' : 기능은 모듈 간의 보안 경계를 제한하므로 개발자는 모듈의 구성 가능성에 대해 더 많이 추론하고 악의적이거나 예상치 못한 상호작용의 범위를 제한 할 수 있다.
 +
 +
또한, 코스모스 SDK는 CLI(command line interfaces), REST 서버 및 기타 일반적으로 사용되는 다양한 유틸리티 라이브러리를 구축하기 위한 유용한 개발 도구를 함께 제공한다.<ref name= "공식 홈페이지"></ref>
 +
 +
==== 이더민트 ====
 +
코스모스 SDK의 가장 큰 장점은 모듈화를 통해 개발자가 이미 [[Go언어]]로 만든 블록체인 코드베이스를 그 위에 포팅<ref>각기 다른 환경을 가지는 하드웨어에 소프트웨어를 이식하려면 하드웨어에 맞추어주는 작업이 필요하다. 이를 포팅이라고 한다.</ref>할 수 있다는 것이다. 즉, 이더민트는 EVM을 SDK 모듈로 포팅하는 프로젝트로, 텐더민트 위에 이더리움을 구현한 것이다. 이더민트는 이더리움과 똑같이 작동하지만 텐더민트 코어의 모든 특성을 활용할 수 있다. 또, 기존 이더리움 도구 (Truffle, Metamask 등)는 이더민트와 호환되므로 추가 작업없이 스마트 계약을 포팅할 수 있다. 그래서 Rust, Go, Haskell 등 특정 언어로 쓰인 현재의 이더리움 코드베이스를 가져와서 텐더민트의 컨센서스 엔진을 사용하여 ABCI 애플리케이션으로 실행할 수 있다.
 +
코스모스와 함께 이더민트를 출시하여 개발자들이 두 생태계의 장점을 모두 경험할 수 있는 기회를 제공한다. 이더리움 가상머신(EVM)을 통해 스마트 계약을 실행함과 동시에 텐더민트 컨센서스 엔진이 제공하는 최고의 성능을 누린다. 이더민트는 Web3 호환성, 매우 높은 처리량, 병렬 확장서, 트랜잭션 완결성이라는 기능을 제공한다. 자세한 설명은 아래와 같다.
 +
* '''Web3 완벽한 호환성''' : 이더민트는 이더리움의 web3 인터페이스뿐만 아니라 RPC엔드 포인트를 통해 이더리움 클라이어트 관련 도구들과 완벽하게 호환된다. 예를 들어 이더리움에 멋진 지갑 UI를 개발한 개발자는 해당 애플리케이션을 이식(port)하고 이더민트에서 실행하는데 아주 적은 시간이 걸린다. 코드 값 하나만 변경하면 된다. 바로 사용자가 가리키는 URL값 하나이다.
 +
* 매우 높은 처리량  : 텐더민트의 [[PoS]] 엔진에서 실행되는 만큼 이더리움을 사용하는 것보다 이더민트를 사용하면 빠른 속도을 가진다. 처리량이 높은 컨센서스 엔진 위에서 실행된 스마트 계약은 사용자끼리 경쟁을 하지 않아 수수료가 저렴하다. 텐더민트는 EVM보다 트랜잭션 수를 최대 20배까지 더 많이 처리 할 수 있기 때문에 네트워크가 마비되거나 트랜잭션 수수료가 폭등하는 일은 발생하지 않는다. 결국, 이더민트에서 스마트 계약을 실행함으로써 수수료를 20배에서 최대 50배까지 절약할 수 있다.
 +
* '''무한한 병렬 확장성''' : 이더리움(Ethereum)의 가장 큰 문제는 확장성이다. 이더리움은 최대 12.5 TPS만 처리할 수 있다. 반면 이더민트는 200 TPS까지 처리할 수 있지만 이것 또한 충분하지 않다. 이것을 해결하고자 등장한 것이 무한한 병렬 확장성(Unlimited Horizontal Scalability)이다. 예를 들어, 코스모스 허브가 론칭되었고 이더민트가 최대 처리량인 200 TPS에 도달했다고 가정한다면, 우리는 코스모스의 모듈 기반 디자인으로 탄생한 허브(hub)와 존(zone) 덕분에 두 번째 이더민트 존(zone)을 만들어서 IBC 프로토콜을 통해 허브(hub)에 붙이는 것이 가능하다. 그럼 바로 400 TPS까지 처리를 할 수 있다. 이것으로도 부족하면 이더민트 존을 두 개 더 붙여 800 TPS를 달성하는 식으로 병렬적으로 확장성을 달성할 수 있다.
 +
* '''즉각적인 거래 완결성''' : [[비트코인]]과 [[이더리움]]의 작업증명(PoW)은 최종적인 결정을 하지는 않는다. 이론적으로는 51%의 공격에 의해 이미 생성된 블록도 뒤집힐 수 있다. 블록이 완결성을 가진다는 뜻은 블록이 뒤집힐 가능성이 없다는 것이다. 비트코인의 합의 프로토콜은 이러한 100% 완결성을 보장해주지 않기 때문에 엄밀히 말해서 컨센서스가 안전하다고 할 수 없다. 이더리움의 작업증명 역시 확률적으로 완결성을 가진 것뿐이지 100% 완결성을 갖지는 못한다. 반면 이더민트는 100% 완결성을 보장하는 블록이 평균적으로 1초 이내에 생성이 된다.<ref>코스모스 코리아, 〈[https://medium.com/lunamint-atlas/%EC%9D%B4%EB%8D%94%EB%AF%BC%ED%8A%B8-ethermint-%EB%A5%BC-%EC%86%8C%EA%B0%9C%ED%95%A9%EB%8B%88%EB%8B%A4-cc30f91b7d8a 이더민트(Ethermint)를 소개합니다!]〉, 《미디엄》, 2018-07-10</ref>
 +
 +
===IBC 프로토콜===
 +
블록체인들을 연결하는 방법은 IBC(Inter-Blockchain Communication) 프로토콜을 통해 이루어진다. IBC를 번역하면 '블록체인 간 커뮤니케이션'으로. 텐더민트 합의 알고리즘의 즉결성을 활용하여 여러 종류의 블록체인들이 서로 가치(토큰) 또는 데이터를 전송할 수 있도록 한다. 다음과 같은 절차와 기능에 의해 가능하다.
 +
 +
* '''다른 층''' : 여러 종류의 블록체인은 서로 다른 층을 가진다. 즉, 네트워킹 , 합의 및 애플리케이션 층을 구현하는 방식이 서로 다를 수 있다 . IBC와 호환되기 위해서 블록체인은 몇 가지 요구 사항만 따르면 된다. 주요 요구 사항은 합의 층이 빠른 최종성을 가져야 한다는 것이다. 하지만 비트코인과 이더리움과 같은 작업증명 체인은 확률론적 최종성을 가지고 있기 때문에 이 범주에 포함되지 않는다.
 +
* '''권한''' : 모든 블록체인은 다음 블록에 합의하는 역할을 하는 검증자에 의해 유지된다. Proof-of-Work에서는 이러한 검증자를 채굴자라고 한다. 코스모스가 제공하는 블록체인은 자체 권한과 자체 검증자를 갖는 블록체인이다. 많은 경우 검증자들이 궁극적으로 상태를 수정할 책임을 지고 있기 때문에 블록체인이 모든 권한을 갖는 것은 매우 중요하다. 반면 이더리움에서 디앱은 모두 공통된 검증자에 의해 실행되기 때문에 각 디앱에게는 제한된 권한만 주어진다.
 +
 +
IBC를 사용하면 여러 종류의 블록체인이 토큰과 데이터를 서로 전송할 수 있도록 허용한다. 즉, 서로 다른 애플리케이션과 검증자가 있는 블록체인들이 상호운용될 수 있다는 것을 의미한다. 퍼블릭 블록체인과 프라이빗 블록체인 역시 토큰을 서로 전송할 수 있다.<ref name= "공식 홈페이지"></ref>
 +
 +
====IBC 작동 원리====
 +
IBC의 작동 원리는 매우 간단하다. 체인 A의 계정에서 10개의 아톰을 체인 B로 보내는 경우를 예로 들어보자.
 +
 +
* '''추적''' : 계속해서 체인 B는 체인 A의 헤더를 받으며 그 반대의 경우도 마찬가지이다. 이렇게 하면 각 체인이 다른 체인의 검증자를 추적 할 수 있다. 본질적으로 각 체인은 다른 체인의 라이트 클라이언트(light-client)를 실행한다.
 +
* '''동결''' : IBC 전송이 시작되면, 아톰은 체인 A에 묶이게 된다.
 +
* '''증거 전달''' : 그런 다음, 10개의 아톰이 묶였다는 증거가 체인 A에서 체인 B로 전달된다.
 +
* '''확인''' : 이 증명은 체인 A의 헤더에 대해 체인 B에서 검증되고, 이것이 유효하다면 체인 B에 10개의 아톰 상품권이 생성된다.
 +
 +
체인 B에서 생성된 아톰은 실제 아톰이 아니다. 아톰은 체인 A에만 존재하기 때문이다. 그것들은 이 아톰들이 체인 A에서 동결되었다는 증거와 함께 체인 A에서 나온 아톰의 B에 대한 표현이다.<ref name= "공식 홈페이지"></ref>
 +
 
===코스모스 생태계===
 
===코스모스 생태계===
코스모스는 텐더민트에 기반한 복수의 [[블록체인]]들의 [[네트워크]]이다. 기존의 프로포잘들이 전역적 이체 순서를 가진 ‘단일 [[블록체인]]’을 목표로 하지만, 코스모스는 수많은 블록체인이 상호 병행 실행하는 동시에 상호운용성을 확보하도록 한다. 기본적으로 코스모스 허브는 ‘[[존]](zone)’이라고 부르는 여러 독립된 블록체인들을 관리한다. 존들은 최근의 [[블록]] 커밋들을 끊임없이 허브로 전송하며, [[허브]]는 이를 통해 항상 최신 상태를 유지한다. 마찬가지로, 각 존도 허브의 상태를 제공받는다. 존들은 정보의 송신과 수신의 증거인 [[머클증명]]을 포스팅함으로 정보의 패킷들을 교환한다. 이 메커니즘을 ‘블록체인 간 통신’ 또는 [[IBC]]라고 칭한다.
+
[[파일:코스모스 블록체인.jpg|썸네일|400픽셀|허브와 존]]
* 허브 : 멀티자산 분산 원장을 관리하는 블록체인으로, 전체 시스템을 위한 토큰의 ‘중앙 원장’역할을 하므로 보안이 무엇보다도 중요하다.<ref name="크립토위키">〈[https://cryptokiwi.kr/currency?id=atom COSMOS ATOM]〉, 《크립토위키》</ref>
+
IBC는 두 개의 다른 블록체인이 토큰을 서로 전송할 수 있게 하는 프로토콜이다. 그렇다면  블록체인 네트워크는 어떻게 만들어 나가는 것일까. 첫 째는, 직접 IBC 연결을 통해 네트워크의 각 블록체인을 서로 연결하는 것이다. 이 접근법의 문제는 네트워크의 연결 수가 블록체인의 수와 함께 2차식으로(quadratically) 증가한다는 것이다. 만약 네트워크에 100 개의 블록체인이 있고 각각의 블록체인이 서로 다른 IBC 연결을 유지해야하는 경우, 그것은 4,950개의 연결이 되어 금방 감당할 수 없게 된다.
* 존 : 존은 허브와 IBC(Inter Blockchain Communication) 메시지를 교환하는 독립 블록체인으로, 허브의 관점에서 존은 IBC 패킷을 이용하여 토큰을 송수신할 수 있는 ‘멀티자산 동적 구성원 멀티 시그니쳐 계정’이다.<ref name="크립토위키"></ref>
+
 
* 블록체인 간 커뮤니케이션(IBC, Inter-Blockchain Communication) : [[토큰]]은 개인 사용자나 존 자체가 보유할 수 있으며, 이 토큰들을 ‘코인패킷’이라 부르는 특수 IBC 패킷을 통해 하나의 존에서 다른 존으로 이동할 수 있다.<ref name="Peter Yoon">Peter Yoon, 〈[https://medium.com/lunamint-atlas/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4-%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-1-ibc-deccd4a1dd3e 코스모스 블록체인 #1 – IBC(1)]〉, 《미디엄》, 2018-11-09</ref> [[IBC 프로토콜]]을 두 가지 이체 방식을 통해 정의할 있는데, 블록체인이 최근의 블록 해시를 임의의 관측자에게 증명하는 [[IBCBlockCommitTx]]이체, 그리고 블록체인이 송신자의 애플리케이션이 패킷을 [[머클증명]]을 통해 최근 블록해시로 전파했다는 것을 전파했다는 것을 증명하는 [[IBCPacketTx]]이체가 있다.<ref>Maestro, 〈[https://blog.naver.com/cmmouse/221335070024 (인터체인) 코스모스의 패킷 교환]〉, 《네이버 블로그》, 2018-08-08</ref> IBC 구동방식을 위의 두 가지로 분할함으로, 수신체인의 내부 수수료 시장 메커니즘이 승인될 패킷을 결정하도록 하며, 송신체인이 얼마나 많은 아웃바운드 패킷들을 허용할지 자유롭게 정할 수 있도록 한다.<ref name="창시자"></ref>
+
이를 해결하기 위해 코스모스는 허브와 존(Hubs and Zones)이라는 두 종류의 블록체인을 가진 모듈형 구조를 만들었다. 존은 서로 다른 각각의 블록체인이며 허브는 존을 함께 연결하기 위해 특별히 고안된 블록체인이다. 기본적으로 코스모스 허브는 ‘[[존]](zone)’이라고 부르는 여러 독립된 블록체인들을 관리한다. 존이 허브와 IBC 연결을 생성하면, 연결된 다른 모든 존에 자동으로 접근할 수 있다. 결과적으로 각각의 존은 제한된 허브 세트와 제한된 수의 연결만 설정하면 된다. 존들은 최근의 [[블록]] 커밋들을 끊임없이 허브로 전송하며, [[허브]]는 이를 통해 항상 최신 상태를 유지한다. 마찬가지로, 각 존도 허브의 상태를 제공받는다. 존들은 정보의 송신과 수신의 증거를 포스팅함으로 정보의 패킷들을 교환한다. 허브는 또한 존의 이중 지출을 방지한다. 즉, 존이 허브로부터 토큰을 받을 때, 토큰의 존과 허브만 신뢰하면 된다.
 +
 
 +
* '''허브''' : 멀티자산 분산 원장을 관리하는 블록체인으로, 전체 시스템을 위한 토큰의 ‘중앙 원장’역할을 하므로 보안이 무엇보다도 중요하다.<ref name="크립토위키">〈[https://cryptokiwi.kr/currency?id=atom COSMOS ATOM]〉, 《크립토위키》</ref>
 +
* '''''' : 존은 허브와 IBC(Inter Blockchain Communication) 메시지를 교환하는 독립 블록체인으로, 허브의 관점에서 존은 IBC 패킷을 이용하여 토큰을 송수신할 수 있는 ‘멀티자산 동적 구성원 멀티 시그니쳐 계정’이다.<ref name="크립토위키"></ref>
 +
* '''블록체인 간 커뮤니케이션'''(IBC, Inter-Blockchain Communication) : [[토큰]]은 개인 사용자나 존 자체가 보유할 수 있으며, 이 토큰들을 ‘코인패킷’이라 부르는 특수 IBC 패킷을 통해 하나의 존에서 다른 존으로 이동할 수 있다.<ref name="Peter Yoon">Peter Yoon, 〈[https://medium.com/lunamint-atlas/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4-%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-1-ibc-deccd4a1dd3e 코스모스 블록체인 #1 – IBC(1)]〉, 《미디엄》, 2018-11-09</ref>
 +
 
 +
코스모스 네트워크에서 출시하는 첫 번째 허브는 코스모스 허브가 될 것이다. 코스모스 허브는 PoS 알고리즘의 퍼블릭 블록체인이다. 이 블록체인에서 사용하는 토큰은 아톰이라고 하며, 거래 수수료는 여러 토큰으로 지불된다.
 +
 
 +
=== 네트워크 구성 요소 ===
 +
==== 풀 노드 ====
 +
풀 노드(Full Node)는 블록체인의 전체 기록을 모두 보관하고 있는 머신이다.
 +
 
 +
==== 검증자 ====
 +
검증자(Validator)는 새로운 블록을 제안하거나 제안된 블록에 동의 또는 거절을 할 있는 풀 노드이다. 코스모스 허브의 론칭에는 총 100개의 검증자 노드가 존재한다. 10년 동안 순차적으로 300개까지 늘어난다. 검증인들은 보안에 신경을 많이 써야 한다. 만약 검증자 노드에 문제가 생기면 슬래싱(slashing)을 통해 처벌을 받게 된다. 그러므로 검증자 노드는 퍼블릭 인터넷 환경에 직접 연결되어 있으면 안된다.
 +
 
 +
==== 센트리 노드 ====
 +
검증인 노드는 퍼블릭 인터넷 환경에 직접 연결되면 안 되기 때문에 센트리 노드가 존재한다. 센트리 노드(Sentry Node)는 검증인 노드 대신 퍼브릭 인터넷에 연결되어 메시지를 받은 다음 이를 전달하는 일종의 방화벽 같은 존재이다. 센트리 노드도 그 용도에 따라 퍼블릭 센트리 노드와 프라이빗 센트리 노드로 구분할 수 있다. 프라비잇 센트리 노드는 내부 또는 검증인--검증인 커뮤니케이션을 쉽게 하기 위해 사용된다.  
  
===텐더민트 비잔틴 장애 허용===
+
==== 애플리케이션 노드 ====
코스모스 허브는 [[텐더민트 BFT 합의 알고리즘]]에 기반하는, 코스모스 [[네트워크]] 내 최초의 [[퍼블릭 블록체인]]이다. 텐더민트 [[오픈소스]] 프로젝트는 [[비트코인]]의 [[작업증명]](PoW) 합의 알고리즘이 지닌 속도, 확장성, 환경 등의 문제를 처리하기 위해서 2014년에 탄생했다.<ref>안성주지몬, 〈[http://potensj.tistory.com/15 (백서 정리)코스모스 백서 정리(Cosmos Whitepaper)-1]〉, 《티스토리》, 2018-07-31</ref> 1988년 [[MIT]]에서 개발한 증명된 [[BFT 알고리즘]]들을 활용하고 개선해서, 텐더민트 팀은 제1세대 [[지분증명]](PoS) [[암호화폐]]들이 겪은 Nothing-at-stake 문제를 해결하는 지분증명 암호화폐를 최초로 증명하였다.<ref name="창시자">Jae Kwon, Ethan Buchman, 〈[https://docs.google.com/document/d/1b-oPY0SkgJCu_z818-P2j2me3B_ZNpggYAen7LHNxQ8/edit# Cosmos white paper(kor)]〉</ref>
+
애플리케이션 노드는 공개적으로 이용 가능한 풀 노드에 연결되어 전체 네트워크와 상호작용을 할 수 있다. 하지만, 현실에서는 일반적으로 애플리케이션 노드 독자적으로 전체 네트워크와 상호작용하기 위해 풀 노드를 운영한다.  
  
오늘날, 대부분의 비트코인 모바일 지갑들은 이체 검증을 제공하는 신뢰할 수 있는 서버를 이용한다. 이는 [[PoS]]가 여러 번의 이체확인을 기다려야만, 이체 확정된 것으로 간주되기 때문이다. [[이중지불]] 공격이 이미 [[코인베이스]](BoinBase) 같은 서비스들에서 일어난 바 있다. 다른 블록체인 합의 시스템들과는 달리 텐더민트는 즉각적이고 안전한 모바일-클라이언트 지불 검증을 제공한다. 텐더민트는 분기할 수 없도록 설계되었기 때문에, 모바일 지갑들에서 즉시 이체확인이 가능하며 실제로 신뢰 없는 지불을 실현한다. 이는 [[IoT]] 관련 어플리케이션들에도 큰 영향을 줄 것이다.
+
==== 씨드 노드 ====
 +
씨드 노드(Seed Node)는 공개적으로 이용가능한 다른 노드에게 지속적으로 문의(query)를 함으로써 네트워크에 있는 노드들의 상태를 업데이트한다. 씨드노드들의 리스트(List)를 작성해서 노드들의 상태를 정리한 다음 네트워크에 새롭게 참여하는 노드들에 정보를 제공한다.  
  
코스모스의 검증인들은 블록을 커밋 할 책임이 있는 안전한 전용 기계이어야 한다. 검증인이 아닌 이들은 ‘[[아톰]]’이라고 부르는 지분 토큰을 임의의 검증인에게 위임하여 일정한 블록 수수료와 아톰 보상을 얻을 수는 있으나, 위임 검증인이 해킹당하거나 [[프로토콜]]을 위반할 경우, 처벌을 받게 되는 위험이 있다.<ref name="황치규기자">황치규기자, 〈[http://www.thebchain.co.kr/news/articleView.html?idxno=2636 (심층분석)인터블록체인 플랫폼 코스모스, 개발 어디까지 왔나?]〉, 《더비체인》, 2018-12-05</ref> 텐터민트 BFT 합의의 입증된 안정성 보장과 주주들의 담보 보증은 [[노드]]들에 심지어는 [[라이트 클라이언트]]들에게 증명할 수 있고 정량화 가능한 보안성을 제공한다.
+
==== 라이트웨이트 노드 ====
 +
라이트웨이트 노드(Lightweight Node)는 블록체인의 전체가 아니라 최근 블록들만 저장하는 머신이다. <ref>* 코스모스 코리아, 〈[https://medium.com/lunamint-atlas/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98%EC%97%90-%EB%8C%80%ED%95%9C-%EC%9D%B4%ED%95%B4-73754c41d55e 코스모스 네트워크 아키텍처에 대한 이해]〉, 《미디엄》, 2018-08-06</ref>
 +
 
 +
===비 텐더민트(non-Tendermint) 체인 연결 방법===
 +
[[파일:페그존.jpg|썸네일|400픽셀|페그존(Peg-Zone)]]
 +
지금까지 제시한 코스모스의 구조는 텐더민트 기반의 체인이 어떻게 상호운용될 수 있는지에 대한 설명이었다. 그러나 코스모스는 텐더민트 체인에만 국한되지 않는다. 모든 종류의 블록체인이 코스모스와 연결될 수 있다.
 +
 
 +
* '''즉결성 체인''' : 즉결성 합의 알고리즘을 사용하는 블록체인은 IBC를 적용하여 코스모스와 연결할 수 있다. 예를 들어, 이더리움이 캐스퍼 FFG (Friendly Finality Gadget)로 전환하는 경우, IBC를 캐스퍼와 함께 사용하여 이더리움을 코스모스 생태계와 직접적으로 연결할 수 있다.
 +
 
 +
* '''확률론적 완결성 체인''' : PoW 체인과 같이 즉결성을 갖지 않는 블록체인의 경우 상황은 좀 더 복잡해진다. 이 체인의 경우, 페그존(Peg-Zone)이라는 특수한 종류의 프록시 체인을 사용한다. 페그존은 다른 블록체인의 상태를 추적하는 블록체인이다. 페그존 자체는 즉결성을 가지고 있어 IBC와 호환된다. 그 역할은 즉결성을 갖지 않는 블록체인의 연결을 위한 최종성을 만드는 것이다.
 +
페그존은 그들이 연결하고자 하는 특정 체인에 맞게 사용자 맞춤형으로 구축할 필요가 있다. 이더리움 페그존을 구축하는 것은 비교적 간단하다. 왜냐하면 이더리움은 계정을 기반으로 하고 스마트 계약을 가지고 있기 때문이다. 하지만 비트코인 페그존을 만드는 것은 좀 더 어려운 일이라고 한다.<ref name= "공식 홈페이지"></ref>
 +
 
 +
===확장성 문제 해결===
 +
 
 +
코스모스는 블록체인을 쉽게 만들고 모든 블록체인을 서로 연결할 수 있는 기능을 제공하는데 아직 해결하지 못한 문제가 있다. 확장성 문제이다. 이를 위해 코스모스는 두 가지 유형의 확장성을 활용하고자 한다.
 +
 
 +
* '''수직적 확장성''' : 이 방법은 블록체인 자체를 확장하는 방법을 포함한다. 작업 증명에서 벗어나 그것의 구성 요소를 최적화함으로써 텐더민트 코어는 초당 수천 건의 트랜잭션에 도달 할 수 있다. 병목 요소는 애플리케이션 자체이다. 예를 들어, EVM과 같은 애플리케이션은 트랜잭션 유형과 상태 전이 기능이 직접 내장된 애플리케이션 (예: 코스모스 SDK 애플리케이션) 보다 트랜잭션 처리량에 훨씬 더 낮은 제한을 부과한다. 이것이 애플리케이션 별 블록체인이 의미가 있는 이유이다.
 +
* '''수평적 확장성''' : 컨센서스 엔진과 애플리케이션이 고도로 최적화되어 있더라도, 어느 시점에서 단일 체인의 거래 처리량은 불가피하게 그것을 넘을 수 없는 벽에 부딪친다. 이것이 수직적 확장성의 한계이다. 이를 넘어설 해결책은 다중 체인 구조를 사용하는 것이다. 즉, 동일한 애플리케이션을 실행하고 같은 검증자에 의해 작동되는 여러 개의 병렬 체인이 이론적으로 무한히 확장 가능한 블록체인을 만드는 것이다. 코스모스는 메인넷 론칭 시 우수한 수직적 확장성을 제공 할 것이며, 나중에 IBC 모듈 완성 후 수평적 확장성 솔루션도 구현할 것이다.<ref name= "공식 홈페이지"></ref>
  
 
===거버넌스===
 
===거버넌스===
공개형 분산원장은 규칙과 거버넌스 시스템을 가져야 한다. [[비트코인]]은 [[업그레이드]] 등의 조정을 위해 일정 부분 비트코인 재단이나 [[채굴]]에 의존하지만, 진행속도가 느리다. [[이더리움]]의 경우에는 [[The DAO]] 해킹의 처리를 위한 [[하드포크]] [[ETH]][[ETC]]로 분할되었는데, 이는 사전에 그런 의사결정을 하기 위한 사회적 계약이나 메커니즘이 존재하지 않았기 때문이다.<ref name="갓주">갓주, 〈[https://www.blockchainhub.kr/bbs/board.php?bo_table=cosmos_lecture&wr_id=320 (정보)전설의 아톰코인, 코스모스 초보자 입문기 V1.0]〉, 《블록체인허브》, 2018-07-06</ref>
+
코스모스 허브의 검증인과 위임자는 코스모스 허브의 정책들을 위한 ‘코드가 아니라 평이한 언어로 된 규칙’을 표결에 부쳐 수정할 뿐 아니라 ‘블록 가스 한계’ 같은 시스템의 사전에 설정된 제한들을 업그레이드를 통해 자동으로 변경하는 제안도 표결에 붙일 수 있다.<ref>레스코, 〈[https://blog.naver.com/khdrogba/221323087130 코스모스 암호경제학적 분석]〉, 《네이버 블로그》, 2018-07-20</ref> 규칙은 이더리움의 The DAO 사건 같은 절도 및 [[버그]] 관련 문제들의 이해관계자들이 응집할 수 있도록 도우며, 보다 신속하고 깔끔한 해결책이 나올 수 있도록 한다.<ref name="kim066"> kim066, 〈[https://steemit.com/kr/@kim066/5sbagu 사토시가 답변한다 길을비켜라(코스모스/아톰코인]]〉, 《스팀잇》</ref> 각 존 역시 자체적인 규칙과 거버넌스 메커니즘을 가질 수 있다. 예를 들어, 코스모스 허브가 변경 배제 규칙을 적용한 경우라면, 각 존은 절도와 버그를 위한 롤백 관련 자체 정책을 설정할 수 있다. 코스모스 네트워크는 상이한 정책의 존들 간 상호운용성을 확보함으로 사용자들에게 궁극적 자유와 실험의 기회를 제공한다.
 +
 
 +
==토큰 발행==
 +
===아톰===
 +
코스모스 허브는 다중 자산 분장원장으로써 내부 토큰인 [[아톰]]을 가진다.<ref name="김민석">Matthew Minseok Kim,  〈[https://medium.com/@matthewminseokkim/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4%EC%97%90-%EB%8C%80%ED%95%B4%EC%84%9C-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90-a4549b541658 코스모스에 대해서 알아보자]〉, 《미디엄》, 2018-01-26</ref> 아톰은 코스모스 허브의 유일한 지분 토큰으로, 아톰의 보유자가 투표, 검증 또는 다른 검증자들에게 위임하기 위해 필요하다.<ref name="krexchange">krexchange, 〈[https://steemit.com/token-lab/@krexchange/6nztvw (Cosmos – ATOM)코스모스 알아보기]〉, 《스팀잇》</ref> [[이더리움]]과 유사하게 Denial-of-Service Attack을 예방하기 위해 거래 수수료를 지불하기 위해 아톰이 사용될 수 있다.<ref name="publicworker">publicworker, 〈[https://steemit.com/kr/@publicworker/1 코스모스는 무엇인가? 1]〉</ref> 2019년 2월 19일 한국의 암호화폐 거래소인 [[코인원]](Coinone)전 세계에서 처음으로 코스모스체인의 [[아톰]](ATOM)을 상장했다. 코인원은 아톰의 거래를 3월 중 시작하겠다고 밝혔다.
 +
===포톤===
 +
코스모스는 아톰에 이은 두 번째 토큰인 '''포톤'''(PHOTON)을 발행한다. '''포톤'''은 현재 코드명으로 추후에 바뀔 수 있다. 이 코드명은 가시광선을 빠른 속도로 전달하는 에너지의 이산형 패킷(discrete packet) 기본 입자인 ‘포톤’에서 가져왔다. 포톤은 '''코스모스 허브'''의 두 번째 고유 토큰이자 수수료 지불을 위해 사용되는 수수료 토큰이다. 아톰보다는 더 높은 통화유통속도(money velocity)와 유동성을 가진 토큰이 될 것이다. 포튼은 이더리움 계정 상태(account state)의 [[하드스푼]](hard-spoon)을 통해 분배될 것이며 [[이더민트 존]](Ethermint Zone)의 고유 토큰이다. '''포톤'''의 블록보상은 시간당 500 포톤으로 일정하게 유지되고 점진적으로 인플레이션율은 0에 수렴할 것이다. 코스모스 허브 거버넌스를 통해 이더(ETH) 보유자들에게 1:1 비율로 포톤토큰을 하드스푼하는 것을 제안한다. <ref>코스모스 코리아, 〈[https://blog.naver.com/lunagram/221403951120 코스모스 수수료 토큰 제안 — 코드명 포톤]〉, 《네이버 블로그》, 2018-11-22</ref>
 +
 
 +
==테스트넷==
 +
코스모스는 2018년 한 해에만 무려 20개의 테스트넷을 가동했다. 각 테스트넷에서는 새로운 기능, 개선 사항, 버그 픽스 등을 실제 구동하는 역할을 했다. 코스모스 팀은 린스타트업의 [[애자일]]([[Agile]]) 개발 방식을 도입해 작지만 많은 새로운 기능을 추가해 대형 문제가 발생할 확률을 최소화하였다. 코스모스 테스트넷의 명칭은 [[가이아]](Gaia)이다. 명칭 간 충돌을 방지하고자 코스모스 프로젝트를 ‘코스모스 허브’ 라 부르고, [[텐더민트]] [[BFT 합의]] 알고리즘으로 작동하는 애플리케이션 특화 블록체인을 부를 때 ‘가이아’라고 한다. <ref name = "코스모스 2018">코스모스 코리아, 〈[https://blog.naver.com/lunagram/221449162431 2018년을 되돌아보며: 코스모스 테스트넷 Top5]〉, 《네이버 블로그》, 2019-01-23</ref>
 +
===Gaia-6001 : 최초의 탈중앙화 테스트 넷 시작===
 +
2018년 6월에 가동한 6000-시리즈 테스트넷이다. 처음으로 비동기화(asynchronous) 환경에서 탈중앙화된 방식으로 테스트넷을 시작했다. 커뮤니티가 블록체인을 시작하는 ‘genesis.json’ 파일을 가지고 자체적으로 노드를 구동해 pre-vote와 pre-commit([[텐더민트]] 합의 메시지)을 해 본인들이 온라인 상태임을 네트워크에 표시하는 것이다. 보팅 파워의 2/3가 온라인일 때 Gaia-6001은 블록을 생성하기 시작한다. [[작업증명]]을 지지하는 자들은 지분증명이 검열 저항성을 보유한 블록체인 보안 모델 차원에서 너무 중앙화되었음을 비판한다. [[지분증명]]은 [[작업증명]]보다 검증인(채굴자)간에 상당한 소통과 협업이 필요하며 대부분 단테 채팅방을 통해 이루어진다.  Gaia-6001은 코스모스 팀의 지원 없이 시작된 테스트넷 블록체인으로 시작하였다. 코스모스 검증인은 상당한 실력을 발휘하며 코스모스/텐더민트 팀의 지원이 일절 없었던 ‘genki’ 테스트 넷을 자체적으로 시작하기도 했다. <ref name = "코스모스 2018"></ref>
 +
===Gaia-8002 : 인터넷 최대 BFT 네트워크===
 +
Gaia-8002는 오픈 인터넷상 가장 큰 [[BFT]] 네트워크였다. 2014년 텐더민트가 등장하며 기존 [[BFT]] 네트워크의 틀을 깨고 수백 개의 노들로 이루어진 광역통신망 환경의 BFT 네트워크를 구축하였다. 게임 오브 스테이크(GOS) 계획이 공개되면서 신규 검증인들의 관심을 받았다. GOS 발표 이후 시작된 Gaia-8002는 최대 200명 검증인들이 테스트넷 기간 동안 참여하는 성과를 냈다. <ref name = "코스모스 2018"></ref>
  
코스모스 허브의 검증인과 위임자는 코스모스 허브의 정책들을 위한 ‘코드가 아니라 평이한 언어로 된 규칙’을 표결에 부쳐 수정할 뿐 아니라 ‘블록 가스 한계’ 같은 시스템의 사전에 설정된 제한들을 업그레이드를 통해 자동으로 변경하는 프로포잘도 표결에 붙일 수 있다.<ref>레스코, 〈[https://blog.naver.com/khdrogba/221323087130 코스모스 암호경제학적 분석], 《네이버 블로그》, 2018-07-20</ref> 규칙은 The DAO 사건 같은 절도 및 [[버그]] 관련 문제들의 이해관계자들이 응집할 수 있도록 도우며, 보다 신속하고 깔끔한 해결책이 나올 수 있도록 한다.<ref name="kim066"> kim066, 〈[https://steemit.com/kr/@kim066/5sbagu 사토시가 답변한다 길을비켜라(코스모스/아톰코인]]〉, 《스팀잇》</ref> 각 존 역시 자체적인 규칙과 거버넌스 메커니즘을 가질 수 있다. 예를 들어, 코스모스 허브가 변경 배제 규칙을 적용한 경우라면, 각 존은 절도와 버그를 위한 롤백 관련 자체 정책을 설정할 수 있다. 코스모스 네트워크는 상이한 정책의 존들 간 상호운용성을 확보함으로 사용자들에게 궁극적 자유와 실험의 기회를 제공한다.
+
===Gaia-9001 : 버그 바운티 프로그램===
 +
2018년 11월 12일, ‘Kauchy’라는 닉네임의 화이트 해커 개발자가 Gaia-9001 테스트넷에서 코스모스 SDK 프라임워크 내의 치명적인 [[버그]]를 공개했다. 버그가 공개가 공개된 이후 [[테스트넷]]에서 테스트 토큰이 합의 없이 추가로 발행되면서 네트워크가 멈추게 되었다. 해당 버그는 [[해커원]]([[HackerOne]]) 시스템을 이용한 건전한 버그 신고 절차로 보기 어렵지만, 커뮤니티의 활발한 활동으로 수많은 버그와 허점들이 [[버그 바운티]] 프로그램을 통해 발견된다는 점을 주목하여야 한다. IT업계의 버그 대처 평균 기간이 약 90일인데 코스모스 커뮤니티는 일주일 만에 해결하였다.<ref name = "코스모스 2018"></ref>
  
===검증자 선발===
+
===Gaia-9002 : 최초의 기능완성 테스트넷===
텐더민트 블록체인은 검증자 수가 많아질수록 통신의 복잡도가 증가하여 속도가 느려진다.<ref name="김가현기자">김가현기자, 〈[https://blockinpress.com/archives/9423 “3세대 코스모스, 무엇이 다른가”...첫 코스모스 아카데미 서울서 열려]〉, 《블록체인프레스》, 2018-10-03</ref> 반면에, 충분한 검증인들을 통해 블록체인의 전 세계 분산, 매우 빠른 이체확인 속도를 제공할 수 있다.<ref name="블록인프레스">블록인프레스, 〈[https://blockinpress.com/archives/4919 코스모스의 가치에 대한 이해]〉, 《블록인프레스》, 2018-04-26</ref> 또한 대역폭이나 저장공간 및 병렬 컴퓨팅 용량이 증가하면서 더 많은 검증인들을 지원할 수 있다.<ref name="김민석"></ref> 텐더민트는 처음 최대 검증인 수가 100명이 되도록 제한하고 있으며 10년동안 매년 13%비율로 증가하여 최종적으로는 총 300명의 검증인을 가질 것이다.<ref name="kim066"></ref>
+
Gaia-9002는 최초로 코스모스 허브 메인넷에 이용될 모든 기능이 포함돼있는 코스모스 [[SDK]] '''v0.27.0''' 소프트웨어를 기반으로 가동되었다. SDK v0.27.0에는 스테이킹, 슬래싱, 보상 지급, 거버넌스 등의 로직이 구현돼있는 소프트웨이다. 코스모스는 이러한 지분증명 시스템을 [[예치 지분증명]]([[BPoS]];Bonded Proof-of-Stake)으로 명명했다. BPoS 시스템은 기존 PoS 시스템과 달리 검증인이 네트워크에서 악의적인 행동을 할 경우 검증인과 위임자 모두 지분을 삭감당하는 시스템으로 위임자와 검증인 모두에게 책임을 부여한다. 코스모스 팀은 책임감을 부여해 지분증명 시스템의 Nothing-at-Stake 문제를 해결해 더욱 안전한 네트워크를 만들 수 있다 생각한다. <ref name = "코스모스 2018"></ref>
 +
===Gaia-8001 : 100만 블록 테스트넷===
 +
2018년 11월 초, Gaia-8001은 100만 번째 블록을 생성했다. Gaia-8001은 테스트 넷 중 가장 오래 운영되었으며 3개월 동안 단 한 번의 중단 없이 운영되었다. 주요 [[이더리움]] 콘퍼런스인 [[Devcon4]]가 끝날 무렵 100만 번째 블록을 생성했다. 모든 [[지분증명]] 연구자들은 안전성과 생존 가능성을 동시에 가진 [[비잔틴 감내 시스템]]을 구축하는 것을 목표로 한다. [[텐더민트]]는 안전성을 중요시하는 합의 알고리즘으로 안전성이 확보되지 않는다면 체인은 멈추게 된다. 이를 해결하기 위해 블록체인 운영자(검증인)에게 블록체인 생존성을 확보할 수 있는 책임을 부여하고, 그에 따른 금전적인 보상을 제공한다.<ref name = "코스모스 2018"></ref>
  
아톰 보유자들은 [[BondTx]] 이체를 서명하면서 검증인이 될 있다.<ref name="황치규기자"></ref> 허용된 검증인 수보다 많은 경우를 제외하고는 누구든지 검증인이 될 수 있다. 만약 검증자 수가 허용치 이상인 경우, 가장 적은 아톰을 보유한 검증자보다 더 높은 아톰을 담보로 제공해야 하며, 이런 경우 새로운 검증인이 기존 검증인을 대체할 수 있다.<ref name="갓주"></ref>
+
==메인넷==
 +
2019년 1월, 코스모스의 소프트웨어가 기능 완성(feature complete)단계에 도달했다. [[코스모스 허브]]의 론칭을 앞두고 [[아톰]]([[ATOM]])보유자는 메인넷에서 본인의 아톰을 검증인에게 위임하고 거버넌스 제안에 투표할 있는 권리를 가진다. 위임자들의 선택이 코스모스 네트워크의 성공에 큰 영향을 미칠 것이다. 론칭 초기 [[아톰]] 송금 기능은 프로토콜 레벨에서 비활성화될 것이며, 추후 [[하드포크]]를 통해 활성화될 것이다. 아톰을 위임하는 것은 큰 리스크가 존재함을 인지해야 한다. 한번 검증자에게 위임된 아톰은 일정기간 동안 묶이게 되며, [[스테이킹]] 기간 동안 검증자의 실수로 [[슬래싱]](아톰 삭감)이 발생하는 경우 위임자의 아톰도 함께 삭감될 수 있다. 그러므로 위임자들은 검증자들에 대한 충분한 정보를 미리 확인하고 위임을 진행해야 한다. <ref>Cosmos Hub to Launch Mainnet
 +
Pre-launch Dependencies & How to Safely Claim Your Atoms</ref>
  
===검증자 인센티브===
+
==제휴==
* 검증자 처벌  : 동일한 높이 또는 라운드에서 이중 서명 혹은 텐더민트 합의 프로토콜을 위반한 행위는 즉시 발견할 수 있기 때문에, 검증인은 해당 지위를 상실하고 예치된 보증금과 지분을 상당히 잃을 수 있다.<ref name="Peter Yoon"></ref> 때때로 지역 네트워크 단절, 전원 장애나 그 밖의 이유로 검증인이 단절될 수 있다.<ref name="창시자"></ref> 그 경우 과거의 투표가 이루어지지 않은 횟수를 고려하여 일정 수준 이상인 경우 검증인을 비활성화하고 지분의 일정 부분을 잃게 한다. 특정 악의적 행위는 블록체인 내 명확한 증거가 남지 않을 수도 있는데, 이런 경우 압도적 다수의 합의가 있다면, 검증인들이 외부에서 합의하여 악의적 검증자를 제외 시킬 수 있다.<ref name="김가현기자"></ref> 투표권의 1/3 이상이 악의적으로 연합하여 코스모스를 중단시키거나 이들이 악의적 행동의 증거가 블록체인으로 들어오지 않게 검열하여 삭제하는 경우, 허브는 하드포크를 통한 블록 재조정 프로포잘로 복구되어야 한다.<ref name="krexchange"></ref>
+
===루나민트===
* 인센티브 : 코스모스 허브 검증인들은 아톰뿐만 아니라 어떤 유형의 토큰이라도 이체 수수료로 받을 수 있다.<ref name="블록인프레스"></ref> 각 검증인은 교환비율과 이체방식을 주관적으로 선택할 수 있다. 징수된 수수료는 세금을 제외하고 본딩된 아톰에 비례하여 주주들에게 재분배된다.<ref name="publicworker"></ref> 투표권을 다른 검증인에게 위임하는 아톰 보유자는 일정 수준의 수수료를 위임받은 검증인에게 지급한다.<ref name="kim066"></ref>
+
[[파일:루나민트 글자.png|썸네일|300픽셀|'''[[루나민트]]'''(Lunamint)]]
* 세금 : 이체된 수수료 중 지금준비금 세금은 ‘지급준비금 풀’에 충당이 되며 이는 코스모스 네트워크의 보안과 가치를 높이는 데 이용된다.<ref name="김민석"></ref>
 
* 해커에 대한 인센티브 : 코스모스 허브의 보안의 핵심은 검증자인데, 이들이 해킹당할 경우 네트워크 전체의 보안이 위험해질 수 있다.<ref name="krexchange"></ref> 따라서 코스모스 허브는 해커들이 특정 검증인들이 해킹당한 사실을 알린다면, 해킹이 확인된 즉시 해당 검증인과 위임자들은 비활성화되고, 검증인과 위임자들의 아톰이 감소하며 해커는 그만큼 보상을 받는다(약 5%).<ref name="publicworker"></ref>
 
  
===토큰 발행===
+
[[루나민트]]는 코스모스코인(Cosmos Coin)이 운영하는 [[코스모스 아카데미]]의 로컬 파트너이다. 루나민트는 코스모스 블록체인 검증인(Validator) 운영과 [[디앱]] 개발을 진행하고 있다. 이들은 코스모스/텐더민트 팀 소속이 아니라 독립적인 블록체인 기업이다. [[루나민트]]는 코스모스 테스트넷 초기부터 검증인을 운영해오며, 국내에 코스모스 자료 들을 전달하고 있다. 현재 코스모스 모바일 지갑인 [[루나그램]](Lunagram)을 개발하고 있다. [[루나그램]][[텔레그램]] 오픈소스 클라이언트를 기반으로 한 메신저-지갑이며 코스모스의 상호호환성 프로토콜 [[IBC]](Interblockchain Protocol)을 통한 인터체인 호환성을 적용할 계획이다.
코스모스 허브는 다중 자산 분장원장으로써 내부 토큰인 [[아톰]]을 가진다.<ref name="김민석">Matthew Minseok Kim,  〈[https://medium.com/@matthewminseokkim/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4%EC%97%90-%EB%8C%80%ED%95%B4%EC%84%9C-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90-a4549b541658 코스모스에 대해서 알아보자], 《미디엄》, 2018-01-26</ref> 아톰은 코스모스 허브의 유일한 지분 토큰으로, 아톰의 보유자가 투표, 검증 또는 다른 검증자들에게 위임하기 위해 필요하다.<ref name="krexchange">krexchange, 〈[https://steemit.com/token-lab/@krexchange/6nztvw (Cosmos – ATOM)코스모스 알아보기]〉, 《스팀잇》</ref> [[이더리움]]과 유사하게 Denial-of-Service Attack을 예방하기 위해 거래 수수료를 지불하기 위해 아톰이 사용될 수 있다.<ref name="publicworker">publicworker, 〈[https://steemit.com/kr/@publicworker/1 코스모스는 무엇인가? 1]〉</ref>
 
  
 
==로드맵==
 
==로드맵==
59번째 줄: 178번째 줄:
 
* 황치규 기자, 〈[http://www.thebchain.co.kr/news/articleView.html?idxno=2636 (심층분석) 인터블록체인 플랫폼 코스모스, 개발 어디까지 왔나?]〉, 《더비체인》, 2018-12-05
 
* 황치규 기자, 〈[http://www.thebchain.co.kr/news/articleView.html?idxno=2636 (심층분석) 인터블록체인 플랫폼 코스모스, 개발 어디까지 왔나?]〉, 《더비체인》, 2018-12-05
 
* 블록인프레스, 〈[https://blockinpress.com/archives/4919 코스모스의 가치에 대한 이해]〉, 《블록인프레스》, 2018-04-26
 
* 블록인프레스, 〈[https://blockinpress.com/archives/4919 코스모스의 가치에 대한 이해]〉, 《블록인프레스》, 2018-04-26
 +
* 강희영 기자, 〈[http://www.cbci.co.kr/news/articleView.html?idxno=322674 코인원, 전 세계 최초 ‘코스모스 블록체인’ 아톰(ATOM) 상장]〉, 《CBC뉴스》, 2019-02-19
 +
* 코스모스 코리아, 〈[https://blog.naver.com/lunagram/221449162431 2018년을 되돌아보며: 코스모스 테스트넷 Top5]〉, 《네이버 블로그》, 2019-01-23
 +
* 코스모스 코리아, 〈[https://blog.naver.com/lunagram/221403951120 코스모스 수수료 토큰 제안 — 코드명 포톤]〉, 《네이버 블로그》, 2018-11-22
 +
* Interchain Foundation, 〈[https://blog.cosmos.network/cosmos-hub-to-launch-mainnet-a453d2247a34 Cosmos Hub to Launch Mainnet Pre-launch Dependencies & How to Safely Claim Your Atoms]〉, 《Medium》, 2019-02-09
 +
* 코스모스 코리아, 〈[https://medium.com/lunamint-atlas/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98%EC%97%90-%EB%8C%80%ED%95%9C-%EC%9D%B4%ED%95%B4-73754c41d55e 코스모스 네트워크 아키텍처에 대한 이해]〉, 《미디엄》, 2018-08-06
 +
* 코스모스 코리아, 〈[https://medium.com/lunamint-atlas/%EC%9D%B4%EB%8D%94%EB%AF%BC%ED%8A%B8-ethermint-%EB%A5%BC-%EC%86%8C%EA%B0%9C%ED%95%A9%EB%8B%88%EB%8B%A4-cc30f91b7d8a 이더민트(Ethermint)를 소개합니다!]〉, 《미디엄》, 2018-07-10
  
 
== 같이 보기 ==
 
== 같이 보기 ==
 
* [[재 권]]
 
* [[재 권]]
 
* [[인터체인]]
 
* [[인터체인]]
 +
* [[텐더민트]]
 
* [[텐더민트 비잔틴 장애 허용]]
 
* [[텐더민트 비잔틴 장애 허용]]
 
* [[루나민트]]
 
* [[루나민트]]
 +
* [[코스모스]]
  
 
{{암호화폐 종류|검토 필요}}
 
{{암호화폐 종류|검토 필요}}

2022년 3월 1일 (화) 17:38 기준 최신판

코스모스코인(Cosmos Coin)
코스모스코인(Cosmos Coin)
텐더민트(Tendermint)

코스모스코인(Cosmos Coin, 宇宙币) 또는 간략히 코스모스(Cosmos)는 서로 다른 블록체인을 연결하는 인터체인을 위한 암호화폐이다. 코스모스체인은 각각 독립적으로 존재하는 여러 블록체인들이 서로 통신할 수 있도록 네트워크로 연결해 마치 블록체인 인터넷(internet of blockchain)처럼 상호 연계되어 작동하도록 하는 역할을 한다. 코스모스 네트워크는 (zone)이라고 불리는 여러 개의 독립적인 병렬 블록체인들로 구성된다. 각각의 존은 텐더민트 비잔틴 장애 허용(TBFT; Tendermint Byzantine Fault Tolerant) 합의 알고리즘으로 작동하고, 코스모스 허브는 각각의 존들을 연결하는 기간망으로 작동한다.[1] 코스모스체인을 개발한 회사는 텐더민트(Tendermint)이고, 창시자는 한국계 미국인인 재 권(Jae Kwon, 권용재)이다.

개요[편집]

코스모스는 서로 다른 블록체인을 연결하는 '인터체인' 분야 프로젝트다. 독립 블록체인들이 서로 통신할 수 있도록 연결하는 플랫폼으로, ‘블록체인의 인터넷’을 표방한다. 반면 지금 대부분의 블록체인들은 상호운용성 없이 별개로 존재한다. 이더리움 네트워크에서 비트코인을 쓸 수 없는 것도 상호운용성이 없어서다. 또한, 기존 블록체인 프로젝트의 경우, PoW 방식의 에너지 비효율, 거래량 처리 등 확장성의 한계, 미성숙한 거버넌스 등의 결함이 지적되어 왔다. 이외에도 암호화폐의 상호운용을 위해 제 3자인 거래소에서 거래를 승인받고 거래가 완료되기까지 오랜 시간이 걸리고, 거래소의 보안이 취약한 문제도 있다.[2] 가장 이상적인 해결책은 수천 개의 블록체인을 확장성과 보안성이 보장된 방식으로 연결시키는 것이다. 이를 위해 코스모스는 허브와 존(Hubs and Zones)이라는 두 종류의 블록체인 구조를 만들었다. 존은 서로 다른 각각의 블록체인이며 허브는 존을 함께 연결하기 위해 특별히 고안된 블록체인이다. 코스모스 네트워크의 허브와 존들은 블록체인 간 통신 프로토콜을 통해 상호 통신한다. 토큰들은 존들 간 거래소의 유동성 없이 허브를 통과하여 하나의 존에서 다른 존으로 안전하고 빠르게 전송될 수 있다. 코스모스 허브는 각 존이 보유한 토큰 총액을 추적하며, 누구든지 코스모스 허브에 새로운 존을 연결할 수 있어 새로운 블록체인과도 호환성을 가진다. 이를 위해 코스모스는 블록체인을 쉽게 만들 수 있어야 한다는 생각으로, 텐더민트 코어와 코스모스 SDK로 블록체인을 강력하고 쉽게 개발할 수 있게 했다. 그리고 IBC 프로토콜과 페그존을 통해 다른 종류의 블록체인들이 서로 가치(토큰)와 데이터를 거래하는 동시에 자체 블록체인의 권한을 유지하도록 했다. 또, 코스모스는 수평적 및 수직적 확장성 솔루션을 통해 블록체인 애플리케이션이 수백만 명의 사용자로 확장될 수 있도록 했다. 무엇보다 코스모스는 제품이 아니라 모듈형, 적응형, 상호교환이 가능한 도구 세트를 기반으로 구성된 생태계다. 2017년 4월 코스모스코인은 한국의 암호화폐 거래소인 코인원(Coinone)을 통하여 ICO를 진행하여, 불과 1분 만에 펀딩 목표 금액인 1,000만 달러(약 110억원)를 투자 자금으로 모금 완료했다.[3]

주요 인물[편집]

재 권(Jae Kwon, 권용재) 코스모스코인 창시자
  • 재 권 : 재 권(Jae Kwon)은 코스모스코인(Cosmos Coin)의 창시자이다. 한국계 미국인으로, 한국식 이름은 권용재이다. 미국 코넬대학교에서 컴퓨터 공학을 전공한 그는, 작업증명방식(PoW)의 결점인 나씽 앳 스테이크(Nothing at Stake)를 악용한 공격 문제를 해결하기 위해 텐더민트(Tendermint) 합의 알고리즘을 만들었고 이로 인해 블록체인 업계의 유명 인사로 떠올랐다. 그는 지금도 텐더민트를 개선하고 생태계를 확장하기 위한 개발과 연구에 집중하고 있다. 현재 그는 스위스 추크의 인터체인 재단(Interchain Foundation)에서 이사직을 맡아 코스모스(Cosmos)의 비전을 홍보하고 퍼블릭 블록체인의 상호 운용성과 확장성을 높이기 위해 노력하고 있다.

등장배경[편집]

비트코인을 시작으로, 2세대 이더리움, 3세대 이오스, 카르다노(에이다), 테조스, 네오퍼블릭 블록체인들이 속속 등장하고 있다. 1세대 블록체인인 비트코인은 2008년에 만들어진 P2P (peer-to-peer) 디지털 통화이다. PoW 합의 알고리즘을 사용하고, 블록체인 상에서 운영되는 최초의 분산형 애플리케이션이었다. 당시 이 분산형 애플리케이션을 개발하기 위해서는 비트코인 코드베이스를 포킹하거나 그 위에 바로 구축하는 방법 밖에 없었다. 그러나 비트코인 코드베이스는 매우 단일화되어 있었고, 네트워킹, 합의 및 애플리케이션이라는 세 가지 층 모두가 혼재되어 있었다. 또한 비트코인 스크립팅 언어는 제한적이고, 사용자 친화적이지도 않았다.

2014년 비탈릭 부테린은 분산형 애플리케이션을 구축하기 위해 비트코인과는 차별화된 모든 종류의 프로그램을 배포할 수 있는 단일 블록체인인 이더리움을 내놓았다. 이더리움은 애플리케이션 계층을 EVM(Ethereum Virtual Machine)이라는 가상 머신으로 전환함으로써 이를 달성했다. 이 가상 머신은 개발자가 이더리움 블록체인에 배포할 수 있는 스마트 계약을 처리 할 수 있다. 이 새로운 접근법으로 인해 수천 명의 개발자가 디앱을 만들 수 있었다. 그러나 이 접근법에도 다음과 같은 문제점이 있었다. 첫 번째는 확장성이다. 이더리움 위에 구축된 디앱의 TPS는 15건이다. 이것은 PoW 사용과 이더리움 디앱들이 단일 블록체인의 제한된 리소스를 놓고 경쟁하기 때문에 생긴 문제이다. 두 번째는 사용성이다. EVM은 모든 사용 사례를 수용해야 하는 샌드박스이기 때문에 평균 사용 사례에 대해 최적화돼 있다. 이는 개발자가 디앱의 설계와 효율성을 절충해야한다는 것을 의미한다. 무엇보다도 몇 가지 프로그래밍 언어로 제한되어 있어 코드 자동 실행을 구현할 수 없다. 마지막은 권한의 문제다. 각각의 디앱이 모두 동일한 기본 환경을 공유하기 때문에 주권에 제한이 있다. 기본적으로 이더리움은 디앱 계층과 기본 환경 계층이라는 두 개의 관리 계층을 만든다. 전자는 후자에 의해 제한된다. 디앱에 버그가 있는 경우, 이더리움 플랫폼 자체의 거버넌스에 의해 승인되지 않으면 아무 것도 수행 할 수 없다. EVM에 새로운 기능이 필요한 디앱의 경우 이더리움 플랫폼의 거버넌스에 전적으로 의존해야 한다. 즉, 이더리움은 스마트 계약의 형태로 사용자 맞춤형 로직을 배포할 수 있는 가상 머신 블록체인을 제공하여 디앱 개발을 단순화했다. 그러나 블록체인 자체 개발을 단순화한 것은 아니었다. 비트코인과 마찬가지로 이더리움은 포크하기가 어렵고, 사용자 맞춤형으로 제작하기 어려운 모놀리식 기술 스택으로 남아 있다.

이더리움의 문제점은 이더리움에만 국한되지 않고 모든 사용 사례에 맞는 단일 플랫폼을 만들려고 한는 모든 블록체인에 적용된다. 즉, 현재 블록체인의 가장 큰 문제 중 하나는 블록체인이 기존 블록체인과 상호 운용이 불가능하며, 심지어 암호화폐들 자체 간에도 상호 운용이 어렵다는 점이다. 각 화폐는 자체 블록체인과 자체 커뮤니티를 가지면서 지나치게 독립적이다. 이러한 문제를 해결하기 위해 코스모스가 탄생한 것이다. 코스모스의 비전은 개발자들이 서로 소통을 할 수 있는 환경에서 블록체인을 만듦으로 블록체인 간의 장벽을 무너뜨리는 것이다. 최종 목표는 분산된 방식으로 서로 통신할 수 있는 블록체인 네트워크인 ‘블록체인의 인터넷’을 만드는 것이다. 코스모스를 이용하면 블록체인들은 자신의 블록체인에 대한 권한을 가질 수 있고, 트랜잭션을 신속하게 처리하며 생태계의 다른 블록체인과 통신할 수 있어 다양한 사용 사례에 최적으로 사용할 수 있다. 코스모스는 텐더민트, 코스모스SDK 및 IBC 프로토콜과 같은 오픈 소스 도구 세트를 통해 사람들이 맞춤식, 안전성, 확장성 및 상호 운용 가능한 블록체인 디앱을 신속하게 구축 할 수 있도록 설계돼 있다.[4]

특징[편집]

텐더민트 코어[편집]

코스모스 블록체인 구조

최근까지 블록체인을 구축하려면 처음부터 3개의 층(P2P 네트워킹 층, 합의 층, 애플리케이션 층)을 모두 구축해야 했다. 텐더민트 코어는 이 3개의 층 중에서 P2P 네트워킹 층과 합의 층을 일반 엔진으로 묶어 개발자가 복잡한 기본 프로토콜이 아닌 디앱 개발에 집중할 수 있도록 지원하는 솔루션이다. 즉, 텐더민트 코어는 두 개의 층, 즉 합의 층과 P2P 네트워킹 층으로 구성된 프로토콜이다. 결과적으로 텐더민트는 수백 시간의 개발 시간을 절약하게 한다. 텐더민트의 유용함은 사용자보다는 디앱 개발자에게 작용한다. 또, 텐더민트는 텐더민트 코어 엔진 내에서 사용되는 비잔틴 장애 허용(BFT) 합의 알고리즘의 이름으로도 사용된다. 텐더민트 코어 엔진은 ABCI(Application Blockchain Interface)라는 프로토콜에 의해 애플리케이션 층에 연결된다. 이 프로토콜은 모든 프로그래밍 언어로 래핑할 수 있으며, 개발자들이 그들의 필요에 맞는 언어를 선택할 수 있게 해준다. 그러나 이게 끝이 아니다. 텐더민트 코어를 최첨단 블록체인 엔진으로 만드는 속성은 다음과 같다.

  • 퍼블릭/프라이빗 블록체인 : 텐더민트 코어는 블록체인의 P2P 네트워킹 층과 합의 층만 처리하는데, 이는 노드들이 트랜잭션을 전파하고, 검증자들이 블록체인에 추가하기 위한 일련의 트랜잭션 합의를 돕는다는 것을 의미한다. 반면 검증자들을 선출하는 방법을 정의하는 것은 애플리케이션 층의 역할이다. 따라서 개발자는 텐더민트 코어 엔진 위에 퍼블릭 및 프라이빗 블록체인을 모두 구축할 수 있다. 만약 애플리케이션 층이 얼마나 많은 토큰을 보유하고 있느냐를 기준으로 검증자를 선출하는 방법을 정의하는 경우, 이 블록체인은 PoS(Proof-of-Stake)로 특성화될 수 있다. 그러나 애플리케이션 층에서 사전에 승인된 제한된 세트만 검증자가 될 수 있다고 정의하면, 블록체인은 허가형 또는 프라이빗으로 특성화될 수 있다. 이런 식으로 개발자는 블록체인의 검증자 선출 방식을 사용자 맞춤형으로 자유롭게 정할 수 있다.
  • 고성능 : 텐더민트 코어는 1초 단위로 블록 시간을 가질 수 있으며 초당 최대 수천 건의 트랜잭션을 처리 할 수 ​​있다.
  • 즉결성 : 텐더민트 합의 알고리즘의 속성은 즉각적인 최종성이다. 검증자의 1/3 이상이 정직한(byzantine) 이상, 포크는 결코 만들어지지 않는다. 또, 사용자는 블록이 생성되자마자 트랜잭션이 완료되었는지 확인할 수 있다. 반면 비트코인이나 이더리움과 같은 PoW 블록체인에서는 그렇지 않다.[4]

텐더민트 비잔틴 장애 허용[편집]

텐더민트는 비트코인작업증명(PoW) 합의 알고리즘이 지닌 속도, 확장성, 과다한 전기료 등의 문제를 해결하기 위해 2014년에 탄생했다.[5] 1988년 MIT에서 개발한 BFT 알고리즘을 개선하여 지분증명(PoS) 알고리즘의 Nothing-at-stake 문제를 해결한 최초의 프로젝트다. 즉, 코스모스는 텐더민트 BFT 합의 알고리즘에 기반한 퍼블릭 블록체인이다.

오늘날, 사실상 모든 비트코인 모바일 지갑은 신뢰할 수 있는 서버를 사용하여 트랜잭션 검증을 제공한다. 이것은 작업 증명의 트랜잭션이 확정된 것으로 간주되기 전에 많은 확인을 기다려야 하기 때문이다. 이렇다 보니 코인베이스와 같은 서비스에서는 이미 이중 지출 공격이 나타나기도 했다. 다른 블록체인 합의 알고리즘과 달리, 텐더민트는 즉각적이고 안전한 모바일-클라이언트 지불 검증을 제공한다. 텐더민트는 절대 포크를 하지 않도록 설계돼 있어 모바일 지갑은 즉각적으로 거래 확인을 받을 수 있어 스마트 폰에서 신뢰가 필요없는 결제를 실현할 수 있다.

코스모스의 검증자들은 비트코인의 채굴자들과 비슷한 역할을 하지만 대신 암호서명을 사용해 투표를 한다. 즉, 검증자는 다음 블록에 대해 합의하기 위해 암호서명 투표를 전달하여 합의 프로토콜에 참여한다. 검증자의 투표 권한은 투표권이 담보로 묶인 토큰의 양(PoS)에 따라 결정된다. 이 합의 알고리즘은 고정된 알려진 검증자들을 필요로 하며, 각각의 검증자는 공개키로 식별된다. 검증자는 한 번에 한 블록씩 합의에 도달할 수 있다. 한 블록에 대한 합의를 위한 투표는 각 라운드에서 진행된다. 각 라운드에는 라운드 리더 또는 블록을 제안하는 제안자가 있다. 그런 다음 검증자들은 제안된 블록을 수락할지 아니면 다음 라운드로 넘어갈지에 대해 단계적으로 투표한다. 라운드 제안자는 검증자들의 투표권에 비례하여 순서화된 검증자 목록에 의해 선택된다.

검증자가 아닌 노드들은 ‘아톰’이라고 부르는 그들의 지분 토큰을 임의의 검증자에게 위임하여 블록 수수료와 아톰 보상을 얻을 수는 있으나, 위임된 검증자가 해킹당하거나 프로토콜을 위반할 경우, 처벌을 받게 될 수도 있다.[6]

검증자[편집]

텐더민트는 검증자 수가 많아질수록 통신의 복잡도가 증가하여 속도가 느려진다.[7] 반면 충분한 검증자들을 통해 블록체인의 전 세계 분산화 및 매우 빠른 이체확인 속도를 제공할 수 있다.[8] 또한 대역폭이나 저장공간 및 병렬 컴퓨팅 용량이 증가하면서 더 많은 검증자들을 지원할 수 있다.[9] 텐더민트는 처음 최대 검증자 수가 100명이 되도록 제한하고 있으며 10년동안 매년 13%비율로 증가하여 최종적으로는 총 300명의 검증인을 가질 것이다.[10] 허용된 검증자 수보다 많은 경우를 제외하고는 누구든지 검증자이 될 수 있다. 만약 검증자 수가 허용치 이상인 경우, 가장 적은 아톰을 보유한 검증자보다 더 높은 아톰을 담보로 제공해야 하며, 이런 경우 새로운 검증자가 기존 검증자를 대체할 수 있다. 검증자 관련 인센티브는 아래와 같다.

  • 검증자 처벌  : 동일한 높이 또는 라운드에서 이중 서명 혹은 텐더민트 합의 프로토콜을 위반한 행위는 즉시 발견할 수 있기 때문에, 검증자는 해당 지위를 상실하고 예치된 보증금과 지분을 상당히 잃을 수 있다.[11] 때때로 지역 네트워크 단절, 전원 장애나 그 밖의 이유로 검증자는 단절될 수 있다. 그 경우 과거의 투표가 이루어지지 않은 횟수를 고려하여 일정 수준 이상인 경우 검증인을 비활성화하고 지분의 일정 부분을 잃게 한다. 특정 악의적 행위는 블록체인 내 명확한 증거가 남지 않을 수도 있는데, 이런 경우 압도적 다수의 합의가 있다면, 검증자들은 외부에서 합의하여 악의적 검증자를 제외 시킬 수 있다.[7] 투표권의 1/3 이상이 악의적으로 연합하여 코스모스를 중단시키거나 이들이 악의적 행동의 증거가 블록체인으로 들어오지 않게 검열하여 삭제하는 경우, 허브는 하드포크를 통한 블록 재조정 프로포잘로 복구되어야 한다.[12]
  • 인센티브 : 코스모스 검증자들은 아톰뿐만 아니라 어떤 유형의 토큰이라도 이체 수수료로 받을 수 있다.[8] 각 검증자는 교환비율과 이체방식을 주관적으로 선택할 수 있다. 징수된 수수료는 세금을 제외하고 본딩된 아톰에 비례하여 주주들에게 재분배된다.[13] 투표권을 다른 검증자에게 위임하는 아톰 보유자는 일정 수준의 수수료를 위임받은 검증자에게 지급한다.[10]
  • 세금 : 이체된 수수료 중 지금준비금 세금은 ‘지급준비금 풀’에 충당이 되며 이는 코스모스 네트워크의 보안과 가치를 높이는 데 이용된다.[9]
  • 해커에 대한 인센티브 : 코스모스 허브 보안의 핵심은 검증자인데, 이들이 해킹당할 경우 네트워크 전체의 보안이 위험해질 수 있다.[12] 따라서 코스모스 허브는 해커들이 특정 검증자에게 해킹당한 사실을 알린다면, 해킹이 확인된 즉시 해당 검증자와 위임자들은 비활성화되고, 검증자과 위임자들의 아톰이 감소하며 해커는 그만큼 보상을 받는다(약 5%).

코스모스 SDK[편집]

텐더민트 코어는 블록체인의 개발 시간을 몇 년에서 몇 주 단위로 단축하지만, 처음부터 안전한 ABCI-app을 구축하는 것은 여전히 어려운 작업이다. 이것이 코스모스 SDK가 존재하는 이유다. 코스모스 SDK는 텐더민트 코어 위에 안전한 블록체인 애플리케이션을 구축하는 과정을 간소화하는 일반화된 프레임워크다. 그것은 다음의 두 가지 주요 원칙에 기반한다.

  • 모듈성 : 코스모스 SDK는 모든 코스모스 도구와 마찬가지로 모듈형으로 설계되었다. 코스모스 SDK의 목표는 개발자가 애플리케이션의 각 기능을 처음부터 코딩하지 않고도 애플리케이션별 블록체인을 쉽게 시작할 수 있는 모듈 생태계를 만드는 것이다. 누구나 코스모스 SDK 용 모듈을 만들 수 있으며, 블록체인에서 준비된 모듈을 사용하는 것은 모듈을 애플리케이션으로 가져오는 것만큼 간단하다. 예로, 텐더민트 팀은 코스모스 허브에 필요한 기본적인 모듈 세트를 만들고 있다. 이 모듈들은 개발자가 자신의 애플리케이션을 구축할 때 사용할 수 있다. 또한 개발자는 새로운 모듈을 만들어 애플리케이션을 사용자 맞춤형으로 만들 수 있다. 코스모스 네트워크가 발전함에 따라 SDK 모듈 생태계가 확장되어 복잡한 블록체인 애플리케이션의 개발이 점점 쉬워질 것이다.
  • 기능 기반의 보안성 : 기능은 모듈 간의 보안 경계를 제한하므로 개발자는 모듈의 구성 가능성에 대해 더 많이 추론하고 악의적이거나 예상치 못한 상호작용의 범위를 제한 할 수 있다.

또한, 코스모스 SDK는 CLI(command line interfaces), REST 서버 및 기타 일반적으로 사용되는 다양한 유틸리티 라이브러리를 구축하기 위한 유용한 개발 도구를 함께 제공한다.[4]

이더민트[편집]

코스모스 SDK의 가장 큰 장점은 모듈화를 통해 개발자가 이미 Go언어로 만든 블록체인 코드베이스를 그 위에 포팅[14]할 수 있다는 것이다. 즉, 이더민트는 EVM을 SDK 모듈로 포팅하는 프로젝트로, 텐더민트 위에 이더리움을 구현한 것이다. 이더민트는 이더리움과 똑같이 작동하지만 텐더민트 코어의 모든 특성을 활용할 수 있다. 또, 기존 이더리움 도구 (Truffle, Metamask 등)는 이더민트와 호환되므로 추가 작업없이 스마트 계약을 포팅할 수 있다. 그래서 Rust, Go, Haskell 등 특정 언어로 쓰인 현재의 이더리움 코드베이스를 가져와서 텐더민트의 컨센서스 엔진을 사용하여 ABCI 애플리케이션으로 실행할 수 있다. 코스모스와 함께 이더민트를 출시하여 개발자들이 두 생태계의 장점을 모두 경험할 수 있는 기회를 제공한다. 이더리움 가상머신(EVM)을 통해 스마트 계약을 실행함과 동시에 텐더민트 컨센서스 엔진이 제공하는 최고의 성능을 누린다. 이더민트는 Web3 호환성, 매우 높은 처리량, 병렬 확장서, 트랜잭션 완결성이라는 기능을 제공한다. 자세한 설명은 아래와 같다.

  • Web3 완벽한 호환성 : 이더민트는 이더리움의 web3 인터페이스뿐만 아니라 RPC엔드 포인트를 통해 이더리움 클라이어트 관련 도구들과 완벽하게 호환된다. 예를 들어 이더리움에 멋진 지갑 UI를 개발한 개발자는 해당 애플리케이션을 이식(port)하고 이더민트에서 실행하는데 아주 적은 시간이 걸린다. 코드 값 하나만 변경하면 된다. 바로 사용자가 가리키는 URL값 하나이다.
  • 매우 높은 처리량  : 텐더민트의 PoS 엔진에서 실행되는 만큼 이더리움을 사용하는 것보다 이더민트를 사용하면 빠른 속도을 가진다. 처리량이 높은 컨센서스 엔진 위에서 실행된 스마트 계약은 사용자끼리 경쟁을 하지 않아 수수료가 저렴하다. 텐더민트는 EVM보다 트랜잭션 수를 최대 20배까지 더 많이 처리 할 수 있기 때문에 네트워크가 마비되거나 트랜잭션 수수료가 폭등하는 일은 발생하지 않는다. 결국, 이더민트에서 스마트 계약을 실행함으로써 수수료를 20배에서 최대 50배까지 절약할 수 있다.
  • 무한한 병렬 확장성 : 이더리움(Ethereum)의 가장 큰 문제는 확장성이다. 이더리움은 최대 12.5 TPS만 처리할 수 있다. 반면 이더민트는 200 TPS까지 처리할 수 있지만 이것 또한 충분하지 않다. 이것을 해결하고자 등장한 것이 무한한 병렬 확장성(Unlimited Horizontal Scalability)이다. 예를 들어, 코스모스 허브가 론칭되었고 이더민트가 최대 처리량인 200 TPS에 도달했다고 가정한다면, 우리는 코스모스의 모듈 기반 디자인으로 탄생한 허브(hub)와 존(zone) 덕분에 두 번째 이더민트 존(zone)을 만들어서 IBC 프로토콜을 통해 허브(hub)에 붙이는 것이 가능하다. 그럼 바로 400 TPS까지 처리를 할 수 있다. 이것으로도 부족하면 이더민트 존을 두 개 더 붙여 800 TPS를 달성하는 식으로 병렬적으로 확장성을 달성할 수 있다.
  • 즉각적인 거래 완결성 : 비트코인이더리움의 작업증명(PoW)은 최종적인 결정을 하지는 않는다. 이론적으로는 51%의 공격에 의해 이미 생성된 블록도 뒤집힐 수 있다. 블록이 완결성을 가진다는 뜻은 블록이 뒤집힐 가능성이 없다는 것이다. 비트코인의 합의 프로토콜은 이러한 100% 완결성을 보장해주지 않기 때문에 엄밀히 말해서 컨센서스가 안전하다고 할 수 없다. 이더리움의 작업증명 역시 확률적으로 완결성을 가진 것뿐이지 100% 완결성을 갖지는 못한다. 반면 이더민트는 100% 완결성을 보장하는 블록이 평균적으로 1초 이내에 생성이 된다.[15]

IBC 프로토콜[편집]

블록체인들을 연결하는 방법은 IBC(Inter-Blockchain Communication) 프로토콜을 통해 이루어진다. IBC를 번역하면 '블록체인 간 커뮤니케이션'으로. 텐더민트 합의 알고리즘의 즉결성을 활용하여 여러 종류의 블록체인들이 서로 가치(토큰) 또는 데이터를 전송할 수 있도록 한다. 다음과 같은 절차와 기능에 의해 가능하다.

  • 다른 층 : 여러 종류의 블록체인은 서로 다른 층을 가진다. 즉, 네트워킹 , 합의 및 애플리케이션 층을 구현하는 방식이 서로 다를 수 있다 . IBC와 호환되기 위해서 블록체인은 몇 가지 요구 사항만 따르면 된다. 주요 요구 사항은 합의 층이 빠른 최종성을 가져야 한다는 것이다. 하지만 비트코인과 이더리움과 같은 작업증명 체인은 확률론적 최종성을 가지고 있기 때문에 이 범주에 포함되지 않는다.
  • 권한 : 모든 블록체인은 다음 블록에 합의하는 역할을 하는 검증자에 의해 유지된다. Proof-of-Work에서는 이러한 검증자를 채굴자라고 한다. 코스모스가 제공하는 블록체인은 자체 권한과 자체 검증자를 갖는 블록체인이다. 많은 경우 검증자들이 궁극적으로 상태를 수정할 책임을 지고 있기 때문에 블록체인이 모든 권한을 갖는 것은 매우 중요하다. 반면 이더리움에서 디앱은 모두 공통된 검증자에 의해 실행되기 때문에 각 디앱에게는 제한된 권한만 주어진다.

IBC를 사용하면 여러 종류의 블록체인이 토큰과 데이터를 서로 전송할 수 있도록 허용한다. 즉, 서로 다른 애플리케이션과 검증자가 있는 블록체인들이 상호운용될 수 있다는 것을 의미한다. 퍼블릭 블록체인과 프라이빗 블록체인 역시 토큰을 서로 전송할 수 있다.[4]

IBC 작동 원리[편집]

IBC의 작동 원리는 매우 간단하다. 체인 A의 계정에서 10개의 아톰을 체인 B로 보내는 경우를 예로 들어보자.

  • 추적 : 계속해서 체인 B는 체인 A의 헤더를 받으며 그 반대의 경우도 마찬가지이다. 이렇게 하면 각 체인이 다른 체인의 검증자를 추적 할 수 있다. 본질적으로 각 체인은 다른 체인의 라이트 클라이언트(light-client)를 실행한다.
  • 동결 : IBC 전송이 시작되면, 아톰은 체인 A에 묶이게 된다.
  • 증거 전달 : 그런 다음, 10개의 아톰이 묶였다는 증거가 체인 A에서 체인 B로 전달된다.
  • 확인 : 이 증명은 체인 A의 헤더에 대해 체인 B에서 검증되고, 이것이 유효하다면 체인 B에 10개의 아톰 상품권이 생성된다.

체인 B에서 생성된 아톰은 실제 아톰이 아니다. 아톰은 체인 A에만 존재하기 때문이다. 그것들은 이 아톰들이 체인 A에서 동결되었다는 증거와 함께 체인 A에서 나온 아톰의 B에 대한 표현이다.[4]

코스모스 생태계[편집]

허브와 존

IBC는 두 개의 다른 블록체인이 토큰을 서로 전송할 수 있게 하는 프로토콜이다. 그렇다면 블록체인 네트워크는 어떻게 만들어 나가는 것일까. 첫 째는, 직접 IBC 연결을 통해 네트워크의 각 블록체인을 서로 연결하는 것이다. 이 접근법의 문제는 네트워크의 연결 수가 블록체인의 수와 함께 2차식으로(quadratically) 증가한다는 것이다. 만약 네트워크에 100 개의 블록체인이 있고 각각의 블록체인이 서로 다른 IBC 연결을 유지해야하는 경우, 그것은 4,950개의 연결이 되어 금방 감당할 수 없게 된다.

이를 해결하기 위해 코스모스는 허브와 존(Hubs and Zones)이라는 두 종류의 블록체인을 가진 모듈형 구조를 만들었다. 존은 서로 다른 각각의 블록체인이며 허브는 존을 함께 연결하기 위해 특별히 고안된 블록체인이다. 기본적으로 코스모스 허브는 ‘(zone)’이라고 부르는 여러 독립된 블록체인들을 관리한다. 존이 허브와 IBC 연결을 생성하면, 연결된 다른 모든 존에 자동으로 접근할 수 있다. 결과적으로 각각의 존은 제한된 허브 세트와 제한된 수의 연결만 설정하면 된다. 존들은 최근의 블록 커밋들을 끊임없이 허브로 전송하며, 허브는 이를 통해 항상 최신 상태를 유지한다. 마찬가지로, 각 존도 허브의 상태를 제공받는다. 존들은 정보의 송신과 수신의 증거를 포스팅함으로 정보의 패킷들을 교환한다. 허브는 또한 존의 이중 지출을 방지한다. 즉, 존이 허브로부터 토큰을 받을 때, 이 토큰의 존과 허브만 신뢰하면 된다.

  • 허브 : 멀티자산 분산 원장을 관리하는 블록체인으로, 전체 시스템을 위한 토큰의 ‘중앙 원장’역할을 하므로 보안이 무엇보다도 중요하다.[16]
  •  : 존은 허브와 IBC(Inter Blockchain Communication) 메시지를 교환하는 독립 블록체인으로, 허브의 관점에서 존은 IBC 패킷을 이용하여 토큰을 송수신할 수 있는 ‘멀티자산 동적 구성원 멀티 시그니쳐 계정’이다.[16]
  • 블록체인 간 커뮤니케이션(IBC, Inter-Blockchain Communication) : 토큰은 개인 사용자나 존 자체가 보유할 수 있으며, 이 토큰들을 ‘코인패킷’이라 부르는 특수 IBC 패킷을 통해 하나의 존에서 다른 존으로 이동할 수 있다.[11]

코스모스 네트워크에서 출시하는 첫 번째 허브는 코스모스 허브가 될 것이다. 코스모스 허브는 PoS 알고리즘의 퍼블릭 블록체인이다. 이 블록체인에서 사용하는 토큰은 아톰이라고 하며, 거래 수수료는 여러 토큰으로 지불된다.

네트워크 구성 요소[편집]

풀 노드[편집]

풀 노드(Full Node)는 블록체인의 전체 기록을 모두 보관하고 있는 머신이다.

검증자[편집]

검증자(Validator)는 새로운 블록을 제안하거나 제안된 블록에 동의 또는 거절을 할 수 있는 풀 노드이다. 코스모스 허브의 론칭에는 총 100개의 검증자 노드가 존재한다. 10년 동안 순차적으로 300개까지 늘어난다. 검증인들은 보안에 신경을 많이 써야 한다. 만약 검증자 노드에 문제가 생기면 슬래싱(slashing)을 통해 처벌을 받게 된다. 그러므로 검증자 노드는 퍼블릭 인터넷 환경에 직접 연결되어 있으면 안된다.

센트리 노드[편집]

검증인 노드는 퍼블릭 인터넷 환경에 직접 연결되면 안 되기 때문에 센트리 노드가 존재한다. 센트리 노드(Sentry Node)는 검증인 노드 대신 퍼브릭 인터넷에 연결되어 메시지를 받은 다음 이를 전달하는 일종의 방화벽 같은 존재이다. 센트리 노드도 그 용도에 따라 퍼블릭 센트리 노드와 프라이빗 센트리 노드로 구분할 수 있다. 프라비잇 센트리 노드는 내부 또는 검증인-대-검증인 커뮤니케이션을 쉽게 하기 위해 사용된다.

애플리케이션 노드[편집]

애플리케이션 노드는 공개적으로 이용 가능한 풀 노드에 연결되어 전체 네트워크와 상호작용을 할 수 있다. 하지만, 현실에서는 일반적으로 애플리케이션 노드 독자적으로 전체 네트워크와 상호작용하기 위해 풀 노드를 운영한다.

씨드 노드[편집]

씨드 노드(Seed Node)는 공개적으로 이용가능한 다른 노드에게 지속적으로 문의(query)를 함으로써 네트워크에 있는 노드들의 상태를 업데이트한다. 씨드노드들의 리스트(List)를 작성해서 노드들의 상태를 정리한 다음 네트워크에 새롭게 참여하는 노드들에 정보를 제공한다.

라이트웨이트 노드[편집]

라이트웨이트 노드(Lightweight Node)는 블록체인의 전체가 아니라 최근 블록들만 저장하는 머신이다. [17]

비 텐더민트(non-Tendermint) 체인 연결 방법[편집]

페그존(Peg-Zone)

지금까지 제시한 코스모스의 구조는 텐더민트 기반의 체인이 어떻게 상호운용될 수 있는지에 대한 설명이었다. 그러나 코스모스는 텐더민트 체인에만 국한되지 않는다. 모든 종류의 블록체인이 코스모스와 연결될 수 있다.

  • 즉결성 체인 : 즉결성 합의 알고리즘을 사용하는 블록체인은 IBC를 적용하여 코스모스와 연결할 수 있다. 예를 들어, 이더리움이 캐스퍼 FFG (Friendly Finality Gadget)로 전환하는 경우, IBC를 캐스퍼와 함께 사용하여 이더리움을 코스모스 생태계와 직접적으로 연결할 수 있다.
  • 확률론적 완결성 체인 : PoW 체인과 같이 즉결성을 갖지 않는 블록체인의 경우 상황은 좀 더 복잡해진다. 이 체인의 경우, 페그존(Peg-Zone)이라는 특수한 종류의 프록시 체인을 사용한다. 페그존은 다른 블록체인의 상태를 추적하는 블록체인이다. 페그존 자체는 즉결성을 가지고 있어 IBC와 호환된다. 그 역할은 즉결성을 갖지 않는 블록체인의 연결을 위한 최종성을 만드는 것이다.

페그존은 그들이 연결하고자 하는 특정 체인에 맞게 사용자 맞춤형으로 구축할 필요가 있다. 이더리움 페그존을 구축하는 것은 비교적 간단하다. 왜냐하면 이더리움은 계정을 기반으로 하고 스마트 계약을 가지고 있기 때문이다. 하지만 비트코인 페그존을 만드는 것은 좀 더 어려운 일이라고 한다.[4]

확장성 문제 해결[편집]

코스모스는 블록체인을 쉽게 만들고 모든 블록체인을 서로 연결할 수 있는 기능을 제공하는데 아직 해결하지 못한 문제가 있다. 확장성 문제이다. 이를 위해 코스모스는 두 가지 유형의 확장성을 활용하고자 한다.

  • 수직적 확장성 : 이 방법은 블록체인 자체를 확장하는 방법을 포함한다. 작업 증명에서 벗어나 그것의 구성 요소를 최적화함으로써 텐더민트 코어는 초당 수천 건의 트랜잭션에 도달 할 수 있다. 병목 요소는 애플리케이션 자체이다. 예를 들어, EVM과 같은 애플리케이션은 트랜잭션 유형과 상태 전이 기능이 직접 내장된 애플리케이션 (예: 코스모스 SDK 애플리케이션) 보다 트랜잭션 처리량에 훨씬 더 낮은 제한을 부과한다. 이것이 애플리케이션 별 블록체인이 의미가 있는 이유이다.
  • 수평적 확장성 : 컨센서스 엔진과 애플리케이션이 고도로 최적화되어 있더라도, 어느 시점에서 단일 체인의 거래 처리량은 불가피하게 그것을 넘을 수 없는 벽에 부딪친다. 이것이 수직적 확장성의 한계이다. 이를 넘어설 해결책은 다중 체인 구조를 사용하는 것이다. 즉, 동일한 애플리케이션을 실행하고 같은 검증자에 의해 작동되는 여러 개의 병렬 체인이 이론적으로 무한히 확장 가능한 블록체인을 만드는 것이다. 코스모스는 메인넷 론칭 시 우수한 수직적 확장성을 제공 할 것이며, 나중에 IBC 모듈 완성 후 수평적 확장성 솔루션도 구현할 것이다.[4]

거버넌스[편집]

코스모스 허브의 검증인과 위임자는 코스모스 허브의 정책들을 위한 ‘코드가 아니라 평이한 언어로 된 규칙’을 표결에 부쳐 수정할 뿐 아니라 ‘블록 가스 한계’ 같은 시스템의 사전에 설정된 제한들을 업그레이드를 통해 자동으로 변경하는 제안도 표결에 붙일 수 있다.[18] 규칙은 이더리움의 The DAO 사건 같은 절도 및 버그 관련 문제들의 이해관계자들이 응집할 수 있도록 도우며, 보다 신속하고 깔끔한 해결책이 나올 수 있도록 한다.[10] 각 존 역시 자체적인 규칙과 거버넌스 메커니즘을 가질 수 있다. 예를 들어, 코스모스 허브가 변경 배제 규칙을 적용한 경우라면, 각 존은 절도와 버그를 위한 롤백 관련 자체 정책을 설정할 수 있다. 코스모스 네트워크는 상이한 정책의 존들 간 상호운용성을 확보함으로 사용자들에게 궁극적 자유와 실험의 기회를 제공한다.

토큰 발행[편집]

아톰[편집]

코스모스 허브는 다중 자산 분장원장으로써 내부 토큰인 아톰을 가진다.[9] 아톰은 코스모스 허브의 유일한 지분 토큰으로, 아톰의 보유자가 투표, 검증 또는 다른 검증자들에게 위임하기 위해 필요하다.[12] 이더리움과 유사하게 Denial-of-Service Attack을 예방하기 위해 거래 수수료를 지불하기 위해 아톰이 사용될 수 있다.[13] 2019년 2월 19일 한국의 암호화폐 거래소인 코인원(Coinone)은 전 세계에서 처음으로 코스모스체인의 아톰(ATOM)을 상장했다. 코인원은 아톰의 거래를 3월 중 시작하겠다고 밝혔다.

포톤[편집]

코스모스는 아톰에 이은 두 번째 토큰인 포톤(PHOTON)을 발행한다. 포톤은 현재 코드명으로 추후에 바뀔 수 있다. 이 코드명은 가시광선을 빠른 속도로 전달하는 에너지의 이산형 패킷(discrete packet) 기본 입자인 ‘포톤’에서 가져왔다. 포톤은 코스모스 허브의 두 번째 고유 토큰이자 수수료 지불을 위해 사용되는 수수료 토큰이다. 아톰보다는 더 높은 통화유통속도(money velocity)와 유동성을 가진 토큰이 될 것이다. 포튼은 이더리움 계정 상태(account state)의 하드스푼(hard-spoon)을 통해 분배될 것이며 이더민트 존(Ethermint Zone)의 고유 토큰이다. 포톤의 블록보상은 시간당 500 포톤으로 일정하게 유지되고 점진적으로 인플레이션율은 0에 수렴할 것이다. 코스모스 허브 거버넌스를 통해 이더(ETH) 보유자들에게 1:1 비율로 포톤토큰을 하드스푼하는 것을 제안한다. [19]

테스트넷[편집]

코스모스는 2018년 한 해에만 무려 20개의 테스트넷을 가동했다. 각 테스트넷에서는 새로운 기능, 개선 사항, 버그 픽스 등을 실제 구동하는 역할을 했다. 코스모스 팀은 린스타트업의 애자일(Agile) 개발 방식을 도입해 작지만 많은 새로운 기능을 추가해 대형 문제가 발생할 확률을 최소화하였다. 코스모스 테스트넷의 명칭은 가이아(Gaia)이다. 명칭 간 충돌을 방지하고자 코스모스 프로젝트를 ‘코스모스 허브’ 라 부르고, 텐더민트 BFT 합의 알고리즘으로 작동하는 애플리케이션 특화 블록체인을 부를 때 ‘가이아’라고 한다. [20]

Gaia-6001 : 최초의 탈중앙화 테스트 넷 시작[편집]

2018년 6월에 가동한 6000-시리즈 테스트넷이다. 처음으로 비동기화(asynchronous) 환경에서 탈중앙화된 방식으로 테스트넷을 시작했다. 커뮤니티가 블록체인을 시작하는 ‘genesis.json’ 파일을 가지고 자체적으로 노드를 구동해 pre-vote와 pre-commit(텐더민트 합의 메시지)을 해 본인들이 온라인 상태임을 네트워크에 표시하는 것이다. 보팅 파워의 2/3가 온라인일 때 Gaia-6001은 블록을 생성하기 시작한다. 작업증명을 지지하는 자들은 지분증명이 검열 저항성을 보유한 블록체인 보안 모델 차원에서 너무 중앙화되었음을 비판한다. 지분증명작업증명보다 검증인(채굴자)간에 상당한 소통과 협업이 필요하며 대부분 단테 채팅방을 통해 이루어진다. Gaia-6001은 코스모스 팀의 지원 없이 시작된 테스트넷 블록체인으로 시작하였다. 코스모스 검증인은 상당한 실력을 발휘하며 코스모스/텐더민트 팀의 지원이 일절 없었던 ‘genki’ 테스트 넷을 자체적으로 시작하기도 했다. [20]

Gaia-8002 : 인터넷 최대 BFT 네트워크[편집]

Gaia-8002는 오픈 인터넷상 가장 큰 BFT 네트워크였다. 2014년 텐더민트가 등장하며 기존 BFT 네트워크의 틀을 깨고 수백 개의 노들로 이루어진 광역통신망 환경의 BFT 네트워크를 구축하였다. 게임 오브 스테이크(GOS) 계획이 공개되면서 신규 검증인들의 관심을 받았다. GOS 발표 이후 시작된 Gaia-8002는 최대 200명 검증인들이 테스트넷 기간 동안 참여하는 성과를 냈다. [20]

Gaia-9001 : 버그 바운티 프로그램[편집]

2018년 11월 12일, ‘Kauchy’라는 닉네임의 화이트 해커 개발자가 Gaia-9001 테스트넷에서 코스모스 SDK 프라임워크 내의 치명적인 버그를 공개했다. 버그가 공개가 공개된 이후 테스트넷에서 테스트 토큰이 합의 없이 추가로 발행되면서 네트워크가 멈추게 되었다. 해당 버그는 해커원(HackerOne) 시스템을 이용한 건전한 버그 신고 절차로 보기 어렵지만, 커뮤니티의 활발한 활동으로 수많은 버그와 허점들이 버그 바운티 프로그램을 통해 발견된다는 점을 주목하여야 한다. IT업계의 버그 대처 평균 기간이 약 90일인데 코스모스 커뮤니티는 일주일 만에 해결하였다.[20]

Gaia-9002 : 최초의 기능완성 테스트넷[편집]

Gaia-9002는 최초로 코스모스 허브 메인넷에 이용될 모든 기능이 포함돼있는 코스모스 SDK v0.27.0 소프트웨어를 기반으로 가동되었다. SDK v0.27.0에는 스테이킹, 슬래싱, 보상 지급, 거버넌스 등의 로직이 구현돼있는 소프트웨이다. 코스모스는 이러한 지분증명 시스템을 예치 지분증명(BPoS;Bonded Proof-of-Stake)으로 명명했다. BPoS 시스템은 기존 PoS 시스템과 달리 검증인이 네트워크에서 악의적인 행동을 할 경우 검증인과 위임자 모두 지분을 삭감당하는 시스템으로 위임자와 검증인 모두에게 책임을 부여한다. 코스모스 팀은 책임감을 부여해 지분증명 시스템의 Nothing-at-Stake 문제를 해결해 더욱 안전한 네트워크를 만들 수 있다 생각한다. [20]

Gaia-8001 : 100만 블록 테스트넷[편집]

2018년 11월 초, Gaia-8001은 100만 번째 블록을 생성했다. Gaia-8001은 테스트 넷 중 가장 오래 운영되었으며 3개월 동안 단 한 번의 중단 없이 운영되었다. 주요 이더리움 콘퍼런스인 Devcon4가 끝날 무렵 100만 번째 블록을 생성했다. 모든 지분증명 연구자들은 안전성과 생존 가능성을 동시에 가진 비잔틴 감내 시스템을 구축하는 것을 목표로 한다. 텐더민트는 안전성을 중요시하는 합의 알고리즘으로 안전성이 확보되지 않는다면 체인은 멈추게 된다. 이를 해결하기 위해 블록체인 운영자(검증인)에게 블록체인 생존성을 확보할 수 있는 책임을 부여하고, 그에 따른 금전적인 보상을 제공한다.[20]

메인넷[편집]

2019년 1월, 코스모스의 소프트웨어가 기능 완성(feature complete)단계에 도달했다. 코스모스 허브의 론칭을 앞두고 아톰(ATOM)보유자는 메인넷에서 본인의 아톰을 검증인에게 위임하고 거버넌스 제안에 투표할 수 있는 권리를 가진다. 위임자들의 선택이 코스모스 네트워크의 성공에 큰 영향을 미칠 것이다. 론칭 초기 아톰 송금 기능은 프로토콜 레벨에서 비활성화될 것이며, 추후 하드포크를 통해 활성화될 것이다. 아톰을 위임하는 것은 큰 리스크가 존재함을 인지해야 한다. 한번 검증자에게 위임된 아톰은 일정기간 동안 묶이게 되며, 스테이킹 기간 동안 검증자의 실수로 슬래싱(아톰 삭감)이 발생하는 경우 위임자의 아톰도 함께 삭감될 수 있다. 그러므로 위임자들은 검증자들에 대한 충분한 정보를 미리 확인하고 위임을 진행해야 한다. [21]

제휴[편집]

루나민트[편집]

루나민트(Lunamint)

루나민트는 코스모스코인(Cosmos Coin)이 운영하는 코스모스 아카데미의 로컬 파트너이다. 루나민트는 코스모스 블록체인 검증인(Validator) 운영과 디앱 개발을 진행하고 있다. 이들은 코스모스/텐더민트 팀 소속이 아니라 독립적인 블록체인 기업이다. 루나민트는 코스모스 테스트넷 초기부터 검증인을 운영해오며, 국내에 코스모스 자료 들을 전달하고 있다. 현재 코스모스 모바일 지갑인 루나그램(Lunagram)을 개발하고 있다. 루나그램텔레그램 오픈소스 클라이언트를 기반으로 한 메신저-지갑이며 코스모스의 상호호환성 프로토콜 IBC(Interblockchain Protocol)을 통한 인터체인 호환성을 적용할 계획이다.

로드맵[편집]

  • SDK 검사 결과 발표
  • 스테이킹 종료
  • 메인넷 오픈
  • 250,000개의 블록 생성

각주[편집]

  1. 강석오 기자, 〈보스코인·코스모스, ‘블록체인 인터넷’ 구축 협력〉, 《데이터넷》, 2017-05-10
  2. Ash Han 한승환, 〈코스모스와 아톰 – Cosmos&Atom Token〉, 《브런치》, 2016-12-24
  3. 강희영 기자, 〈코인원, 전 세계 최초 ‘코스모스 블록체인’ 아톰(ATOM) 상장〉, 《CBC뉴스》, 2019-02-19
  4. 4.0 4.1 4.2 4.3 4.4 4.5 4.6 코스모스코인 공식 홈페이지 - https://cosmos.network/intro
  5. 안성주지몬, 〈(백서 정리)코스모스 백서 정리(Cosmos Whitepaper)-1〉, 《티스토리》, 2018-07-31
  6. 황치규기자, 〈(심층분석)인터블록체인 플랫폼 코스모스, 개발 어디까지 왔나?〉, 《더비체인》, 2018-12-05
  7. 7.0 7.1 김가현기자, 〈“3세대 코스모스, 무엇이 다른가”...첫 코스모스 아카데미 서울서 열려〉, 《블록체인프레스》, 2018-10-03
  8. 8.0 8.1 블록인프레스, 〈코스모스의 가치에 대한 이해〉, 《블록인프레스》, 2018-04-26
  9. 9.0 9.1 9.2 Matthew Minseok Kim, 〈코스모스에 대해서 알아보자〉, 《미디엄》, 2018-01-26
  10. 10.0 10.1 10.2 kim066, 〈사토시가 답변한다 길을비켜라(코스모스/아톰코인]〉, 《스팀잇》
  11. 11.0 11.1 Peter Yoon, 〈코스모스 블록체인 #1 – IBC(1)〉, 《미디엄》, 2018-11-09
  12. 12.0 12.1 12.2 krexchange, 〈(Cosmos – ATOM)코스모스 알아보기〉, 《스팀잇》
  13. 13.0 13.1 publicworker, 〈코스모스는 무엇인가? 1
  14. 각기 다른 환경을 가지는 하드웨어에 소프트웨어를 이식하려면 하드웨어에 맞추어주는 작업이 필요하다. 이를 포팅이라고 한다.
  15. 코스모스 코리아, 〈이더민트(Ethermint)를 소개합니다!〉, 《미디엄》, 2018-07-10
  16. 16.0 16.1 COSMOS ATOM〉, 《크립토위키》
  17. * 코스모스 코리아, 〈코스모스 네트워크 아키텍처에 대한 이해〉, 《미디엄》, 2018-08-06
  18. 레스코, 〈코스모스 암호경제학적 분석〉, 《네이버 블로그》, 2018-07-20
  19. 코스모스 코리아, 〈코스모스 수수료 토큰 제안 — 코드명 포톤〉, 《네이버 블로그》, 2018-11-22
  20. 20.0 20.1 20.2 20.3 20.4 20.5 코스모스 코리아, 〈2018년을 되돌아보며: 코스모스 테스트넷 Top5〉, 《네이버 블로그》, 2019-01-23
  21. Cosmos Hub to Launch Mainnet Pre-launch Dependencies & How to Safely Claim Your Atoms

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 코스모스코인 문서는 암호화폐 종류에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.