로그인

검색

[17-08] 아이콘 프로젝트: 아키텍쳐 (2)

똥글왕김똥글

출처: https://brunch.co.kr/@helloiconworld/3

ICON의 구성요소를 살펴봅시다

 

넥서스(Nexus)

ICON Nexus는 ICON World 의 중심을 이룹니다. Nexus는 각 커뮤니티의 대표인 C-Rep 노드와 개별(개인 혹은 기관) 노드인 Citizen Node로 구성되어 있습니다.  의회에 각 선거구를 대표하는 국회의원들과 소수의 의견을 대변하는 비례대표의원으로 구성된 것과 같은 맥락이지요. 

 

하지만 모든 블록체인들이 full 노드로 구성되어있다면 어떻게 될까요? 개인정보나 중요한 금융, 의료 데이터 등의 정보가 유포되고 해킹당할 수도 있을 것입니다. 

 

따라서 Nexus는 연결된 블록체인들의 거래내역이 맞는지(거래 내역은 공개하지 않음) 확인해주는 기능을 하는 Light Client로 구성되어 있는 Multi-channel 블록체인입니다. 

9615f555d386bb06bba244258a39648e.png

 

 

각 커뮤니티 대표들은 Nexus와 Portal 이라는 창구를 통해 소통하며, Nexus에서 하나의 노드로서 기능하게 됩니다. 이러한 구조는 더루프가 개발한 loopchain의 그룹화 및 투표권 조정 기능에 기반한 합의 시스템에서 이루어집니다. 

 

 

 

Representation Channel

다음은 위에서 말씀드린 Nexus를 구성하고 있는 중요한 2가지 채널인 Representation Channel 과 Reserve Channel 을 살펴보겠습니다. 각 커뮤니티에서 선발된 C-Rep 대표들이 투표권을 갖고 참여하는 블록체인 채널을 Representation Channel이라고 부릅니다.  그 밖에도 ICX 거래소나 은행 등, 블록체인 밖에서 이른바 Off-chain 거래를 지원하는 노드까지 여기에 참여가 가능합니다. 

 

이 채널의 기본적인 역할은 Nexus에서 발생하는 모든 이슈에 대한 운영 정책을 제안하고, 투표를 통해 적용할 정책을 선정하는 일입니다. Nexus에 신규 노드를 추가하거나 기존 노드를 제거하고, 노드 관리, ICX 거래 수수료 조정, Notary, Reserve 등 Nexus의 다른 주요 채널에 포함된 노드의 선정과 제거도 담당하게 됩니다.

 

Representation Channel은 각 채널의 투표권을 설정하는 정책도 관리하고 있는데, 이는 선거인단 제도와 유사합니다. 기본적으로 참여한 커뮤니티 크기와 거래 규모에 비례하여 투표권 수를 할당해줍니다. 뿐만 아니라, 소수 커뮤니티에서 트랜잭션이 많이 일어난다면 투표권을 더 늘려주는 등, 투표권 제도를 조절함으로써 상대적으로 작은 규모의 커뮤니티 지위까지 강화시킬 수가 있는 것입니다.

Ta4a91AEcM2QrddLbKtYslyXcws.png

 

리시즈 채널(Reserve Channel)

Nexus에는 ICX(ICON Exchange)라는 Token이 내재되어 있습니다. ICX는 Nexus에 연결된 블록체인들 간의 가치 이동을 가능하게 해주는 Utility입니다. Representation Channel 안에서 정해진 정책에 따라서 이제 Reserve channel에서는 ICX를 발행할 수 있습니다. 

 

또 하나로, Nexus 자체가 하나의 블록체인이 되어 또 다른 Nexus에 연결될 수 있으며, 이러한 자유로운 결합을 통해서 수없이 많은 거버넌스를 가지는 블록체인들이 서로 연결되고, 비즈니스를 확장하며 거래를 할 수 있게 됩니다.  

 

 

 

포탈(Portal)

Portal은 앞서 언급하였듯이 독립적인 블록체인과 Nexus를 연결시키는 구성 요소입니다. 이는 BTP기반의 통신을 통해 Nexus와 연동됩니다. Nexus에 참여한 Portal의 노드 수는 하나 혹은 복수가 될 수 있고, loopchain의 그룹화 기능을 통해 하나의 그룹으로 관리 됩니다. 여러분의 이해를 돕기 위해 복잡한 Portal 개념을 스위프트(SWIFT) 시스템, 국제은행간통신협회 국제금융결제망을 통해 쉽게 풀어 보도록 하겠습니다.

 

스위프트는 세계 최대 은행 간 국제 결제 시스템 망입니다. 국경 간 자금 결제를 위해 하루 평균 250만개 메시지를 처리하는데, 세계 200개 이상 국가에 1만 1000개 금융기관이 스위프트를 사용 중입니다. 각 은행은 고유 스위프트 코드를 가지며, 스위프트에 자금 이체 메시지를 보내 국가 간 거래가 이루어지는 것입니다. 이때 스위프트를 나라별 독립적인 통화체계의 관점에서 바라보면 한 나라에서 스위프트를 이용할 수 있는 은행이 여러 개인 형태가 되는 데, 이는 Portal가 하나 혹은 복수의 노드로 구성될 수 있으며 이들이 하나의 그룹으로 묶여 관리되고, 투표권  역시 Nexus의 정책에 따라 관리되는 양상과 거의 비슷하다고 볼 수 있습니다. 

 

1Z5Q27_QKkm2lKqmPsgFvUgG6dM.png

SWIFT 시스템

 

 

다시 한번 정의하자면, 한 블록체인의 Portal은 C-Rep으로서 해당 블록체인을 대표하여 Representation channel을 통해 정책을 제안하고 투표를 통한 탈중앙화 된 거버넌스를 수행합니다. 

 

 

 

BTP(Blockchain Transmission Protocol)

BTP는 Nexus와 연결된 블록체인 간 거래를 연계하기 위한 프로토콜입니다. Nexus에 구성된 Notary Channel을 통해 송신 블록체인의 거래가 수신 블록체인으로 전달되게 합니다. Nexus의 구성 노드 중 Notary Channel의 투표 권한이 있는 노드는 다수의 채널을 보유하며, 각각의 채널은 연결된 블록체인들의 Light Client 들로 이뤄져 있습니다.  

 

Notary Node는 외부 데이터가 들어왔을 때 검증을 하는 검증인의 역할이다. Notary Channel 또한 이와 같은 기능을 한다고 보시면 됩니다. Notary Channel도 loopchain 의 Multi-channel 지원 기능을 기반으로 구현됩니다. Notary에 등록되기를 요청하는 트랜잭션이 있다면, 투표권을 가진 여러 노드의 서명이 블록 안에 포함되어 Notary Channel의 블록체인을 이루게 됩니다. 

7b8be2f01e719d606c7fe7bab874164f.jpg

이렇게 Notary Channel에 등록된 거래가 포함된 블록데이터는 바로 Portal을 통해 수신 블록체인으로 전달됩니다. 이후 수신자인 블록체인에서 해당 블록 데이터를 검증할 때는 인증서를 기반으로 Notary Channel 구성 노드들의 서명을 검증합니다. 또, LFT 기반의 합의(LFT는 이후 포스팅에서 설명하도록 하겠습니다)를 따르는 Notary Channel 규격에 따라 정족수 이상, 즉 2/3이상의 서명이 확인되면 해당 거래에 대한 합의 여부가 확인되어 거래할 수 있습니다. 

e013ef1055b44453f46b9ddc7ec3c907.jpg

 

 

 

 

덱스 DEX (Decentralized Exchange)

DEX는 일반적인 가상화폐 거래소처럼 제 3자 기관을 통해 교환 거래를 하지 않고, 대신에 블록체인 상에서 자동화된 교환 거래를 처리해주는 거래 시장입니다. 폴로니엑스, 크라켄처럼 중앙화된 거래소는 사용이 쉽고 예약 거래나 마진 거래 같은 서비스를 제공하지만, 대신에 거래소에 대한 완전한 신뢰가 보장되어야 합니다. 또한 회원가입 후 계좌 인증을 하기 때문에 익명거래가 어려운 점도 있습니다. 

 

기존의 거래소에서는 해킹이나 서버 다운 등의 사고 발생시 피해가 사용자에게 전가되는 문제점들이 있어왔습니다. 반면에 DEX는 특정한 거래소를 신뢰할 필요없이 자동 된 거래가 가능하고 완전한 익명거래를 지원하기 때문에, 거래소 서버 다운이나 해킹 이슈가 없습니다. 또한 따로 거래소에 등록하거나 로그인 하지 않아도 스마트 컨트랙트가 탑재된 지갑을 통해 거래소 기능을 제공합니다.

 

특히 ERC20이라는 표준 토큰이 만들어지면서 이더리움 위에서도 DEX를 구현하려는 시도가 활발히 진행되고 있습니다. 대표적인 DEX로는 Bitsquare, Bitshares 가 있습니다. 하지만 이것은 사용자가 거래중에 항상 온라인이여야 하기 때문에 실시간으로 트랜잭션이 멈춰지기도 하는, 유동성 문제가 내재되어 있습니다.  

 

ICON은 자체적인 거버넌스를 가지는 여러 블록체인을 연결하는 블록체인 네트워크로서 ICX기반의 DEX를 제공합니다. ICON은 Bancor Protocol을 기반으로 Reserve를 통해 거래 가격을 산정하여 가상화폐 간 거래를 제공합니다. 

 

Bancor Protocol은 ERC20 기반의 코인으로 토큰 간의 유동성 부여를 위한 토큰입니다. 프로토콜 작동방식은, 예비로 한 개 이상의 다른 토큰을 스마트 컨트랙트상으로 블록체인 안에 확보하여 그 대가로 거래소에서 스마트 토큰들을 거래할 수 있게 해줍니다. 즉 유동성을 위해 은행에서 담보를 가지고 돈을 빌려주는 것과 같습니다. 

 

예를 들어 이더리움과 ICX간 거래를 들어봅시다. 이더리움 내에 Reserve 스마트컨트랙트와 ICON 내 Reserve 스마트 컨트랙트에서 투표권이 있는 노드로 DEX를 구성할 수 있습니다. 이때, 아래와 같은 형태로 ICX가격이 형성됩니다.

 

5748c1c22b789e09b65d41ea993fee69.png

 

 

위의 식은 어떤 의미를 갖고 있을까요? 

 

먼저 DEX를 통해 이더로 ICX를 구매할 경우 이더로 구성된 Reserve Balance가 늘어나고 ICX Volume은 줄어들어 결과적으로 ICX 가격이 올라갑니다. 반대로 ICX로 ETH를 구매하게 되면 Reserve Balance가 줄어들고 ICX Volume이 늘어나게 되어 ICX 가격이 떨어지게 됩니다. 자세한 구매가격 및 ICX 토큰 수 계산은 Formulas for Bancor System을 참고해주시면 되겠습니다. 

 

ICX가 다른 거래소에 상장되어 거래될 경우 해당 거래소에서의 가치와 ICON DEX에서의 가치가 다를 수 있습니다. 이럴 경우 차익(arbitrage)거래가 발생하게 되고 ETH 유입 및 환전이 이루어져 가격이 비슷해지게 됩니다. 

 

이러한 ICX 기반 DEX체계를 통해 ICON에 연결된 다양한 독립 블록체인의 자체 가상화폐와 거래가 가능합니다. 특히, loopchain과 같은 BFT계열의 합의 알고리즘을 사용하는 블록체인의 경우 PoW 합의 알고리즘을 쓰는 블록체인들보다 성능이 뛰어나기 때문에 환전이 실시간으로 이뤄질 수 있습니다.  

 

예를 들어 Nexus에 연결된 금융기관용 블록체인이 있고 해당 금융기관끼리만 사용하는 Fcoin이라는 가상화폐가 있을 경우, Fcoin과 ICX로 구성된 Reserve를 통해 기반으로 Fcoin Dex 서비스가 제공됩니다. 그리고 Fcoin과 ICX는 실시간으로 거래가 가능합니다. 또한 이렇게 환전한 ICX를 이용해 ICON에 연결된 다른 가상화폐와 교환이 되므로 결과적으로 서로 다른 가상화폐 간 거래가 실현됩니다.

 

ICON DEX의 또 다른 주요한 특징은 가상화폐 간 거래에 있어 전체 통화량, 거래 빈도 및 가격 등의 누적된 데이터를 기반으로 A.I. 분석 모델 수립이 가능하다는 점입니다. 중앙은행에서 통화정책을 결정할 때 실업률, 인플레이션 등의 우선순위를 두고 결정을 내립니다. 그리고 정책 결정 전에 연구용역으로 조사가 이뤄집니다. A.I 모델은 ICX 의 통화정책을 결정할 때 지표를 제공해 줍니다. 이러한 데이터를 통해 Reserve Rate과 각 가상화폐의 구성 비율 등 다양한 조절이 가능하게 되어 실생활에서 사용 가능한 안정감 있는 가상화폐를 구현할 수 있습니다.

 

 

댓글 0개