프리즘

해시넷
ksj4572 (토론 | 기여)님의 2019년 8월 9일 (금) 14:59 판 (ksj4572 (토론)의 126707판 편집을 되돌림)
이동: 둘러보기, 검색
컬러플랫폼(colorplatform)
박창기 회장

프리즘(Prism) 컨센선스는 컬러플랫폼의 개발이사(CTO)인 니콜라이 파쿨린(Nikolay Pakulin)과 박창기 컬러플랫폼대표가 공동으로 개념을 설계하였으며 코딩은 전적으로 니콜라이 파쿨린이 수행했다. 프리즘의 소스코드는 2019년 4월말 시제품형태로 GitHub에 공개했다.[1]

개요

컬러플랫폼은 CBFT (Clustered Byzantine Fault tolerance) 방식의 컨센서스 알고리즘 프리즘(Prism)을 완성하여 깃허브Github에 공개했다. 1초에 거래확정이라는 무기를 이용한 앱으로 사용자를 빠르게 늘리는 것을 핵심전략으로 한다 일상생활에 쓸 수 있는 암호화폐 “Decentralized for Daily Life”를 표방하는 컬러코인의 핵심 엔진인 프리즘은 코스모스의 텐더민트에 비하여 3배 이상 빠르게 거래를 확정한다 이를 통해 경제성이 높고 빠른 국제화폐로 다양한 앱들이 단일화폐 속에 통합되어 3면시장3Sided Market)의 특성으로 네트워크 효과Network Effects)를 극대화할 것이다.[2]

특징

  • 해킹의 가능성을 현저히 낮춘 랜덤화된 블록 선정 프로세스
  • 병렬적 합의 방식을 통해 통신 속도 개선 및 에너지 절약[3]

프리즘의 핵심 원리는 L개의 Cluster에 N개의 노드들을 균등하게 분산 배치하여 거래확정속도 Latency를 획기적으로 낮추는 것이다. 즉,

Number of communications = N-1 + (N-1) x (N-1) + 2/3 (N-1) x (N-1)
= N-1 +5/3 (N-1)²

100개 노드 10개 클러스터로 컨센서스를 이루려면 198번의 통신이 필요하다. 49개 노드로 컨센서스를 이루려면 96번의 통신이 필요하다. 전통적 PBFT에 비해서 통신 횟수가 40분의 1이하로 적어서 빠른 거래확정이 가능하다.

PBFT color's prism
49 nodes 100 nodes 7 * 7 nodes 10 * 10 nodes
# of Comm's 3,888 16,434 96 198
remarks 40 times 83 times

일반적인 PBFT에서 클러스터 PBFT 방식인 프리즘으로 만드는 과정에서 여러가지 기술적인 난점이 있었다. 몇 가지 보안상 취약점을 해결하기 위해 Random nouber 처리 기술, 사이드체인 Side Chain 도입 등 여러가지 기술이 개발되었다.[1]

기술적인 요소로는 3단계 DPos 컨센서스 알고리즘으로 되어 있으며 블록빌더라는 49개의 검증 노드가 7개의 리그로 묶여져 나뉘어져 있고 해당 노드들만이 블록생성이 가능하다.

  • 블록생성 1단계
49개 노드 중 선택된 첫번째 블록빌더는 mempool내에서 블록을 생성 후 본인의 리그 구성원 및 나머지 6개 리그에 블록을 보내고 각 리더듣ㄹ은 멤버들에게 생성된 블록 정보를 공유한다.
  • 블록생성 2단계
생성된 블록에 대한 복사본을 가진 49개의 블록 빌더들은 각각의 리그에서 블록 승인에 대한 투표를 진행한다. 컬러 프리즘 컨센선스는 PBFT 알고리즘을 사용하여 리그 내 멤버들 사이에서 합의를 만든다
  • 블록생성 3단계
각 리그의 리더들은 글로벌 합의를 만들고 정해진 합의에 대하여 리그 내에서 각자 합의의 결과에 대해 의사소통 및 공통적인 합의를 만들어 낸다.[4]

각주

  1. 1.0 1.1 박창기, 〈BFT 기술의 발자취와 컬러의 "프리즘" 컨센서스〉, 《카카오 브런치》, 2019-05-06
  2. 박창기, 〈암호화폐 춘추전국시대〉, 《카카오 브런치》, 2019-06-09
  3. 테리우스킴, 〈컬러코인 ‘메이져 플랫폼’이 될 수 밖에 없는 이유〉, 《코박》, 2019-04-26
  4. coin209, 〈(컬러코인)프리즘 컨센서스 알고리즘을 알아보자!〉, 《네이버 블로그》

참고자료