심센서스
심센서스(SymSensus)는 심버스의 합의 알고리즘이다. 심센서스의 설계는 게임이론에 기반하며, 특히 사회 선택이론을 활용해 구조설계기법을 적용했다. 보증노드는 25개로 구성되며 그중 9개는 A그룹이라 부르고 재단이 선발한다. 나머지 16개는 B그룹이다. 심센스라고도 부른다.
개요
심센서스는 20,00TPS를 목표로, 블록 생성의 안정성을 높이고, 거버넌스 문제를 해결하기 위해 적용한 합의 알고리즘이다. 심센서스는 가장 빠른 합의 알고리즘으로, 거부권(veto)을 포함한 투표 방식의 비잔틴 장애 허용(BFT) 알고리즘을 사용하는데, 이는 가장 빠른 비잔틴 장애 허용 알고리즘이다. 심버스는 기존블록체인의 합의 방식과 달리 단순히 블록 생성의 대가로 코인이 발행되지 않으며 네트워크 증명(PoN)의 기여도를 측정하여 1일 1회 코인이 분배된다. 심버스는 네트워크 증명을 통해 참여자가 4일마다 증인이 될 수 있도록 설계했다. 심버스는 네트워크 참여자 모두에게 블록을 생성할 수 있는 권리를 부여하여 생태계가 자발적으로 성장할 수 있게 했다. 또한, 심센서스는 거부권 기능을 도입함으로써 악의적인 노드의 블록 조작 가능성을 원천적으로 방지할 수 있다.[1]
특징
심버스는 거래처리 속도를 빠르게 하고, 블록생성 안전성을 높이며, 거버넌스 문제를 해결하기 위해 심센서스라는 합의 알고리즘을 적용했다. 기존 비잔틴 장애 허용 기반 합의 알고리즘을 2배 이상 빠르게 만든 것으로, 블록 조작이 불가능하고 탈중앙화 돼 있다. 특히 심센서스는 거부권을 포함한 투표방식의 비잔틴 장애 허용을 사용하여, 가장 빠른 알고리즘이다. 기존 블록체인 합의 방식과 달리 단순 블록생성 대가로 코인을 발행하지 않고, 네트워크 증명의 네트워크 기여도를 측정해 매일 1회 코인을 분배하는 것도 다른 플랫폼과 다른 점이다. 심센서스 설계에는 게임이론과 구조설계(Mechanism Design)기법이 적용돼 보증노드는 25개이다. 이 중 9개는 A그룹이라 부르고 재단이 선발한다. A그룹 노드들은 블록생성권이 없고 투표권만 행사한다. 동 일한투표 결과를 보여주는 집단 거부권도 있다. 거부권이 존재하기 때문에 어떤 보증 노드들이 담합해도 이득을 취할 수 없다.[2]
심버스 10대 혁신기술 중에서 컨센서스는 게임이론을 결합해 비토권의 도입이라는 획기적 아이디어로 비약적 속도개선을 이루는 동시에 악의적 노드의 움직임을 사전차단했으며, 세계 최초로 다중블록체인(SymChain)을 분리 운용하는 데 성공하여 온라인거래에 필요한 모든 편의성을 확보해가고 있다.[3] 컨센서스의 대표적인 특징을 요약하면 다음과 같다.
- 심센서스 합의과정은 거부권(Veto)을 포함한 투표방식의 비잔틴 장애 허용을 사용하는 가장 빠른 비잔틴 장애 허용 알고리즘이다.
- 심센서스의 설계는 게임이론에 기반하고 있다. 특히 사회 선택이론의 가장 중요한 정리를 활용하여 구조설계 기법을 적용했으며, 보증노드는 25개로 구성되고, A그룹 보증노드와 B그룹 보증노드로 나뉘다.
- 기본적인 노드는 2초마다 바뀌며, 미들 벤치(middle bench) 노드의 선출은 구조설계 노드 중에서 무작위로 선정한다. 백 벤치(Back Bench) 노드는 일정한 시간이 지나야 미들 벤치 노드가 되어 4개의 백 벤치 노드는 매일 자율BMT(Autonomous BMT)를 마친 후보자 노드 중에서 선발한다.
- 충분한 거래내역을 처리할 수 있도록 프라이머리 노드가 생성하는 블록의 수는 정해져 있지 않아 블록의 크기는 블록의 종류에 따라 다를 수 있다.[4]
- 거부권이 존재하는 비잔틴 장애 허용 합의과정
거부권이 존재하는 비잔틴 장애 허용 합의 과정에서 프라이머리 노드(확률적 독재자)가 블록을 생성할 때 투표참가자들은 합의 과정을 조작하여 이득을 얻을 수 없다. 이 정리를 이용하면 컨센서스가 합의 과정에 걸리는 시간을 기존 알고리즘 50% 이상 줄일 수 있다. 그 방법은 합의 알고리즘에 거부권 그룹을 만들어 다음과 같이 투표를 진행하면 된다. 합의 과정에 참가하는 집단을 두 개로 분류하고 A 집단은 정수 개의 노드로 구성된다. A 집단은 투표권만 있으며 모두 동일한 투표 결과를 보여준다. 나머지 노드들은 B 집단으로 부르고 블록을 생성하는 프라이머리 노드가 될 수 있으며, 투표권을 갖게 만든다. 두 집단이 동시에 합의를 시작하면 A 집단은 과반수만 넘으면 투표권을 갖게 만든다. 두 집단이 동시에 합의를 시작하면 A 집단은 과반수만 넘으면 투표권의 결과가 결정되고, B 집단의 절반이 투표를 진행하면 자동적으로 투표 결과가 나타나기 때문이다. 기존의 비잔틴 장애 허용에서 합의 정족수가 정수 되어야 하지만, B그룹의 정족수가 정수 이 되면 전체적인 합의가 이루어진다. A그룹은 과반수만 넘으면 전체가 합의하기 때문에 A그룹의 합의 종료 시간이 B그룹보다 항상 짧기 때문에 합의는 신속하게 이루어진다.[5]
- 보상참여조건
보상에 참여할 수 있는 기준은 지속적인 기여의 여부이다. 소비자의 경우 심월드(SymWorld)에 기여 여부는 최근의 거래기록의 여부이다. 작업노드와 보증노드는 각각 일정한 크기 이상의 심버스(SYM)를 보유해야 한다. 네트워크 증명에 참가하는 지갑을 가진 참여자들은 일주일간 실시간 거래 블록과 예약거래 블록에 네트워크 수수료를 지불한 기록이 있어야 한다. 이는 공짜점심(Free Lunch)을 제공하지 않는 것을 의미한다. 기록된 수수료의 크기는 시스템이 정한 최소 수준 이상이면 된다. 네트워크 증명에 참여하는 작업노드중 디앱을 제공하는 노드는 합의과정 심센서스 후보 선정 시 우대한다.
- 악의적 노드의 조작방지
심센서스는 다음과 같은 이유로 악의적인 노드의 블록 조작 가능성을 원천적으로 방지한다. 악의적 노드의 조작방지는 다음과 같다.
- 네트워크 증명이 지갑 노드로부터 출발하고 지갑 노드는 확률적으로 선정된다. 네트워크 수수료를 지불해야 하므로 악의적인 지갑의 시빌 공격은 작업 노드가 원천적으로 차단할 수 있으며 공격하더라도 상당한 비용을 지출해야 한다.
- 지갑 노드의 거래기록을 작업 노드가 검증하고, 작업 노드가 검증한 기록을 다시 보증 노드가 검증하는 다단계에 걸친 네트워크 증명방식(PoN)을 사용한다. 악의적인 지갑의 경우 작업 노드가 일차적으로 검증하고, 작업 노드가 악의적이거나 동작이 불량한 경우에도 보증 노드가 검증한다. 지갑 노드 수가 증가하면 네트워크 증명 참가 노드로 선정될 확률이 낮아지기 때문에 통계학의 대수의 법칙에 의하여 조작 가능성의 확률은 0으로 수렴한다.
- 악의적인 지갑의 경우 작업 노드가 1차적으로 검증하고, 작업 노드가 악의적이거나 동작이 불량한 경우에도 보증 노드가 검증한다. 악의적인 노드들은 합의 블록의 블랙리스트(Black List)에 등재되고 동작이 불량한 노드들은 그레이 리스트(Gray List)에 등재된다.
- 보증 노드 25개 중 16개의 노드는 작업 노드에서 선출한다. 9개의 노드는 재단이 선정하며 합의 과정에만 참여하는 거부권을 가진 노드이다. 선출된 보증 노드들은 악의적인 행동을 통하여 이득을 얻을 수 없다.[4]
보증노드
- A그룹 보증노드
A그룹 노드들은 블록생성권이 없고, 투표권만 행사한다. 또한 동일한 투표 결과를 보여주는 집단적인 거부권을 행사한다. 전체 보증노드 중 이상 찬성할 경우 합의 과정은 종결된다. 거부권이 존재하여 어떠한 보증 노드들이라도 담합해 이득을 취할 수 없다.
- B그룹 보증노드
B그룹의 노드들은 후보 신청한 작업 노드 중 탈중앙화되고 4단계의 자동 벤치마킹 테스트를 통해 선발된다. 블록생성의 합의 과정을 주관하는 프라이머리 노드(1개), 프라이머리 노드에 대한 우선순위가 확정된 프런트 벤치 노드(3개), 미들 벤치 노드(8개), 백 벤치 노드(4개)를 포함해 총 16개로 구성된다. 충분한 거래명세를 처리하기 위해 프라이머리 노드가 생성하는 블록의 수는 정해지지 않는다. 블록의 크기는 종류에 따라 다를 수 있다. 프라이머리 노드는 거래기록을 모아 블록을 생성한 후 생성한 블록에 대한 검증을 요청한다. 이때 프라이머리 노드는 서명 기반 비잔틴 장애 허용(BFT)방식으로 보증 노드 수의 이상으로부터 확인을 받으면 블록생성이 확정되어 다른 노드들에 전파한다.[4]
각주
- ↑ 방은주 기자, 〈차세대 메인넷 표방 '심버스' 공개..."이오스 잡겠다"〉, 《지디넷코리아》, 2018-08-18
- ↑ SymVerse, 〈차세대 메인넷 표방 ‘심버스’ 공개〉, 《미디엄》, 2018-08-21
- ↑ 이삭줍기, 〈심버스(SYM)에어드랍 이벤트〉, 《티스토리》, 2019-06-13
- ↑ 4.0 4.1 4.2 심버스 백서 - http://download.symverse.com/whitepaper/SymVerse_Whitepaper_Kr_V1.4_20181004.pdf
- ↑ 심버스, 〈SymSensus에 대하여〉, 《블록체인 허브》, 2018-10-18
참고자료
- 심버스 백서 - http://download.symverse.com/whitepaper/SymVerse_Whitepaper_Kr_V1.4_20181004.pdf
- SymVerse, 〈차세대 메인넷 표방 ‘심버스’ 공개〉, 《미디엄》, 2018-08-21
- 방은주 기자, 〈차세대 메인넷 표방 '심버스' 공개..."이오스 잡겠다"〉, 《네이버 블로그》, 2018-08-18
- 심버스, 〈SymSensus에 대하여〉, 《블록체인 허브》, 2018-10-18
- 이삭줍기, 〈심버스(SYM)에어드랍 이벤트〉, 《티스토리》, 2019-06-13