심버스는 자기주권형 분산ID를 기반으로 작동하는 1초 대의 블록확정성을 가진 멀티 블록체인 플랫폼 생태계입니다.

독자적인 ID체계를 통하여 심버스플랫폼 기반의 독립적인 블록체인플랫폼들은 상호 연동하는 협력적인 생태계로서 블록체인 서비스를 확장시킬 수 있습니다.
SymID
SymID를 활용하면 어느 블록체인 메인넷을 사용하고 있는지를 알 수 있으며, 계정 구분자를 통하여 어떠한 용도로 씌여지고 있는지 직관적으로 확인할 수 있습니다. 또한 SymID가 가진 문서의 내용을 확인하여 인증강도, 신용도, ID의 상태 등을 확인할 수 있어서 스마트컨트랙트를 간결하게 표현할 수 있으며 블록체인의 거래처리를 쉽게 만듭니다.

이러한 SymID의 표현방식은 새로이 각광받고 있는 블록체인 표준 DID(Decentrailized Identifier)의 가장 발전된 형태의 하나입니다.

SymID는 다양한 정보를 가진 하나의 문서와 함께 Citizen Chain에 저장됩니다.

통상적으로 블록체인에서 ID로 쓰이는 Public Key Hash는 20byte로 표현됩니다. SymID는 네트워크 구분자 (2byte), Citizen ID(6byte), 계정 구분자(2byte)로 구성된 10byte로 표현되며 하나의 상세한 문서를 가지고 있습니다.

10Byte의 SymID는 이론상으로 281조개의 ID를 생성할 수 있으며 하나의 SymID는 2^16개의 계정(Credential)을 가질 수 있습니다.
SSII(Self Sovereign identity Information)
FieldSizeDescription
SymIDVer2b0: version 1
Citizen IDCA ID14b0x001 : Master CA
0x002 ~ 0x3FFF : CA
Random6B0x00...01 : CA
Random Number : 일반 사용자 (중복체크 필요)
SeqNum2B1: General Credential
2 이상 : Basic Credential
SymID에 대한 기본문서(Basic Credential)는 ID의 속성을 저장하여 복잡한 ID 정보를 단순화시켜 Dapp 개발을 편리하게 할 수 있습니다.
문서의 구조
Credential
(Basic)
PubKeyHash20 BHashed Public Key
Role2 B0x0001 : General
0xF0F0 : Master CA
0xF0F1 : CA
Verification
Flag
3 BReserved
1 bDeposit(보증금 예치)
1 bFace-to-Face(대면 확인)
1 bNational Identity Card
(국가 신분증 확인)
1 bCell phone number
(전화번호 확인)
1 bE-mail (이메일 확인)
State1 B

0x01 : Active
0x02 : Revoked
0x03 : Locked
0x04 : Holding

// holding for credential update

0x05 : Marked
// 재단 설정(오라클)
Credit1 B
신용도 (0~15)

// 재단 설정(오라클)

Country2 B국가 구분 코드

SymId 예

Owner(Holder)Description
Master CA’s 1st Account0x0001 000000000001 0002
Master CA’s 2nd Account0x0001 000000000001 0003
Oracle0x0001 000000000002 0002
Reward0x0001 000000000003 0002
1st CA’s 1st Account0x0002 000000000001 0002
1st CA’s 2nd Account0x0002 000000000001 0003
1st CA’s 1st User’s 1st Account0x0002 XXXXXXXXXXXX 0002
1st CA’s 1st User’s 2nd Account0x0002 XXXXXXXXXXXX 0003
1st CA’s 2nd User’s 1st Account0x0002 YYYYYYYYYYYY 0002
멀티체인
심버스는 서로 다른 4개의 블록체인으로 구성되어 있으며 블록생성시간이 각각 다르기 때문에 빠른 데이터 처리속도를 구현할 수 있습니다.

단일 블록체인 노드는 Main Chain과 ID 정보를 기록하는 Citizen Chain, 보상내역을 기록하는 Warrant Chain, 그리고 블록체인 파라메터와 외부 정보를 기록하는 Oracle Chain으로 구성되어 있습니다.

Main Chain은 평균적으로 1.39초의 생성시간을 가지며 강화된 BFT(Byzantine Fault Tolerant) 방식으로 생성됩니다.
DID 문서를 담는 Citizen Chain의 블록은 ID를 기록할 때 생성됩니다.
그리고 심버스에 참여하는 노드와 이용자에 대한 보상을 기록하는 Warrant Chain 블록은 매일 1회 생성됩니다.
Oracle Chain의 블록은 거버넌스 투표 내역이나 외부 시스템에서 오는 데이터를 기록할 때 생성됩니다.
main block Chain
Transaction, Contract, Reward Storage
Citizen block Chain
SymID, Information Update
Warrant block Chain
Selection of warrant node, Rewards
Oracle block Chain
Operation policy, token exchange rate
합의과정
심버스 블록에 저장되는 데이터 내역을 합의하는 블록 생성 방식은 전략적인 투표이론(Strategic voting)을 적용한 강화된 BFT(Byzantine Fault Tolerant) 방식을 사용합니다.

심버스 합의과정의 설계는 게임이론에 기반하고 있습니다. 특히 사회선택이론의 Gibbard-Satterthwaite 정리를 활용하여 Veto권이 적용된 투표를 통해 블록생성자가 블록의 내용을 조작하여 이득을 얻는 것이 불가능하게 만들었습니다.

보증노드는 25개로 구성되며 그 중 9개는 A그룹이라 부르고 재단이 선발합니다. A그룹 노드들은 블록생성권이 없으며 투표권만 행사하고 동일한 투표결과를 보여주는 집단적인 거부권(Veto)을 행사할 수 있습니다. 전체 보증노드 중 2/3 이상 찬성할 경우 합의과정은 종결됩니다.

B그룹의 보증노드는 후보 신청한 작업노드 중에서 탈중앙화되고 선발과정이 공평한 4단계의 자동 벤치마킹 테스트(Autonomous Bench Marking Test)를 통하여 선발합니다. 블록생성의 합의과정을 주관하는 Primary노드(1개), Primary노드에 대한 우선순위가 확정된 Front Bench노드(3개), Middle Bench노드(8개), Back Bench노드(4개)를 포함하여 16개로 구성됩니다.
< Augmented BFT >
블록확정성
Main Chain은 블록생성 시간과 제안자가 합의과정에 참여한 노드에게서 서명을 받는 시간을 포함하여 평균적으로 1.39초 이내에 생성됩니다. 따라서 메인체인의 내역은 생성과 서명을 통하여 블록 내용이 확정되어 사용할 수 있습니다. (이오스나 코스모스, 이더리움 등과 달리 생성과 동시에 거래가 확정)

Copyright © 2023 SymVerse Labs. all rights reserved. E-mail : contact@symverse.com