YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션...

50
USPTO Provisional Patent Application Number : 62/646,930 YOSEMITE Public Blockchain YOSEMITE 퍼블릭 블록체인 - No ICO : using real money (e.g. USD, EUR, CNY) with no native crypto-currency - Proof-of-Transaction (PoT) : reasonable and fair consensus algorithm - General Financial Platform : designed for government and enterprise uses - ICO 없는 블록체인 : 가상화폐의 발행 없이 달러, 유로, 위안화와 같은 실제 법정화폐를 사용하는 퍼블릭 블록체인 - Proof-of-Transaction (PoT) : 기존 PoW, PoS 합의 방식보다 공정하고 합리적인 새로운 방식의 컨센서스 메커니즘 - 범용 금융 플랫폼 : 정부와 기업들이 블록체인 기반 금융 서비스를 구현할 있는 블록체인 설계 Technical White Paper (KOR version) Bezalel Lim / [email protected] Patrick O'Grady / [email protected] Brandon Griffin Joe Park Anthony Di Franco Eugene Chung Eric Hwang Feb. 2018 ©2018 Yosemite X Inc. All rights reserved

Transcript of YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션...

Page 1: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

USPTO Provisional Patent Application Number : 62/646,930

YOSEMITE Public Blockchain YOSEMITE 퍼블릭 블록체인

- No ICO : using real money (e.g. USD, EUR, CNY) with no native crypto-currency - Proof-of-Transaction (PoT) : reasonable and fair consensus algorithm - General Financial Platform : designed for government and enterprise uses

- ICO 없는 블록체인 : 가상화폐의 발행 없이 달러, 유로, 위안화와 같은 실제 법정화폐를 사용하는 퍼블릭 블록체인

- Proof-of-Transaction (PoT) : 기존 PoW, PoS 합의 방식보다 공정하고 합리적인 새로운 방식의 컨센서스 메커니즘

- 범용 금융 플랫폼 : 정부와 기업들이 블록체인 기반 금융 서비스를 구현할 수 있는 블록체인 설계

Technical White Paper (KOR version)

Bezalel Lim / [email protected] Patrick O'Grady / [email protected]

Brandon Griffin Joe Park Anthony Di Franco Eugene Chung Eric Hwang

Feb. 2018

©2018 Yosemite X Inc. All rights reserved

Page 2: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

Abstract

We introduce a new method of public blockchain design without issuing any native

crypto-currency minted by blockchain itself. Instead, fiat-pegged stable coins (e.g. dUSD, digital

USD-pegged credit tokens) are issued as the foundational crypto token of the blockchain,

provided a trust entity such as a trusted financial institution or government backs the stable

coins with an equivalent fiat money reserve. The YOSEMITE Blockchain is basically designed as

a decentralized exchange platform in which various kinds of tokens, such as fiat-pegged-tokens,

crypto-pegged-tokens and real-asset-tokens, are issued by the trusted entities (the Depositories)

and traded securely and transparently on blockchain. We also proudly present a new blockchain

consensus mechanism, called Proof-of-Transaction (PoT), which incentivizes the application

service providers directly contributing to the blockchain ecosystem by generating actual

blockchain transactions, quantitatively measured by Transaction-as-a-Vote (TaaV). A novel

PoT-based BFT consensus with short block time and fast block finality realized by

Optimistic-Block-Production and optimized block validity voting protocols enables the

blockchain to scale, with extended scalability provided by the existing YOSEMITE on/off-chain

hybrid exchange technology. The named multi-sig blockchain accounts organizing the trust

network for account recovery enable the solid and stable YOSEMITE Blockchain ecosystem,

along with the integrated KYC/AML support for the regulatory compliance.

본 기술 백서는 블록체인에서 자체적으로 발행되는 네이티브 암호화폐가없는퍼블릭블록체인기술에대해소개한다.

법정화폐에 가치가 고정된 코인(예, dUSD, USD에 가치가 고정된 신용 토큰)이 블록체인 상에 발행되어 블록체인

시스템의 기본 통화로 사용되며, 금융 회사나 정부와 같은 신뢰기관들이 블록체인 사용자들로부터수신한법정화폐를

지급준비금으로 안전하게 보관하고, 그와 동일한 양만큼의 코인만이 투명하고 안전하게 블록체인 상에서 발행되고

유통된다. YOSEMITE 블록체인은 신뢰기관(Depository)들을 통해 발행되는 법정화폐 가치 고정 안정화 토큰,

비트코인과 같은 암호화폐에 가치가 고정된 토큰, 부동산 등의 실물 자산에 가치가 고정된 토큰들이 블록체인 상에서

거래될 수 있는 탈중앙화 분산 거래소 기능을 기본적으로 제공한다. Transaction-as-a-Vote(TaaV) 메커니즘을 통해,

블록체인 트랜잭션을 많이 발생시켜 블록체인 생태계에 직접적으로 공헌하는 서비스 제공자들에게 인센티브를

부여하는 방식으로, 기존의 PoW, PoS 합의 방식보다 공정하고 합리적인 새로운 방식의 Proof-of-Transaction (PoT)

블록체인 합의 메커니즘을 본 기술 백서를 통해 소개한다. Optimistic-Block-Production 방식과 최적화된 블록 유효성

투표 프로토콜을 통해 짧은 블록 타임과 빠른 블록 확정성을 구현하는 PoT 기반 BFT 합의 알고리즘은 기 개발된

YOSEMITE on/off-chain 하이브리드 거래소 기술과 함께 높은 수준의 블록체인 성능 확장성을 제공한다. 블록체인

상에 신뢰 네트워크를 구축하여 블록체인 계정 복구를 실현할 수 있는 네임드 멀티시그너처 블록체인 계정 시스템과

블록체인에 통합되어 제공되는 KYC/AML 규제준수 지원과 같은 특징들은 안정적이고 견고한 YOSEMITE 블록체인

생태계를 가능케 한다.

1

Page 3: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

Table of Contents

1 Public Blockchain Without Native Crypto-currency 네이티브 암호화폐가 없는 퍼블릭 블록체인 4

2 YOSEMITE Blockchain as Decentralized Exchange Platform YOSEMITE 블록체인 상에 구현된 탈중앙화 분산 거래소 플랫폼 7

3 Depository and Tokens Issued on YOSEMITE Blockchain Depository와 YOSEMITE 블록체인 상에 발행된 토큰 10

3.1 Fiat-Pegged Stable Coin (dFIAT) as Native Crypto-Currency of YOSEMITE Blockchain YOSEMITE 블록체인의 네이티브 암호화폐로서의 법정화폐 고정 안정화 코인 (dFIAT) 11 3.2 External-Crypto-Currency-Pegged Token (dCRYPTO) 외부 블록체인 암호화폐에 고정된 토큰 (dCRYPTO) 14 3.3 Real Asset Token (dASSET) 실물 자산 기반 토큰 (dASSET) 16

4 Built-in Token Operations in YOSEMITE Blockchain YOSEMITE 블록체인에서 기본 제공되는 토큰 오퍼레이션 18

5 Proof-of-Transaction (PoT) Consensus Mechanism Proof-of-Transaction (PoT) 컨센서스 메커니즘 21

5.1 Transaction-as-a-Vote (TaaV) 21 5.2 Proof-of-Transaction as Incentivization for Service Providers 블록체인 서비스 제공자들에게 인센티브를 부여하는 Proof-of-Transaction 합의 메커니즘 23 5.3 Blockchain Consensus, Governance, Tx Fee Profit Distribution 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 26

5.3.1 Proof-of-Transaction (PoT) Node Pool Proof-of-Transaction (PoT) 노드 풀 26 5.3.2 Seed Trust Node Pool 시드 신뢰 노드 풀 27 5.3.3 Election of Block Producers for BFT Consensus BFT 컨센서스를 위한 블록생성자 선출 29 5.3.4 Transaction Fee Profit Distribution 트랜잭션 수수료 수익 배분 32 5.3.5 YOSEMITE BFT Consensus with Short Block Time and Fast Block Finality 짧은 블록 타임과 빠른 블록 확정성을 구현하는 YOSEMITE BFT 컨센서스 33

6 Blockchain Accounts 블록체인 계정 37

6.1 Named-Multi-Sig / Single-Key Blockchain Accounts 네임드 멀티시그너쳐 블록체인 계정과 단일 키 블록체인 계정 37 6.2 Trust Network for Account Recovery 계정 복구를 위한 신뢰 네트워크 39

2

Page 4: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

6.3 KYC/AML Compliance and Account Anonymity KYC/AML 규제 준수와 계정 익명성 39

7 Decentralized Issuance of dFIAT without Fiat Reserve 탈중앙화된 방식의 dFIAT 토큰 발행 42

8 Scalability of YOSEMITE Blockchain YOSEMITE 블록체인의 트랜잭션 처리 성능과 확장성 44

8.1 Single Chain Scalability 단일 체인 트랜잭션 처리 성능 44 8.2 Extended Scalability with On/Off-chain Hybrid Token Exchange Technology YOSEMITE On/Off-Chain 하이브리드 토큰 거래 기술을 통한 추가적인 성능 확장성 45 8.3 Scalable Multi-Blockchain Architecture 확장성있는 멀티 블록체인 아키텍처 47

9 Smart Contract Platform 스마트 컨트랙트 플랫폼 48

3

Page 5: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

1 Public Blockchain Without Native Crypto-currency 네이티브 암호화폐가 없는 퍼블릭 블록체인

The common belief for public blockchains holds that there should be a native crypto-currency

which is pre-minted through an ICO presale process or minted by the blockchain itself for every

new block as the reward to block producers. Bitcoin and Ethereum have their own native 1 2

crypto-currencies (BTC, ETH) to incentivize miners to maintain the blockchain network securely

through a Proof-of-Work(PoW)-based competitive consensus mechanism, which proves slow

and inefficient. For Proof-of-Stake(PoS )-based blockchains (EOS , NEO, DASH, ...), native 3 4

crypto-currencies are essential to elect block producers who participate in the consensus process

to make new blocks. In PoS blockchains, governance is commonly designed by utilizing a voting

system in which the native crypto-currency holders cast weighted votes in proportion to their

currency holdings or stake (vest) their crypto tokens to have more influence over blockchain

governance.

퍼블릭 블록체인에 대한 일반적인 생각은 블록체인 출시 전에 미리 발행되어 ICO를 통해 사전판매되거나, 매 블록

생성시 마다 블록체인에서 자체적으로 새로 발행되어 블록 생성자들(miners, validators, block producers)에게

보상으로 주어지는 네이티브 암호화폐가 반드시 필요하다는것이다. 비트코인, 이더리움과같은 Proof-of-Work (PoW)

기반 퍼블릭 블록체인들은 BTC, ETH와 같은 자체 생성되는 네이티브 암호화폐를 각기 가지고 있으며, 암호화폐

채굴자들이 경쟁적으로 블록을 생성하여 블록체인을 보안성이 높은 상태로 유지되도록 새로 발행한 네이티브

암호화폐를 채굴자들에게 보상으로 지급한다. Proof-of-Stake (PoS) 기반 블록체인들은 (EOS, NEO, DASH, ...) 블록

생성 보상으로 네이티브 암호화폐를 발행할 뿐만 아니라, 네이티브 암호화폐의 보유량을 블록 생성 합의과정에

참여하는 블록 생성자들을 선출하는 기준으로 사용한다. 또한 블록체인 사용자들의 네이티브 암호화폐의 보유량에

비례하여 가중치 투표를할수있도록하거나보유하고있는토큰을담보로 (Stake) 설정하여블록체인상에서영향력을

행사할 수 있도록 하는 방식으로 PoS 기반 블록체인들의 블록체인 거버넌스 모델이 설계된다.

The native crypto-currency in one blockchain is regarded as the basic assumption and

agreement among the stakeholders of the blockchain ecosystem (developers, investors, block

producers, service providers, end users) and used as the basic building block for blockchain

system design, though native crypto-currencies induce some critical problems in existing

blockchain ecosystems. The public blockchain’s native crypto-currencies traded in public

exchanges are speculative assets which are constantly being involved in pump-and-dump

schemes, making the native crypto-currencies highly volatile in price. For ordinary people who

are naturally accustomed to stable fiat-currency like USD, it is very uncomfortable to use

unstable crypto-currency as a payment/trading currency. People would not buy food in grocery

1 S. Nakamoto, Bitcoin: A peer-to-peer electronic cash system, https://bitcoin.org/bitcoin.pdf, 2008. 2 V. Buterin, Ethereum: A next-generation smart contract and decentralized application platform, https://github.com/ethereum/wiki/ wiki/White-Paper, 2013 3 Proof-of-Stake systems - https://en.wikipedia.org/wiki/Proof-of-stake 4 EOS.IO technical white paper, https://github.com/EOSIO/Documentation/blob/master/TechnicalWhitePaper.md, 2017

4

Page 6: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

stores using highly volatile company shares as a method of payment, and similarly they would

not use existing crypto-currencies. Even worse, to use services provided by the blockchain

platform, people first need to buy crypto-currency by selling their fiat money through an

external crypto exchange. This is the big hurdle against mass adoption of blockchain-based

applications setting aside the scalability issue which encumbers current public blockchains.

Additionally, the financial benefits gained from these speculative crypto-currencies are unfairly

concentrated amongst blockchain developers who maintain large portions of coins after ICOs

and early stage investors who can buy a disproportionate amount of total supply at cheap prices.

Meanwhile the followers adopting the blockchain, even if they are the service providers who are

directly contributing to the blockchain ecosystem by making applications generating meaningful

transactions, are relatively less compensated. In the same manner, blockchain governance

power also can be unfairly concentrated to the big token holders resulting in inevitably

centralized power. It is also impractical to expect most of the long tail blockchain users to

participate in an explicit voting process to democratically control blockchain governance (e.g.

voting for electing block producers).

이러한 블록체인 상의 네이티브 암호화폐의 발행은 해당 블록체인 생태계를 구성하는 개발자, 투자자, 블록생성자,

응용서비스 제공자, 서비스 사용자들이 암묵적으로 합의한 기본적인 가정이며 블록체인 시스템 설계의 핵심 요소로

사용되지만, 발행된 암호화폐는 해당 블록체인 생태계에 여러가지 중대한 문제들을 초래한다. 먼저, 암호화폐

거래소에서 거래되는 퍼블릭 블록체인 네이티브 암호화폐들은 일반적으로 가격 변동성이 매우 높다. 단기적

시세차익을 목적으로한 인위적인 가격 조정 (pump-and-dump) 등에 끊임없이 노출되고 있으며 일반적으로 투자

위험성이 높은 투기성 자산으로서 간주되고 있다. 일상에서 사용되고 있는 USD, EUR, CNY, KRW와 같은 가치가

안정적인 법정화폐 사용에 익숙한 일반대중들이 가격변동이 극심한 암호화폐를지불수단이나거래기준화폐로사용할

가능성은 매우 낮다. 사람들이 식료품점에서 식재료들을 살때 투자목적으로 보유하고 있는 회사주식을 지불수단으로

사용하지 않을 것 처럼, 현재 투기적으로 거래되고 있는 암호화폐들이 화폐로서 기능하도록 설계되었다 하더라도

현실적으로 법정화폐처럼 사용되는 것을기대하기는어렵다. 암호화폐사용대중화의또다른큰장애물은, 블록체인에

기반한 서비스를 사용하기 위해서는 블록체인 프로젝트들이 각각 자체 발행하고 있는 암호화폐들을 암호화폐

거래소에서 사용자들이 소유하고 있는 법정화폐를 가지고 해당 암호화폐들을 구매하여 블록체인 트랜잭션 수수료,

거래 대금 지불 등의 목적으로 사용해야 한다는 것이다. 또한 비트코인 이더리움과 같은 기존 퍼블릭 블록체인들은

처리속도가 매우 제한적이어서 대용량 트랜잭션을 처리할수 있는 상용 서비스를 블록체인 상에서구현하는것은현재

불가능하다. 퍼블릭 블록체인들이 블록체인 기술을 통한 탈중앙화/분산화의 이상을 구현하고자 하지만, PoW 기반의

블록체인들의 해쉬파워는 소수의 채굴풀들에 의해 집중화되어 있으며, 암호화폐의 지분 분배도 ICO를 통해 블록체인

개발회사 및 초기 투자자들에 의해 많은 부분 집중화 되어 있어서, 암호화폐 가격이 급등락하는 암호화폐 시장에서

암호화폐 발행자인 개발회사와 싼 값에 암호화폐를 대량으로 구매한 초기 투자자들에게 암호화폐를통한거래수익이

집중화되고 있으며 PoS 기반 블록체인 합의 방식에서 이미 암호화폐를 많이 가진 주체들이 블록 생성자로 선출되어

새로 발행되는 암호화폐를 가져가게 되는 불공평한 암호화폐 분배가 이뤄지는 것이 일반적인 상황이다. 블록체인

개발사 또는 초기 투자자가 아닌 후발 블록체인 참여자들은 그들이 해당 블록체인에서트랜잭션들을많이발생시켜서

직접적으로 블록체인 생태계에 공헌하는 블록체인 기반 서비스 제공자라고 할지라도 상대적으로 적은 보상을 받게

된다. 암호화폐를 이용한 가중치 투표를 통하여 블록 생성자들을 선출하는 방식으로 블록체인 거버넌스를 설계한

블록체인들도 암호화폐 배분의 불균형으로 인하여 동일하게 투표권의 집중화 현상이 나타나게 되며, 암호화폐

지분량이 적은 롱테일의 일반 사용자들이 추가적인 블록체인 트랜잭션을 해야하는 투표 과정에 적극적으로 참여하는

것을 기대하기는 매우 어렵다.

5

Page 7: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

In this paper, we introduce a new method of blockchain design without issuing native

crypto-currency minted by the blockchain itself. Instead, the fiat-pegged stable coins (e.g. digital

USD credit token) are issued as the foundational crypto-currency of the blockchain, provided a

trust entity such as a government or trusted financial institution backs the stable coins with an

equivalent fiat money reserve. Fiat-pegged stable coins are not likely to be involved in

speculation and most people are familiar and comfortable with stable fiat currencies. And we

proudly open a new horizon of blockchain consensus mechanism called Proof-of-Transaction

(PoT) which incentivizes the application service providers directly contributing to blockchain

ecosystem by generating actual blockchain transactions. The blockchain network collects

transaction fee profits by using fiat-pegged stable coin as the currency for fee payment. Special

administrative power is entitled to the trust entity under the social agreement of all players

running and using the blockchain (e.g. citizens use their national blockchain whose trust entity

is the national government, customers of a trusted financial institutions use the blockchain

operated by the institution). The trust entity only can execute predefined and restricted

administration operations on blockchain. All the blockchain transactions are provably

immutable and transparent to everyone including the administration actions of the trust entity.

Every block containing recent transactions is produced in a transparent and secure manner

through the reasonable and fair Proof-of-Transaction consensus mechanism, allowing any entity

to participate the blockchain consensus process together with the trust nodes appointed by the

trust entity. The YOSEMITE Blockchain is basically designed as a DEX (Decentralized

EXchange) blockchain which provides token exchange operations (token sell/buy order) as a

core pre-built blockchain transaction type. The trading fees from on-chain token exchange

transactions are collected and distributed to the trust entities and the service providers.

본 기술 백서를 통해 블록체인 자체적으로 새로운 암호화폐가 발행되지 않는, 즉 네이티브 암호화폐가 없는 퍼블릭

블록체인을 구현하는 새로운 방식을 소개한다. 블록체인에서 자체 생성 네이티브 암호화폐 대신에법정화폐의가치에

고정된 안정화 코인(예, dUSD, digital USD 신용 토큰)을 블록체인 상에 발행하여 블록체인의 기본 암호화폐로

사용한다. 이러한가치안정화코인은금융기관또는정부와같은신뢰기관이블록체인상에발행된토큰의양과동일한

양의 사용자들이 입금한 법정화폐를 지급준비금으로 보관함으로써 가능해진다. 법정화폐에 가치가 고정된 안정화

코인은 투기목적으로 거래되지 않을 것이며 일반 대중들은 일상에서 법정화폐를 사용하는 것과같이익숙하게사용할

수 있다. 자체 발행 네이티브 암호화폐가 없으므로 블록체인트랜잭션에서발생하는트랜잭션수수료는법정화폐고정

코인으로 징수된다. 그리고 본 기술 백서를 통해 블록체인 상에서 실제 의미있는 블록체인 트랜잭션들을 발생시켜

블록체인 생태계에 직접적으로 공헌하는 블록체인 기반 응용 서비스 제공자들에게 인센티브를 부여하는 기존 PoW,

PoS 합의방식과다른새로운방식의 Proof-of-Transaction (PoT) 블록체인합의메커니즘을소개한다. 블록체인생태계

구성원들의 사회적 합의를 얻을 수 있는신뢰기관에게블록체인상에서특별한관리권한이주어질수있다. (예를들면,

시민들이 자신들이 거주하고 있는 지역의 지방정부가 신뢰기관으로 운영에 참여하고 있는 블록체인을 사용하는데

지방정부는 이 블록체인상에서 특별 권한을보장받게됨, 또는금융기관이특별한권한을가지고운영에참여하고있는

블록체인을 해당 금융기관을 신뢰하는 고객들이 해당 블록체인을 통하여 금융거래를 함) 블록체인 상에서

신뢰기관에게 특별권한이 부여되지만 신뢰기관에게 주어지는 특별권한은 이미 블록체인 상에서 정의된

오퍼레이션들로만 제한되며, 신뢰기관이 실행한 모든 액션들은 블록체인 상에서 투명하고 위변조가 안되는 방식으로

모두에게 공개된다. YOSEMITE 블록체인 상에 새로운 블록(최근 블록체인 트랜잭션들의 집합)들을 생성하기 위해

선출되는 블록 생성자들이 PoT 기반 BFT 컨센서스 프로토콜을 통해 블록체인 합의를 이루어 나가게 되는데,

6

Page 8: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

YOSEMITE 블록체인의 블록생성자들은 Transaction-as-a-Vote(TaaV) 메커니즘을 통한 Proof-of-Transaction

방식으로 선출되며, 누구나 블록체인 상에서 트랜잭션을 많이 발생 시킬수 있는 블록체인 기반 서비스를 운용할 수

있으면 블록생성자로 선출되어 블록 생성 합의 과정에 참여하고 보상을 얻을 수 있다. 또한 블록체인이 안정적으로

운영될 수 있도록 신뢰기관들로 지정된 시드 신뢰 노드들이 일정 비율로 블록생성자들로 선정되어 합의 프로세스에

참여하게 된다. YOSEMITE 블록체인은 탈중앙화 분산 거래소(DEX, Decentralized Exchange) 기능이 기본적으로

탑재된 블록체인으로 설계되었다. 토큰 거래를 위한 Buy/Sell 주문들이 블록체인 상의 공개된 오더북에 등록되고

체결되며, DEX를 구현하기 위한 기본적인 오퍼레이션들이 블록생성자들이 운영하는 블록체인의 코어에 구현되어

있다. 블록체인 내 토큰 거래의수수료수익은블록생성자로선출될수있는서비스제공자들이운영하는 PoT 노드들과

신뢰기관들이 운영하는 신뢰 노드들에게 배분된다.

2 YOSEMITE Blockchain as Decentralized Exchange Platform YOSEMITE 블록체인 상에 구현된 탈중앙화 분산 거래소 플랫폼

Figure 2.1 - Crypto trading on the siloed centralized exchange systems

그림 2.1 - 중앙화된 암호화폐 거래소 (CEX) 시스템

The problem of centralized crypto-currency exchanges (CEX) is that they are the opaque siloed

systems. Although the crypto-currencies traded in the exchanges are minted and circulated on

the decentralized network of transparent public blockchains, the centralized exchange system

itself is not an open platform. Rather, only the exchange service operator has full access rights in

a siloed server system with the private application servers and database systems, like a usual

web application. Nevertheless, the reason why most crypto-currency trading volumes so far are

processed in these centralized exchanges is that the centralized servers can efficiently handle the

huge trading transaction volumes and their relatively easy usability, whereas on-blockchain

trading transactions are usually very slow, the transaction throughput is very low, and the

blockchain transaction fees (e.g. gas fee in Ethereum) must be paid by users. But, the critical

problem of any centralized exchange is that the trading transactions can be manipulated by the

7

Page 9: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

service operator, because once crypto-currencies and fiat funds are deposited to the centralized

exchange, the trading transactions are actually just modifications of the private databases for

which the service operator has full read/write access. The transaction data of the centralized

exchanges are not immutably transparent to the external world. Even worse, since the deposited

crypto-currencies and fiat funds are held by each centralized exchange, the assets can be

maliciously hacked by external or internal hackers, which has resulted in huge financial loss to

many exchange users.

현재 대부분의 암호화폐 거래소는 중앙화된 거래소(CEX, centralized exchange) 시스템으로 구현되어 운영되고 있다.

중앙화된 거래소 시스템은 블록체인 시스템과 달리 불투명하고 외부로 부터 격리되어 있는 시스템이다. 암호화폐

거래소에서 거래되는 암호화폐들은 퍼블릭 블록체인의 탈중앙화된 네트워크에서 발행되고 유통되고 있지만, 현재

대부분의 암호화폐의 거래는 오픈 플랫폼이 아닌 중앙화된 암호화폐 거래소에서 일어나고 있다. 암호화폐 거래소

사용자들의 암호화폐 거래 주문은 블록체인과 상관없이 중앙화된 거래소 서버에서 수집되고 거래소 서버 내에서

거래가 체결된다. 일반적인 웹 어플리케이션 서버 시스템과 같이, 중앙화된 암호화폐 거래소 서비스 운영자만이

외부로부터 격리된 내부의 거래소 어플리케이션 서버와 데이터베이스 시스템에 접근할 수 있는 권한을 가지고 있다.

그럼에도 불구하고지금까지거의대부분의암호화폐거래가이러한중앙화된암호화폐거래소들에서이루어지고있는

이유는 블록체인 상의 거래 트랜잭션은 일반적으로 매우 느리고 블록체인에서 동시에 처리가능한트랜잭션수가매우

적으며 블록체인 트랜잭션을 실행하려면사용자들이블록체인사용수수료(예, 이더리움의가스수수료)를블록체인의

암호화폐로 지분해야 하는 반면, 중앙화된 거래소 서버들은 대량의 거래 트랜잭션들을 빠르게 처리할 수 있으며

사용자들이 일반적인 웹서비스들과 같이 손쉽게 사용할 수 있기때문이다. 하지만중앙화된거래소시스템들은거래소

서비스 운영자들에 의해 거래 트랜잭션들이조작될가능성을항상가지고있다는중대한문제점을안고있다. 중앙화된

거래소에 암호화폐나 법정화폐가 입금된 후에는 모든 암호화폐 거래 트랜잭션은 단지 거래소 내부 데이터베이스를

수정하는 것에 지나지 않으며, 이 데이터베이스에 대한 읽기/쓰기 접근 권한은 서비스 운영자만이 가지고 있기

때문이다. 중앙화된 거래소에서 발생한 거래 데이터는 블록체인과는 달리 투명하고 위변조가 불가능한 방식으로

거래소 외부에 공개되지 않는다. 외부에서 거래소 데이터를 감사하더라도거래소내부데이터베이스의거래데이터는

언제든지 위변조가 가능하다. 또한, 중앙화된 거래소에 입금되어 있는 암호화폐와 법정화폐 자금은 거래소가 전부

보관하고 있어서 보안이 취약한 거래소 시스템들에서 끊임없이 거래소 외부와 내부의 공격자들로인한해킹사고들이

발생해 왔으며, 거래소 고객들의 자산에 심각한 피해를 입혀 왔다.

Figure 2.2 - Decentralized Exchange architecture of YOSEMITE Blockchain

그림 2.2 - YOSEMITE 블록체인 위에 구현된 탈중앙화 분산 거래소 (DEX) 시스템 구조

8

Page 10: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

The above diagram illustrates the decentralized exchange (DEX) platform architecture which

can be built upon the YOSEMITE Blockchain. The crypto tokens backed by either fiat money

funds held in trusted banks, other crypto-currencies, or real assets managed by trusted

Depositories, are issued and circulated in the YOSEMITE Blockchain in a transparent and

secure manner. Unlike a centralized exchange, buy/sell orders for the token exchange are

submitted as blockchain transactions signed by the user’s private keys, order-books are

on-blockchain and all the order-matchings are validated and transacted by the elected block

producers. The trading transactions are immutably transparent to the public and cannot be

manipulated by a centralized actor. The fiat-pegged stable coins issued through the trusted

Depositories are used as the trading currency and transaction fee payment. The YOSEMITE

Blockchain is basically a decentralized exchange platform in which various kinds of tokens are

traded securely and transparently with the fiat-pegged stable coin as the native crypto-currency

of the blockchain providing high speed and throughput of blockchain transaction processing.

그림 2.2는 YOSEMITE 블록체인 위에서 구현가능한 탈중앙화 분산 거래소 (DEX, decentralized exchange) 플랫폼의

아키텍처이다. 신뢰할수 있는 은행에 보관되어 있는 법정화폐들을 기반으로 하는 암호화 토큰, 외부의 퍼블릭

블록체인들의 암호화폐를 기반으로 하는 토큰, 실물자산을 기반으로 토큰 들이 신뢰기관인 Depository들을 통해

YOSEMITE 블록체인상에투명하고안전하게발행되고유통될수있다. 중앙화된거래소시스템과는다르게, 블록체인

상의 암호화 토큰 거래를 위한 Buy/Sell 주문 들은 블록체인 사용자 계정의 비밀키로 암호화 서명된 블록체인

트랜잭션으로탈중앙화된블록체인네트워크에제출되어토큰거래오더북(order book)이투명하고위변조가불가능한

블록체인 상에 공개된다. Buy/Sell 주문들은 블록체인 내에서 선출된 블록생성자들에 의해 검증되고 블록체인 상에서

주문체결이 이루어진다. 블록체인 상의 거래 트랜잭션들은 모두에게 투명하게 공개되고 중앙화된 하나의액터로부터

악의적인 조작이 불가능하다. YOSEMITE 블록체인은 신뢰기관인 Depository를 통해 발행되는 법정화폐 가치고정

안정화 코인을 토큰 거래 시 거래 기준 화폐와 블록체인 트랜잭션 수수료 지불 수단으로 사용하며, 다양한 종류의

토큰들을 안전하고 투명하게 거래할 수 있는 탈중앙화 분산 거래소 플랫폼 기능들을 블록체인의 기본 트랜잭션

타입으로 제공한다.

9

Page 11: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

3 Depository and Tokens Issued on YOSEMITE Blockchain Depository와 YOSEMITE 블록체인 상에 발행된 토큰

The Depository is the entity that issues tokens in YOSEMITE Blockchain and ensures the value

of issued tokens by holding assets outside the blockchain of equal value backing the issued

tokens. Whenever a token holder requests to redeem or withdraw their tokens, the Depository

who issued the token should burn the requested amount of tokens on blockchain and hand over

the corresponding amount of the backing asset to the user. The YOSEMITE Blockchain provides

built-in operations for issuing/redeeming(burning) tokens which can be circulated on the

blockchain. The issued token symbols are tagged by the account ID of the Depository who issued

the tokens. A token can be redeemed by only the Depository whose ID is tagged on the token

symbol.

Depository는 YOSEMITE 블록체인에 토큰을 발행하며 발행된 토큰의 가치에 일대일 대응되는 실물 자산을 블록체인

밖에서 투명하고 안전하게 보유하여 발행된 토큰을 가치를 뒷받침하는 기능을 하는 신뢰기관이다. 토큰 보유자가

가지고 있는 토큰을 대응되는 실물자산으로 교환을 요청하면 (redeem/withdrawal) Depository는 언제든지 자신이

발행한 토큰을 블록체인상에서 소각시키고 대응되는 실물자산을 사용자에게 안전하게 지급해 주어야 한다.

블록체인상에서 유통될수 있는 토큰 발행/청산(소각) 오퍼레이션들이 YOSEMITE 블록체인 상의 표준 트랜잭션으로

구현되어 제공된다. 발행된 토큰들의 심볼에는 토큰 발행자인 Depository의 블록체인 계정 식별자가 태그로붙여져서

발행된 토큰을 발행한 Depository를 식별할수 있도록 한다.

dUXD/D1 : UX-Dollar-pegged digital UXD token issued by the Depository D1, only

redeemable by D1

dBTC/D2 : Bitcoin-pegged digital BTC token issued by the Depository D2 holding the private

keys controlling the issued amount of actual Bitcoin, only redeemable by D2

dUXD/D1 : Depository D1에 의해 블록체인 상에 발행된 UX-Dollar에 고정된 digital UXD 토큰, 이 토큰은

Depository D1에 의해서만 UX-Dollar 실물자산으로 교환(redeem)이 가능함

dBTC/D2 : Depository D2에 의해 블록체인 상에 발행된 Bitcoin에 고정된 digital BTC 토큰, 이 토큰은 Depository

D2에 의해서만 Bitcoin으로 교환(redeem)이 가능함

If multiple entities issue UXD-pegged tokens, each token tagged by each Depository should be

redeemed by the tagged Depositories. The tokens can be issued by any blockchain accounts

acting as a Depository, but should earn trust from the blockchain users to be circulated on the

blockchain. The Depositories always are required to prove the secure existence of the backing

real assets transparently to be trusted.

10

Page 12: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

UXD에 가치가 고정된 토큰이 여러 Depository들에 의해서 발행되었다면, 각각 해당 Depository 식별자로 태그가

붙여진 토큰들은 해당 토큰을 발행한 Depository에 의해서만 UXD 실물자산으로 교환될 수 있다. YOSEMITE

블록체인상의 토큰들은 Depository로 동작하고자 하는 어떠한 블록체인 계정도 발행할 수 있으나, 발행된 토큰이

블록체인 상에서 원활하게 유통되기 위해서는 토큰을 발행한 Depository가 토큰 사용자들의 신뢰를 얻어야 한다.

Depository들이 블록체인 생태계에서 신뢰를 받기 위해서는 발행된 토큰의 가치를 뒷받침하는 실물자산들을 항상

안전하고 투명하게 보존하고 실물자산 들에 대한 신뢰할만한 정보들을 투명하게 공개해야 한다.

3.1 Fiat-Pegged Stable Coin (dFIAT) as Native Crypto-Currency of

YOSEMITE Blockchain YOSEMITE 블록체인의 네이티브 암호화폐로서의 법정화폐 고정 안정화 코인 (dFIAT)

Figure 3.1 - Fiat-pegged stable coin(dFIAT) as native currency of YOSEMITE Blockchain

그림 3.1 - YOSEMITE 블록체인의 네이티브 암호화폐로서의 법정화폐 고정 안정화 코인(dFIAT)

The fiat-pegged stable coin is the native crypto token on the YOSEMITE Blockchain, maintained

by a one-to-one backing of fiat money reserve outside the blockchain, and is issued by special

Depositories authorized by the top trust entity in the system, such as the government or a

trusted financial institution. This special fiat-pegged stable coin is the foundational currency in

YOSEMITE Blockchain, where it is used for transaction fee collection from every blockchain

transaction, as well as the trading currency for on-chain token exchange and the payment

method for blockchain applications. In YOSEMITE Blockchain, these kind of stable coins are

called as dFIAT (digital FIAT token). Below are the examples of dFIAT.

11

Page 13: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

법정화폐에 가치가 고정된 안정화 코인은 YOSEMITE 블록체인의 네이티브 암호 토큰인다. YOSEMITE

블록체인상에서 Top Trust Entity로 지정된 신뢰 금융 기관이나 정부기관이 공인한 특수 Depository에의해발행될수

있으며, 발행된 토큰의 양과 일대일로 대응되어 블록체인 상의 토큰의 가치를 보전하는 법정화폐 지급준비금이

블록체인 밖에서 투명하고 안전하게 관리된다. 법정화폐 가치 고정 안정화 코인은 블록체인 트랜잭션 마다 발생되는

트랜잭션 수수료 지불 수단, 블록체인 상 토큰 거래의 거래 기준 화폐, 블록체인 응용 서비스에서의 결제 수단 등에

사용되는 YOSEMITE 블록체인의 기초 화폐이다. YOSEMITE 블록체인에서발행된이러한법정화폐가치고정안정화

코인을 dFIAT (digital FIAT token) 토큰이라 칭한다. 아래는 dFIAT 토큰의 예이다.

● dUXD/TFI : UXD-pegged stable coin, digital UXD, issued by a trusted financial

institution (TFI), which could serve as the native crypto-currency of a blockchain

operated in a country where people use UXD dollar as currency.

● dKPW/BK1 : KPW-pegged stable coin, digital KPW, issued by a trusted bank (BK1),

which could serve as the native crypto-currency of a blockchain operated in a country

where people use KPW as currency.

...

● dUXD/TFI : 신뢰 금융기관 TFI가 블록체인 상에 발행한 법정화폐 UXD 가치 고정 안정화 코인. UXD를

법정화폐로 사용하는 지역에서 운용되는 YOSEMITE 블록체인의 네이티브 암호화폐로 사용될 수 있음.

● dKPW/BK1 : 신뢰 금융기관인 은행 BK1가 블록체인 상에 발행한 KPW 가치 고정 안정화 코인. KPW를

법정화폐로 사용하는 지역에서 운용되는 YOSEMITE 블록체인의 네이티브 암호화폐로 사용될 수 있음.

...

Unlike the other public blockchains’ native crypto-currencies, there is no currency inflation for

the native currency in YOSEMITE chain, dFIAT, because it is only issued when the users of the

blockchain deposit their fiat money to the dFIAT Depository. If a user sends 1000 KPW worth of

fiat money through an existing payment channel (e.g. wire-transfer, credit card payment) to the

bank acting as the authorized Depository (BK1), the same amount (1000) of dKPW/BK1 can be

issued to the user's blockchain account. The Depository system manages the fiat reserve by

interfacing with traditional secure banking systems and handles dFIAT token

issuance/redeeming by interfacing with the blockchain using the securely stored private key.

Because the guarantee of redeeming of dFIAT to actual fiat money is crucial for the YOSEMITE

Blockchain, the existence of trust entities receiving widespread public support is indispensable

in YOSEMITE Blockchain design. Only the Depository(ies) authorized in blockchain by the top

trust entity can issue and redeem dFIAT, but users will ultimately decide which Depositories’

tokens to use and trust.

일반적인 퍼블릭 블록체인 네이티브 암호화폐들과는 다르게, YOSEMITE 블록체인에서 네이티브 암호화폐로 쓰이는

dFIAT 토큰은 블록체인 사용자들이 Depository에 입금한 실제 법정 화폐의 양 만큼만 블록체인 상에서 발행되므로

dFIAT 토큰은 블록체인 내의 통화 인플레이션이 없다. 예를들어 한 블록체인 사용자가 1000 KPW 만큼의 실제

12

Page 14: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

법정화폐를 기존 결제 채널들(인터넷 뱅킹, 신용카드 결제 등)을 통해 YOSEMITE 블록체인 상의 공인 Depository

BK1으로 송금을 하면, 같은 양의 dFIAT 토큰인 1000 dKPW/BK1이 사용자의 블록체인 계정에 발행된다. Depository

시스템은 기존 뱅킹 시스템들과 연결되어 은행에 예치되어 있는 법정화폐 지급준비금을 관리하며, 시스템에안전하게

저장되어 있는 비밀키를 사용하여 YOSEMITE 블록체인 상의 dFIAT 토큰의 발행과 소각을 처리한다. YOSEMITE

블록체인에서 발행된 dFIAT 토큰들을 실제 법정화폐로 교환해 주는 것은 YOSEMITE 블록체인 운용의 핵심적인

부분이다. 이를 실현해줄 수 있는, 블록체인 사용자들로 부터 높은 신뢰를 받는 기관의 존재는 YOSEMITE 블록체인

설계에 반드시 필요한 요소이다. YOSEMITE 블록체인 상의 Top Trust Entity로 부터 명시적으로 공인된

Depository들만이 dFIAT 토큰들을 발행할수 있으나, 블록체인 사용자들이법정화폐를입금할경우에만 dFIAT 토큰이

발행될수있으므로결국에는블록체인생태계의사용자들의신임을받는 Depository들이발행한토큰들만이발행되고

유통될 것이다.

The public ledger of dFIAT token distribution for every blockchain account is maintained

transparently and securely by the blockchain network. All blockchain transactions such as

issuing/redeeming(burning) dFIAT, transferring dFIAT to another account (while consuming a

small amount of dFIAT as transaction fee), and exchanging tokens using dFIAT as trading

currency and transaction fee, are transparent and securely immutable since the transactions

occur on the blockchain. Since all actions of the dFIAT Depository are also transparent and

traceable, the total supply of the dFIAT token being circulated on blockchain is always public

information. So, if the trustworthy bank holding the fiat money deposited through the dFIAT

Depository allows public access to the current fiat money reserve balance in a reliable way,

blockchain users can transact on the YOSEMITE Blockchain without fear or uncertainty of

dFIAT redeem. Total supply of the dFIAT on the blockchain should always be less than or equal

to the fiat reserve amount in the trustworthy bank.

각 블록체인 계좌들의 dFIAT 토큰의 소유량에 대한 원장은 블록체인 네트워크를 통해 투명하고 위변조 할 수 없는

방식으로 안전하게 공개된다. dFIAT 토큰의 발행과 소각, 블록체인 계좌간 dFIAT 토큰 전송, dFIAT 토큰을 거래기준

화폐로 사용하는 다양한 토큰들의 오픈 마켓을 통한 거래, dFIAT으로 지불되는 트랜잭션 수수료 처리 등의 모든

블록체인 트랜잭션들이 투명하고 변경이 불가한 형태로 블록체인 상에서 처리된다. dFIAT Depository의 모든 액션이

블록체인 상에서 투명하고 추적이 가능하기 때문에 YOSEMITE 블록체인 상에서 발행되고 유통되고 있는 dFIAT

토큰의 총량은 항상 위변조가 불가한 공개정보이다. 따라서, 블록체인 생태계의 신뢰를 받고 있는 은행이 dFIAT

Depository를 통해 예치된 dFIAT 토큰 발행에 대응되는 법정화폐 지급준비금 잔고를 신뢰할수 있는 방식으로 항상

공개 한다면, 블록체인 사용자들은 dFIAT 토큰의 실제 법정화폐 교환의 불확실성에 대한 두려움 없이 YOSEMITE

블록체인 상의 dFIAT 토큰을 안전하게 사용할 수있다. dFIAT 토큰의블록체인상의발행총량은 Depository와연계된

은행에 예치되고 잔고가 공개되는 지급준비금의 총량보다 항상 같거나 작아야 한다.

13

Page 15: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

3.2 External-Crypto-Currency-Pegged Token (dCRYPTO) 외부 블록체인 암호화폐에 고정된 토큰 (dCRYPTO)

Figure 3.2 - Crypto-Currency-Pegged Token (dCRYPTO) issued by Depository

그림 3.2 -Depository에 의해 발행되는 외부 블록체인 암호화폐 고정 토큰 (dCRYPTO)

The crypto-currency-pegged tokens (dCRYPTO, digital CRYPTO token) can be issued by the

Depositories in the same way as the fiat-pegged stable coins. A Depository issues the exact

amount of dCRYPTO token only when a blockchain user deposits the same amount of

crypto-currency to the Depository’s external blockchain (e.g. Bitcoin, Ethereum) account, of

which the private key is owned by the Depository. A dCRYPTO token holder can always request

to redeem dCRYPTO to the actual crypto-currency, then the Depository has to burn dCRYPTO

token in the YOSEMITE Blockchain and transfer the burned amount of the external

crypto-currency to the token holder in the corresponding external blockchain. For example, the

dBTC/D2 token is the Bitcoin-backed crypto token issued by the Depository D2. When user A

deposits 1.25 BTC to Depository D2, 1.25 dBTC/D2 is issued to the user A’s YOSEMITE

blockchain account, regardless of the USD worth of the crypto-currency. The issued dCRYPTO

tokens can then be transferred and traded on the YOSEMITE Blockchain.

외부의 퍼블릭 블록체인들의 암호화폐의 가치에 고정된 토큰(dCRYPTO, digital CRYPTO 토큰)들도 신뢰기관인

Depository들에 의해 법정화폐 가치 고정 안정화 토큰 발행과 유사한 방식으로 블록체인 상에 발행될 수 있다.

Depository는 YOSEMITE 블록체인 사용자가 암호화폐를 Depository가 비밀키를 소유하고 있는 외부

블록체인(비트코인, 이더리움 등)의 계정으로 전송하면, 전송된 암호화폐의 양과 동일한 양의 dCRYPTO 토큰이

Depository에 의해 YOSEMITE 블록체인 상에 발행된다. dCRYPTO 토큰 소유자는 언제든지 Depository에게

dCRYPTO이 실제 외부 블록체인상의 암호화폐로 교환되도록 요청할 수 있다. 예를들면, YOSEMITE 블록체인 상에

발행된 dBTC/D2 토큰은 Depository D2에 의해 발행된 비트코인 암호화폐 기반 토큰이다. 사용자 A가 1.25 BTC를

14

Page 16: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

비트코인 블록체인 상에서 Depository D2의 비트코인계좌로전송하면, 동일한양의 1.25 dBTC/D2 토큰이사용자 A의

YOSEMITE 블록체인 계좌로 발행된다. 비트코인의 USD 가격과는 상관이 없다. 사용자 A가 Depository D2에게 0.5

dBTC/D2 토큰의 출금을요청하면 Depository D2는지금준비금으로보유하고있는비트코인중 0.5 BTC를사용자 A가

요청한 비트코인 계좌로 전송한다. 발행된 dCRYPTO 토큰들은 YOSEMITE 블록체인 상의 계좌들간에 전송되고

블록체인 내 오픈 마켓을 통해 거래될 수 있다.

The total supply of dCRYPTO is transparent and tamper-proof public information because

dCRYPTO is issued and circulated on the blockchain, i.e. all transaction data is held in the

decentralized ledger. Also, the amount of the crypto-currency owned by the Depositories can be

transparently verified by the corresponding external blockchain network. So, if the Depositories

publish their account addresses holding the external crypto-currency reserve and provide the

proof of the ownership of the private keys in external blockchains (e.g. providing the

cryptographic signature for the unpredictable recent block hash), YOSEMITE Blockchain users

can safely use dCRYPTO tokens on the YOSEMITE Blockchain. To gain trust from blockchain

users, the Depositories should be run by trusted institutions like banks and the private keys

must be securely managed within the environment guaranteeing high-level security.

dCRYPTO 토큰은 블록체인 상의 분산원장을 통해 발행되고 유통되므로 YOSEMITE 블록체인 내의 현재 dCRYPTO

토큰 총 통화량은 투명하고 위변조할 수없는공개정보이다. 또한 Depository들이보관하고있는암호화폐들의총량도

각암호화폐들의자체블록체인네트워크를통해 Depository가소유한계정들의암호화폐소유총량을투명하게확인할

수 있다. 따라서 Depository들이 외부 암호화폐를 지급준비금으로 보관하고 있는 Depository 소유의 외부 블록체인

계정 목록들을 공개하고 외부 블록체인 계정들의 소유권을 증명할 수 있다면(예를들어, 예측할수 없는 최근 블록

해시값에 대한 암호화 서명을 외부 블록체인 계정의 비밀키로 생성하여 주기적으로 공개함), YOSEMITE 블록체인

사용자들은 블록체인 상에 발행된 dCRYPTO 토큰들을 안전하게 사용할 수 있게 된다. 블록체인 사용자들의 신뢰를

얻기 위해, dCRYPTO 토큰을 발행하는 Depository들은 은행과 같은 신뢰 기관들에 의해 운영되어야하며, 암호화폐를

보관하는 비밀키들이 높은 수준의 보안이 유지되는 환경에서 안전하게 관리되어야 한다.

15

Page 17: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

3.3 Real Asset Token (dASSET) 실물 자산 기반 토큰 (dASSET)

Figure 3.2 - Real asset token (dASSET) issued by Depository

그림 3.2 - Depository에 의해 발행되는 실물자산 토큰 (dASSET)

Depositories can also issue real asset-backed crypto tokens (dASSET, digital ASSET token) on

the YOSEMITE Blockchain. The real assets, such as real estate, art pieces, (unlisted) company

shares, gold, diamond and so on, can be tokenized through trusted Depositories connecting the

real assets and the dASSET tokens. For example, REAL-123/D3 is the real estate token issued

for a building managed by Depository D3. The Depository issuing dASSET is required to

securely manage the ownership of the tokenized real assets and keep the real asset safe

physically. The partial ownership of the tokenized assets can be traded on the YOSEMITE

Blockchain. The open market determines the price of the assets through on-chain token trading.

If there is revenue generated from the tokenized asset, e.g. getting monthly rent, the profit can

be distributed to the dASSET token holders transparently on the blockchain. If someone wants

to purchase total ownership of a publicly tokenized asset (e.g. real estate, art-piece), one can

submit an asset acquisition proposal by escrowing a sum of fiat-pegged stable tokens

corresponding to the proposed purchase price (usually total market cap of the asset plus

premium). If the shareholders of the asset token approve the suggested price by voting in

proportion to the dASSET tokens owned by each shareholder, the total ownership of the real

asset is transferred to the asset buyer (e.g. ownership transfer on property deed, delivering the

art-piece to the buyer), the escrowed purchase payment is distributed to the dASSET token

holders proportionally, and all the dASSET tokens for the sold asset on blockchain are burned.

The operations required to facilitate real asset tokenization such as issuing/burning tokens,

16

Page 18: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

transferring/trading tokens, revenue distribution, proposing asset acquisition, escrowing

purchase payment, and voting are natively provided by the YOSEMITE Blockchain.

Depository들은 또한 YOSEMITE 블록체인 상에서 실물 자산 기반 토큰(dASSET, digital ASSET 토큰)들을 발행할수

있다. 부동산, 미술품, (비상장) 회사 주식, 금, 다이아몬드 등과같은실물자산들이신뢰기관인 Depository들을통해서

YOSEMITE 블록체인 상에서 발행될 수 있으며, Depository들은 발행된 dASSET 토큰들과 그와 연결된 실물자산들을

투명하고 안전하게 관리하는 역할을 한다. 예를 들어, REAL-123/D3 토큰은 특정 건물에 대한 지분을 거래하기 위해

Depository D3가 YOSEMITE 블록체인상에발행한토큰이다. dASSET 토큰을발행하는 Depository들은토큰화된실물

자산들의 소유권(부동산 등기 등)을 안전하게 관리해야 하며, 물리적으로 안전한 관리를 해야 한다. 토큰화된 실물

자산들은 Depository들의 보증하에 YOSEMITE 블록체인 상에서 실물자산에 대응하는 지분이 거래될 수 있다.

블록체인 상의 오픈 마켓 토큰거래를 통해 자산들의 가격이 시장에서 투명하게 결정된다. 만약 토큰화된 자산들에서

수익이발생한다면 (예를들어건물의월세수입등) 자산의수익이 Depository를통해법정화폐기반토큰으로블록체인

상에 입금되고 dASSET 토큰 소유자들에게 소유량에 비례하여 투명하게 배분되어진다. 부동산, 미술품같은토큰화된

자산의 전체 소유권이 블록체인 상에서 판매될 수도 있다. 자산의 전체 소유권을 구매하고자 하는 주체가 YOSEMITE

블록체인의 오픈마켓에서 형성된 현재 시장가격에 프리미엄을 붙인 전체 자산 가격에 해당하는 법정화폐에 고정된

코인을 YOSEMITE 블록체인상에에스크로하고자산인수제안을블록체인트랜잭션으로제출할수있다. 만약제안된

자산 인수 총 가격에 대해 해당 자산 토큰 소유자들이 각 계정의 토큰 소유량에 비례한 블록체인 상의 가중치 투표를

통해 승인하게 되면, 판매된 자산의 소유권이 자산 인수자에게 이전되며(예를들어, Depository를 통한 부동산 등기

이전, Depository가 보관하고 있는 실물 미술품을 인수자에게 배송함), 블록체인 상에 에스크로되어 있는 자산 인수

대금은 해당 자산의 dASSET 토큰 소유자의 블록체인 계정으로 각 계정의 토큰 소유량에 비례하여 배분되며, 해당

자산의 dASSET 토큰은 블록체인 상에서 모두 소각된다. 실물자산을 블록체인 상에서 토큰화하기 위해 필요한 모든

오퍼레이션들(토큰 발행/소각, 토큰 전송/거래, 수익 배분, 자산 인수 제안, 거래 대금 에스크로, 지분 투표 등)이

YOSEMITE 블록체인의 자체 트랜잭션으로 기본적으로 제공된다.

17

Page 19: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

4 Built-in Token Operations in YOSEMITE Blockchain YOSEMITE 블록체인에서 기본 제공되는 토큰 오퍼레이션

In the YOSEMITE Blockchain, the built-in operations to implement the on-chain decentralized

token exchange are provided at the core level. The crypto token issue/redeem, token transfer,

and token exchange order operations are provided as primitive blockchain transaction types.

YOSEMITE 블록체인은 블록체인 상에서 탈중앙화 분산 토큰 거래소 구현이가능하도록블록체인코어레벨에서기본

제공되는 토큰 오퍼레이션들을 제공한다. 토큰 생성/소각(redeem), 토큰 전송, 토큰 거래 주문 오퍼레이션들이

블록체인 상의 기본 트랜잭션 타입으로 제공된다.

● Issue / Redeem (Burn) Token 토큰 생성/소각(redeem) 오퍼레이션

A Depository can submit Issue-Token transactions to issue crypto tokens backed by real

assets securely held by the Depository on blockchain, and make Redeem-Token

transactions to burn issued crypto tokens to withdraw the real asset to the requesting

users. The Issue/Redeem-Token transactions should be crypto-signed by the private key

of the Depository account.

Depository는 안전하게 보관하고 있는 실물 자산에 대응하는 암호화 토큰을 블록체인 상에 발행하기 위해

Issue-Token 트랜잭션을 블록체인 네트워크에 제출한다. 또한 토큰 보유자의 토큰 교환 (redeem) 요청 시,

Depository는 사용자에게 실물 자산을 전달(출금)하고 Depository가 발행한 토큰을 redeem이 요청된 만큼

소각하기 위해 Redeem-Token 트랜잭션을 블록체인 네트워크에 제출한다. Issue/Redeem-Token 트랜잭션

메시지는 Depository의 블록체인 계정의 비밀키로 암호화 서명이 되어야 한다.

e.g. Issue 10000 dKPW/D1 to account-A, Redeem(burn) 5000 dKPW/D1 and withdraw

5000 KPW to user-A’s bank account, Issue 1.353 dBTC/D1 to account-B, Issue 10.515

dETH/D2 to account-C

예) Depository D1이 10000 dKPW/D1 토큰을 계정 A에 발행함, 계정 A가 소유한 5000 dKPW/D1 토큰을

소각하고 5000 KPW 를 은행 시스템을 통해 계정 A의 소유자에게 지급함, 1.353 dBTC/D1 토큰을 계정 B에

발행함, 10.515 dETH/D2 토큰을 계정 C에 발행함.

● Token Transfer 토큰 전송 오퍼레이션

A blockchain user can transfer his/her own crypto tokens held by the user’s blockchain

account to any other blockchain accounts. The Token-Transfer transaction should be

crypto-signed by the private key of the token sender’s account. The transfer transaction

18

Page 20: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

fee should be paid using the fiat-pegged stable coin, native to the YOSEMITE Blockchain.

A Token-Transfer transaction can be blocked if the transfer is not legitimate (e.g. not

KYC-authorized account). For the Tx-Vote field, refer to 5.1 “Transaction-as-a-Vote”

part.

블록체인 사용자는 자신의 블록체인 계정이 소유하고 있는 토큰들을다른블록체인계정들로전송할수있다.

Token-Transfer 트랜잭션 메시지는 토큰을 전송하는 블록체인 계정의 비밀키로 암호화 서명이 되어야 한다.

토큰 전송시 트랜잭션 수수료는 법정화폐 가치 고정 안정화 코인 dFIAT으로 지불된다. Token-Transfer

트랜잭션은 해당 토큰의설정에따라 KYC/AML 인증과정을거치지않은사용자들에게로의전송이제한될수

있다. 아래 예제의 Tx-Vote 필드는 5.1 “Transaction-as-a-Vote (TaaV)” 파트를 참고.

e.g. [ From : account-A, To : account-B, Amount: 50000 dKPW/D1, Tx-Fee : 100

dKPW/D1, Tx-Vote : Node-K-address ]

● Token Exchange Order 토큰 거래 주문 오퍼레이션

A blockchain user can submit buy/sell orders to trade his/her own crypto token. The

token exchange orders are matched automatically by the block producers who execute

the actual token trade between the buy/sell order submitters and collect the exchange

transaction fees paid with fiat-pegged stable coins. The Token-Exchange-Order

transaction should be crypto-signed by the private key of the order maker’s account. For

the Tx-Vote field, refer to 5.1 “Transaction-as-a-Vote” part. An open order which is not

yet fully filled can be cancelled by a Cancel-Order transaction signed by the same

account, with no transaction fee charged for the cancel operation.

블록체인 사용자는 소유하고 있는 토큰을 블록체인 상에서 거래하기 위해 Buy/Sell 주문을 블록체인

네트워크에 제출 할 수 있다. 토큰 거래 주문들은 블록 생성자들에 의해 가격 조건이 맞는 Buy/Sell 주문들이

자동으로 체결 처리된다. 거래 주문 들이 체결될 때 발생하는 트랜잭션 수수료는 법정화폐 가치 고정 안정화

코인 dFIAT으로 지불된다. Token-Exchange-Order 트랜잭션 메시지는 주문을 생성한 블록체인 계정으로

암호화 서명이 되어야 한다. 아래 예제의 Tx-Vote 필드는 5.1 “Transaction-as-a-Vote (TaaV)” 파트를 참고.

아직 완전히 체결이 완료되지 않는 주문들 (open order)은 주문 트랜잭션과 같은 블록체인 계정으로 암호화

서명된 Cancel-Order 트랜잭션으로 취소할 수 있다. 주문 취소 트랜잭션은 트랜잭션 수수료가 징수되지

않는다.

e.g. [ From : account-A, Buy : dETH/D2, Sell : dKPW/D1, Amount : 3, Price :

(1:150000), Tx-Fee : 450 dKPW/D1 (0.1%), Tx-Vote : Node-A-address ]

[ From : account-B, Buy : dKPW/D1, Sell : dETH/D2, Amount : 200000, Price :

(100000:1), Tx-Fee : 200 dKPW/D1 (0.1%), Tx-Vote : Node-Q-address ]

Since the core operations required to build an exchange service are supported as the primitive

blockchain transactions, the on-blockchain exchange service can be directly implemented on the

19

Page 21: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

YOSEMITE Blockchain. The transaction fees, paid in fiat-pegged stable coins (e.g. dKPW/D1),

are collected and held in the transaction fee profit pool on the blockchain. The collected

transaction fee profits are periodically distributed to the blockchain operators like block

producers.

이러한 토큰 거래소 서비스를 개발하는데 필요한 주요 오퍼레이션들이 기본 블록체인 트랜잭션으로 제공되므로,

YOSEMITE 블록체인 위에 블록체인 기반 탈중앙화 거래소 서비스를 손쉽게 개발할 수 있다. 블록체인 트랜잭션이

처리될 때 발생하는 트랜잭션 수수료는 dKPW/D1 와 같은 법정화폐 가치 고정 안정화 코인 dFIAT으로 징수되며,

징수된 수수료들은 블록체인상의 트랜잭션 수수료 수익 풀 (transaction fee profit pool)에쌓이게된다. 풀에축적되는

트랜잭션 수수료 수익은 블록생성자와 같은 블록체인을 운용자들에게 주기적으로 배분된다.

Token-Transfer operations are immediately charged transaction fees in dFIAT, preventing DoS 5

(Denial of Service) attacks. For Token-Exchange-Order transactions, only blockchain accounts

holding non-zero amount of tokens (including the transaction fee) not locked in the open orders

can make exchange transactions, similar to bandwidth allocation based on token ownership

without spending any tokens in EOS. To prevent multitudes of microtransactions trading a tiny

amount of tokens to spam the blockchain, a minimum limit for the amount of tokens

transferable or tradable in one transaction is enforced. Because Token-Exchange-Order

transactions are not immediately charged transaction fees, i.e. fees are collected only when the

buy/sell orders are matched, and the Cancel-Order transaction is fee free, malicious attackers

can repeat Token-Exchange-Order and Cancel-Order transactions indefinitely to orchestrate a

DoS attack without spending any tokens. To prevent this, the YOSEMITE Blockchain restricts

the rate of the Cancel-Order transactions adaptively in proportion to the dFIAT holding of each

account.

DoS (Denial of Service) 공격을 방지하기 위해 Token-Transfer 트랜잭션이 실행될 때 즉시 dFIAT으로 트랜잭션

수수료가 징수된다. Token-Exchange-Order 트랜잭션에 대해서는 주문 트랜잭션 제출시 즉시 트랜잭션 수수료가

징수되지는 않지만, 거래할 수 있는 미체결 주문들에 묶여있지 않은 트랜잭션 수수료를 포함한 0이 아닌 양의 토큰을

블록체인 계정이 소유하고 있어야만 Token-Exchange-Order 트랜잭션을 발생시킬 수 있으므로 DoS 공격을 위해

무한히 주문 트랜잭션을 생성할 수는 없다. (EOS 블록체인에서 EOS 토큰의 소유량에 비례한 만큼의 트랜잭션 처리

사용량을 각 계정에 할당하여 DoS 공격을방지할수있는개념과유사하게생각할수있다.) 하나의주문을아주미세한

양의 주문 트랜잭션들로 나누어 아주 많은 수의 블록체인 트랜잭션들을 생성하여 블록체인을 공격할 수 있으므로,

하나의 토큰 전송/거래주문 트랜잭션에서 최소 토큰량 이상의 토큰 전송/거래만 블록체인에서 처리되도록 강제된다.

Token-Exchange-Order 트랜잭션은 Buy/Sell 주문이 매치가 되어 체결이 되기 전까지는 트랜잭션 수수료가 발생하지

않고, Cancel-Order 트랜잭션도 트랜잭션 수수료가 징수되지 않으므로, 악의적인 공격자들이 Token-Exchange-Order

트랜잭션과 Cancel-Order 트랜잭션을 끊임없이 반복하여 블록체인 상의 토큰을 전혀 소진하지 않고도 DoS 공격을

실행할수 있다. 이를방지하기위해, YOSEMITE 블록체인은한계정이 Cancel-Order 트랜잭션을제출할수있는횟수를

해당 계정의 dFIAT 소유량에 비례하여 제한한다.

5 Denial of service attack - https://en.wikipedia.org/wiki/Denial-of-service_attack

20

Page 22: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

5 Proof-of-Transaction (PoT) Consensus Mechanism Proof-of-Transaction (PoT) 컨센서스 메커니즘

5.1 Transaction-as-a-Vote (TaaV)

The key idea that makes Proof-of-Transaction a novel blockchain consensus mechanism is the

concept of Transaction-as-a-Vote (TaaV). Every transaction generated by the client side of the

blockchain applications can optionally include a vote for a block producer candidate who can

potentially participate or is already participating in the blockchain consensus process. In

blockchain transaction messages which would incur some transaction fee, there is an optional

"transaction vote" field where a blockchain account address can be specified as a vote. That

means the entity generating the transaction on blockchain wants the blockchain core node

having the voted address to be a block producer. The transaction message containing the vote

for block producer is cryptographically signed by the private key of a blockchain account, so each

transaction vote has its own cryptographic proof on blockchain.

Proof-of-Transaction(PoT) 기반 컨센서스 메커니즘이 효과적이고 독창적인 블록체인 합의 방식으로 설계된 핵심

아이디어는 Transaction-as-a-Vote (TaaV) 이다. 블록체인의클라이언트측에서생성되는블록체인트랜잭션메시지에

블록체인 합의 과정에 참여하고 있거나 참여할 가능성이 높은블록생성자후보자를투표할수있는항목이선택적으로

포함될 수 있다. 이러한 트랜잭션 투표는 트랜잭션 수수료를 발생시키는 트랜잭션 메시지들에대해서만블록생성자로

선택될 수 있는 특정 블록체인 계정 주소가 “트랜잭션 투표" 필드에 명시 될 수 있다. 트랜잭션 메시지를 생성하는

주체가 트랜잭션 투표 필드에 명시된 블록체인 계정 주소를소유하고있는블록체인코어노드가블록생성자로뽑히는

것을 원한다는 의미의 투표이다. 블록생성자에 대한 투표를 포함하고 있는 블록체인 트랜잭션 메세지들은 해당

트랜잭션들을 생성하는 블록체인 계정의 비밀키로 암호화 서명이 되어지므로, 블록생성자 선출에 대한모든트랜잭션

투표에 대해 블록체인 상에 위변조가 불가능한 암호학적 증명 데이터가 기록된다.

Figure 5.1 - Transaction-as-a-Vote examples

그림 5.1 - Transaction-as-a-Vote 예제들

21

Page 23: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

The blockchain core nodes who acquire the most votes from processed transactions will be

elected as block producers that will cooperatively make new blocks and take rewards from

blockchain. Not every transaction has the transaction vote field, only the transactions incurring

transaction fees paid by blockchain users, i.e. transactions actually contributing to the

blockchain itself, generating profit for blockchain operators including block producers. Each

vote is not equally weighted, they are weighted in proportion to the transaction fee amount paid,

the more transaction fee paid from the voted transaction, the more weighted votes are

accumulated for the specified block producer. And the votes are only effective when the

transaction fees are actually paid to the blockchain. The transaction votes of the open token

exchange (buy/sell) orders unfilled yet are not tallied up as valid votes until the orders are

actually executed. In the example in the Figure 5.1, the token transfer transaction incurring

transaction fee 300 dKPW/D1 with a transaction vote signed for the Node-T-address is

300-weighted vote to Node-T. The token exchange sell order transaction with a transaction vote

signed for the Node-Q-address, which will incur 450 dKPW/D1 as transaction fee when the

order is executed, is 450-weighted vote to Node-Q only effective when it's actually filled. If the

order is cancelled by the user, it is not an effective vote.

블록체인 네트워크에 제출되고 정상적으로 처리된 블록체인 트랜잭션들로 부터 수집되는 트랜잭션 투표를 많이 얻는

블록체인 코어 노드들은 YOSEMITE 블록체인의 블록생성자로 선출되고, 새로운 블록을 생성하는 블록체인 합의

프로토콜에 다른블록생성자들과협력적으로참여하게되며, 새로운블록을생성할때주어지는보상을얻게된다. 모든

트랜잭션이 트랜잭션 투표를 포함할 수있는것은아니고, 트랜잭션수수료를발생시켜서블록생성자와같은블록체인

운영자들에게 수익을 주게되는 트랜잭션들만이 유효한 트랜잭션 투표를 포함할수있다. 각트랜잭션투표들이동일한

가중치로 처리되지않으며, 해당트랜잭션에서징수된트랜잭션수수료의양에비례한가중치투표로처리된다. 더많은

트랜잭션 수수료가 징수된 트랜잭션의 투표가 더 가중치가 높은 투표로 해당 블록생성자 후보 계정으로 집계된다.

트랜잭션 투표는 트랜잭션 수수료가 블록체인에서 실제로 징수 되는 시점 이후에만 유효하다. 따라서 아직 체결되지

않는 토큰 거래 Buy/Sell 주문들에 포함되어 있는 트랜잭션 투표들은 거래주문들이실제로체결되기전까지는유효한

투표로 집계되지 않는다. 그림 5.1의예에서, Node-T의블록체인주소로투표가된 300 dKPW/D1의트랜잭션수수료를

발생시키는 토큰 전송트랜잭션은 Node-T에대한 300만큼의가중치가부여된트랜잭션투표이다. Node-Q의블록체인

주소로 투표가 된 450 dKPW/D1의 트랜잭션 수수료를 발생시키는 그림 5.1의 토큰 거래 Sell 주문 트랜잭션이 주문

가격이 맞는 Buy 주문과 체결될 때 Node-Q에 대한 450 만큼의 가중치가 부여된 투표로 집계된다. 만약 해당 주문이

체결되지 않은 채 사용자에 의해 취소되었다면, 트랜잭션에 포함된 투표는 유효하지 않다.

In other blockchains, the voting process for blockchain governance and profit sharing are

usually separate and explicit processes, where the blockchain users have to submit a separate,

dedicated blockchain transaction in order to vote. Since most average users would not take the

time to explicitly vote, especially if fees are incurred while doing so, voting rates are typically low

in blockchain governance mechanisms. In EOS blockchain, the EOS token holders have to cast

their votes explicitly to the delegated block producers . In Stellar blockchain, the Lumens token 6

6 EOS.IO Technical White Paper - Consensus Algorithm (DPOS) - https://github.com/EOSIO/Documentation/blob/master/TechnicalWhitePaper.md#consensus-algorithm-dpos

22

Page 24: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

holders have to designate a blockchain account address who will take a portion of the

crypto-currency inflation . But in the YOSEMITE Blockchain with TaaV, the voting process for 7

blockchain governance and profit distribution is effectively integrated into the usual blockchain

transaction processing, and blockchain users do not need to be bothered with explicit voting.

일반적으로 다른 블록체인 시스템들에서 구현된 블록체인 거버넌스, 코인 수익 배분등을 위한 투표 프로세스들은

블록체인 사용자들이 투표에 참여하기 위해 별도의 블록체인 트랜잭션을 생성해야 하는 방식을 사용으로 설계되어

있다. 일반적인 블록체인 사용자들이 추가적으로 시간과 비용을 들여 별도의 트랜잭션을 생성하여 투표과정에

적극적으로 참여하기를 기대하기는 매우 어려우며, 특히 투표를 하기 위한 블록체인 트랜잭션 생성 시 블록체인 사용

수수료가 발생한다면 사용자들의 참여를 기대하기는 더욱 어렵다. 따라서 별도의 투표과정을 통해 블록체인

거버넌스가 운용되도록 한 블록체인들의 투표율은 일반적으로 상당히 낮을 수 밖에 없다. EOS 블록체인에서는

블록생성 권한이 EOS 암호화폐 소유자들로부터 위임된 블록생성자들을 선출하기 위해 EOS 암호화폐 소유자들이

일반적인 EOS 기반 블록체인 서비스를 사용하는 것과는 별도의 투표 프로세스에 참여해야 한다. 다른 예로, Stellar

블록체인에서는 블록체인 자체적으로 매 블럭마다 생성되는 (인플레이션으로 새롭게 발행되는) Lumens 암호화폐를

블록체인 노드를 운영하는 블록 생성자들에게 지급하지 않고, 인플레이션으로생성되는 Lumens 암호화폐들을어떠한

블록체인 계정이 가져갈 것인가에 대하여 Lumens 암호화폐 소유자들이 별도의 투표 과정이 참여해야 한다. 반면에,

Transaction-as-a-Vote (TaaV) 메커니즘을 사용하는 YOSEMITE 블록체인에서는 블록체인 거버넌스와 수익 배분을

위한 투표 프로세스가 별도로 존재하는 것이 아니라 블록체인 상에서 발생하는 트랜잭션에효과적으로통합되어있기

때문에 블록체인 사용자들이 별도의 투표과정에 참여하지 않아도 합리적인 방식으로 블록체인 사용자들의 투표가

자동으로 이루어 지게 된다.

5.2 Proof-of-Transaction as Incentivization for Service Providers 블록체인 서비스 제공자들에게 인센티브를 부여하는 Proof-of-Transaction 합의 메커니즘

Figure 5.2 - Proof-of-Transaction as the incentivization for the blockchain-based service providers

그림 5.2 - 블록체인 기반 서비스 제공자들에게 인센티브를 부여하는 Proof-of-Transaction 메커니즘

7 Stellar Developers Guide - Inflation - https://www.stellar.org/developers/guides/concepts/inflation.html

23

Page 25: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

The transaction votes for each blockchain core node (block producer candidate) are

continuously accumulated as the newly-made transactions are processed on the blockchain. The

amount of transaction votes acquired is solid proof of how much the blockchain account has

produced meaningful blockchain transactions invigorating the economy of the blockchain. The

accumulated vote amount is used as the key criteria for the block producer election in

YOSEMITE Blockchain. Proof-of-Work (PoW) based blockchains incentivize the entities having

a large hash power created from a huge amount of computation, which contributes nothing to

the blockchain itself besides creating a competition for block production, and wastefully

consumes massive amounts of electricity. Alternatively, Proof-of-Stake (PoS) based blockchains

incentivise entities owning a large amount of the native crypto-currency. The validators or block

producers of PoS, who already possess a lot of crypto-currency, will have more opportunities to

earn newly-minted crypto-currencies generated as the block reward from the blockchain itself,

essentially the-rich-get-richer. While both PoW and PoS incentivize the players who already

have vested interests but do not directly contribute to the creation of the economic transactions,

Proof-of-Transaction (PoT) incentivizes the blockchain-based service providers who can

produce the tx-fee-revenue-generating transactions, directly contributing to the blockchain

economy by creating real transactions, not just leveraging already vested computation power or

financial wealth.

블록체인 상에서 새로운 트랜잭션들이 생성되고 처리됨에 따라, 블록생성자후보자인각블록체인코어노드들에대한

트랜잭션 투표가 누적된다. 각 블록체인 노드들의 계정에 누적된 트랜잭션 투표의 양은 해당 블록체인 계정을 소유한

주체가 얼마나 많은 의미있는 블록체인 트랜잭션들을 발생시키고 블록체인 내 경제를 활성화 시켰는 지에 대한 매우

정확하고 의미 있는 척도이다. 이렇게 축적된 트랜잭션 투표량은 YOSEMITE 블록체인의 블록생성자들을선출하는데

핵심적인 기준으로 사용된다. Proof-of-Work (PoW) 기반 블록체인은 거대한 양의 컴퓨터 연산으로부터 얻을 수 있는

해시 파워를 가진 주체들에게 인센티브를 제공하지만, 이러한 해시파워는 블록을 생성하는 계정을 선정하는 경쟁에

사용되는 것 외에 블록체인에 자체에 특별한 공헌을 하지는 않으며, PoW 기반 블록체인의 해시파워를 만들어 내기

위해 천문학적인 규모의 전기가 소모되고 있다. 한편, Proof-of-Stake (PoS) 기반의 블록체인은 해당 블록체인의

네이티브 암호화폐를 많이 소유하고 있는 주체들에게 인센티브를 준다. 많은 양의 암호화폐를 이미 소유하고 있는

PoS의 밸리데이터 또는 블록생성자들은 블록체인 합의 과정에서 새로운 블록을 생성하는 노드로 선출될 가능성이

높아지고 새로운 블록 생성 시 보상으로 주어지는 신규 발행된 암호화폐를 다시 얻게 된다. 결국 PoS 합의 방식은

기존에 암호화폐를 많이 가진이들이 더 많은 암호화폐를 얻을 수 있게 되는 부익부 시스템이라고 볼 수 있다. 이렇게

PoW, PoS 기반 블록체인 합의 방식들이 블록체인 상에서 발생하는 경제활동인 트랜잭션 생성에 직접적인 공헌을

하지는 않는 기득 권력(하드웨어 설비를 통한 해시파워 생성, 암호화폐)을 가진 참여자들에게 인센티브를 부여하는

반면, YOSEMITE 블록체인의 Proof-of-Transaction (PoT) 기반 합의 방식은 블록체인 상에서 트랜잭션수수료수익을

발생시켜 블록체인 내 경제에 직접적인 공헌을 하는 유의미한 블록체인 트랜잭션들을 많이발생시키는블록체인기반

서비스 제공자들에게 인센티브를 부여하는 합리적이고 공정한 블록체인 합의 방식이다.

Though the blockchain transaction message must always be crypto-signed by the private key of

the user’s blockchain account, the transaction message itself is not written by human hands.

Rather, the transaction voting field is encoded within the software developed for the specific

blockchain application serviced to the user. So when the software implemented by the

blockchain service provider creates blockchain transaction messages for application users, the

24

Page 26: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

account address of the blockchain core node being run by the service provider can be written in

the vote field for every transaction generated from the blockchain application. In above example

of Figure 5.2, the crypto exchange company A is providing its service built upon the YOSEMITE

Blockchain. The crypto trading software built by the company A always inserts the company’s

own blockchain core node address (Node-Crypto-Ex-A) in the transaction vote field of every

blockchain transaction message made for the user’s sell/buy order. As the trading volume of the

exchange service grows, the company A’s node accumulates a significant amount of transaction

votes that will qualify the node for the block producer election. The service providers, such as

crypto exchanges, fintech companies, and so on, will compete in a transparent and fair way to

get as many transaction votes as possible by providing useful services to the users.

블록체인 트랜잭션 메시지는 블록체인 사용자 계정의 비밀키로 항상암호화서명이되어야하지만, 블록체인트랜잭션

메시지를 사용자가 직접 만드는 것은 아니다. 트랜잭션메시지는사용자가사용하는소프트웨어가생성하며, 트랜잭션

투표 필드 역시 블록체인 사용자에게 서비스되는 특정 블록체인 응용서비스를 위해 개발된 소프트웨어가 사용자를

대신하여 인코딩하게 된다. 따라서 YOSEMITE 블록체인에 기반한 서비스를 제공하기 위해 개발되어 사용자들에게

제공되는 소프트웨어들은 자신의 서비스에서 생성되는 모든 블록체인 트랜잭션 메시지의 트랜잭션 투표 필드에 해당

서비스 제공자가 운영하는 블록체인 코어 노드의 블록체인 계정 주소를 항상 인코딩하도록 개발될것이다. 그림 5.2의

예에서, YOSEMITE 블록체인 기반하여 서비스를 제공하고 있는 암호화폐 거래소 A의 트레이딩 소프트웨어는

사용자들의 토큰 거래 Buy/Sell 주문을 위해 인코딩되는 모든 트랜잭션 메시지들의 트랜잭션 투표 항목에 거래소

회사가 운영하는 블록체인 코어 노드의 블록체인 계정 주소(Node-Crypto-Ex-A)를 항상 입력하고 사용자가 제공한

블록체인 암호키로 트랜잭션 메세지를 암호화 서명하여 블록체인 네트워크에 제출한다. 암호화폐 거래소 서비스의

거래량이증가함에따라, 거래소회사 A의블록체인노드는많은양의트랜잭션투표를얻게될것이고, 결국 YOSEMITE

블록체인의 블록생성자로 선출되어 블록체인에서 보상을 받게 된다. YOSEMITE 블록체인에기반한암호화폐거래소,

핀테크 서비스 회사들과 같은 서비스 제공자들은 더 많은 양의 트랜잭션 투표를 얻기 위해 블록체인 사용자들에게

양질의 서비스를 제공하려는 노력을 하며 투명하고 공정한 방식으로 경쟁하게 될 것이다.

25

Page 27: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

5.3 Blockchain Consensus, Governance, Tx Fee Profit Distribution 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분

Figure 5.3 - Proof-of-Transaction based BFT blockchain consensus

그림 5.3 - Proof-of-Transaction 기반 BFT 블록체인 컨센서스

5.3.1 Proof-of-Transaction (PoT) Node Pool Proof-of-Transaction (PoT) 노드 풀

Proof-of-Transaction based blockchain consensus is designed as a new blockchain consensus

mechanism for public blockchain like YOSEMITE Blockchain. Any entity can be elected as a

block producer, and subsequently participate in blockchain consensus to make new blocks and

collect profits, by earning sufficient transaction votes from blockchain users for whom the entity

provides useful blockchain-based application services. The blockchain account addresses owned

by the blockchain core nodes run by the service providers, which earn the relatively more

amount of transaction votes are listed publicly in the Proof-of-Transaction Node Pool. The

blockchain accounts in the PoT Node Pool are guaranteed to get a portion (dividend) of the

transaction fee profits from the YOSEMITE Blockchain. The amount of user-signed transaction

votes earned by each account is calculated by the elected block producers through

BFT(Byzantine Fault Tolerant)-based blockchain consensus in a secure and transparent

manner, being utilized as the reliable and fair criteria to determine the beneficiaries of the

blockchain system. The number of accounts in the PoT Node Pool is limited and there is a

threshold amount of transaction votes to be earned for an account to be included in the PoT

26

Page 28: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

Node Pool. P% of the total transaction fee profits is allocated to the PoT Node Pool, among the

P%, each account in the pool can claim its own profit in proportion to the transaction votes

earned. PoT In the example of Figure 5.3, the top rated Node C who earned 120 billion points

from weighted transaction votes can claim 5% of the transaction fee profits generated from a

time window. The top nodes in PoT Node Pool also have the right to be elected to be block

producers to make new blocks and earn the additional block reward profit.

Proof-of-Transaction 기반 블록체인 컨센서스는 YOSEMITE 블록체인과 같은 퍼블릭 블록체인을 위한 합의

메커니즘이다. 블록체인 유저들에게 유용한 서비스를 제공하여 트랜잭션 투표만 얻을 수 있다면, 어떠한 블록체인

노드도 블록생성자로선출되어블록체인합의프로토콜에참여하고새로운블록을생성하여블록체인으로부터보상을

얻을 수 있다. 서비스 제공자들이 운영하는 블록체인 코어 노드가 소유하고 있는 블록체인 계정 주소들이 상대적으로

많은 양의 트랜잭션 투표를 얻게 되면투표량의순서에따라 Proof-of-Transaction(PoT) Node Pool에등록되며, 등록된

블록체인 계정들은 YOSEMITE 블록체인에서 발생하는 블록체인 트랜잭션 수수료 수익의 일부를 보상으로 받는것이

보장된다. 각 블록체인 계정이 얻게 되는 블록체인 사용자 계정들로 부터 서명된 트랜잭션 투표량은 YOSEMITE

블록체인 상에서 선출된 블록생성자들이 BFT (Byzantine Fault Tolerant) 기반 블록체인 합의 프로토콜을 통해 8

보안성이 높고 투명한 방식으로 정확하게 계산되어 진다. PoT Node Pool에 포함될 수 있는 블록체인 계정의 수는

제한되어 있으며, 획득한 트랜잭션 투표량에 따라 매 블록마다 정렬되어 목록에 반영된다. 아주 작은 양의 트랜잭션

투표 획득으로는 PoT Node Pool에 등록될 수 없으며 임계치 이상의 트랜잭션 투표를획득한계정들만 PoT Node Pool

등록 대상이 된다. 총 블록체인 트랜잭션 수수료 수익의 P%가 PoT Node Pool에할당되며, PoT Node Pool에등록된각

계정들은 각계정이획득한트랜잭션투표량에비례하여자신에게할당된수익지분을블록체인상에서청구할수있다.

그림 5.3의 예에서, PoT Node Pool의 최상위에 등록된 노드 C 계정은 1200B 포인트의 트랜잭션 투표를 얻었고 그에

비례하여 최근에 블록체인 상에서 징수된 트랜잭션 수수료 수익의 5%를 블록체인 상에서 청구할 수 있다. 또한 PoT

Node Pool에서 상위에 랭크된 계정을 소유하고 있는 블록체인 노드들은 블록생성자로 선출될 권한을 가지게 되며

블록생성자로 선출되어 블록을 생성하면 추가적인 블록 보상을 더 얻을 수 있다.

5.3.2 Seed Trust Node Pool 시드 신뢰 노드 풀

Though it is possible to run blockchain consensus with only the public nodes in PoT Node Pool,

the blockchain could be vulnerable when there are none or only a very small amount of

transactions occurring in the network. In that situation, there will be a higher probability for the

PoT nodes to be Byzantine, i.e. to act maliciously to destroy or take advantage of the blockchain,

as opposed to healthy conditions where multitudes of blockchain transactions are generated.

Seed Trust Nodes running honest nodes even in a no-transaction situation is very helpful for the

stability and reliability of the blockchain. In the YOSEMITE Blockchain, trusted Depositories

providing dFIAT, dCRYPTO, and dASSET tokens is the crucial part of the blockchain ecosystem.

It will create a virtuous cycle on the blockchain for the Depositories to run the Seed Trust Nodes

always running their blockchain core nodes to maintain the blockchain stably. The trusted

Depositories are highly incentivized to run Seed Trust Nodes full time, if they are guaranteed a

8 Byzantine fault tolerance - https://en.wikipedia.org/wiki/Byzantine_fault_tolerance

27

Page 29: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

portion of transaction fee profits (relatively smaller portion than the PoT Node Pool’s share, see

5.3.4 tx fee profit distribution), and blockchain users can be assured of the stability and security

of the chain given these nodes’ participation. There exists a Top Trust Account in the

YOSEMITE Blockchain who has the right to designate the blockchain accounts list in the Seed

Trust Node Pool and the transaction fee profit dividend ratio for each appointed Seed Trust

Node. The Top Trust Account must be owned by an entity having a very high level of trust within

the YOSEMITE Blockchain ecosystem, such as a trusted financial institution or government

organization. Although it is not always required for the Seed Trust Nodes to be run by the

Depositories, it is desirable for the Depositories to be designated as the Seed Trust Nodes. While

the Top Trust Account has the special right to appoint Seed Trust Nodes, all actions of the Top

Trust Account are transparent and immutable in the blockchain, monitored by everyone in the

blockchain ecosystem.

PoT Node Pool에서 선출된 노드들 만으로 블록체인 합의를 이루도록 할 수도 있지만, 블록체인 네트워크 상에서

발생하는 트랜잭션이 전혀 없거나 그 수가 매우 작은 상황에서는 블록체인 시스템의 보안이 매우 취약해 질 수 있다.

블록체인 상에서 트랜잭션이 많이 발생하여 PoT Node들의 수익이많이발생하는상황에서는 PoT Node들이정상적인

블록생성자로 동작하여 수익을 얻어가기 위해 노력하겠지만, 트랜잭션이 거의 발생하지 않는 상황에서는 PoT

Node들이 악의적으로 블록체인을 공격하거나 블록체인 노드 서버를 운영하지 않는 등, Byzantine 노드로동작하게될

확률이 높아지게 된다. 블록체인 트랜잭션이 전혀 발생하지 않는 상황에서도 블록체인 노드들이안정적으로운영되는

Seed Trust Node들이 존재한다면 블록체인의 안정성과 신뢰성에 큰 도움이 된다. YOSEMITE 블록체인에는블록체인

생태계의 지지를 받아 dFIAT, dCRYPTO, dASSET 토큰들을 발행하는 신뢰기관인 Depository들이 존재하는데,

자신들이 발행한토큰들이유통되는블록체인시스템을안정적으로유지하기위해항상안정적으로동작하는블록체인

코어 노드인 Seed Trust Node들을 Depository들이 운영해준다면 블록체인 생태계에 선순환적인 구조를 이루게 될

것이다. 이렇게 항상 안정적으로 운영되어야 하는 Seed Trust Node들이 블록체인 상에서 발생하는 트랜잭션 수수료

수익의 일부를 가져갈 수 있도록 보장받게 된다면, Depository들이 토큰 발행을관리하는역할뿐만아니라 Seed Trust

Node를운영하는것에대한강한인센티브가될것이다. (PoT Node Pool에할당되는수익비율에비해상대적으로작은

비율이 할당됨, '5.3.4 트랜잭션수수료수익배분' 파트참고) 이러한수익배분은 Depository들이발행한토큰의가치를

보전하기 위한 지급준비금 관리 등의 역할을 하는 것에 대한 보상으로 볼 수도 있다. 또한 이러한 신뢰기관인

Depository들이 운영하는 블록체인 코어 노드들이 블록생성자들의 일부로 선출되어 블록체인 합의 프로토콜에

참여하게 되면 블록체인 시스템의 안정성과 보안성을 더해 주게 되며, 블록체인 사용자들이 블록체인 시스템을

신뢰하고 블록체인 기반 서비스들을 이용할수있게된다. YOSEMITE 블록체인에는 Seed Trust Node Pool에들어가는

블록체인 계정 목록과 Pool 내의 각 계정이 보장받게 되는 트랜잭션 수수료 수익 배당 비율을 지정할 수 있는 권한을

가진 Top Trust Account가 존재한다. Top Trust Account는 신뢰 금융 기관이나정부기관과같은블록체인생태계에서

매우 높은 레벨의 신뢰를 받는 주체에 의해 소유되어야 한다. Top Trust Account가 Depository들을반드시 Seed Trust

Node들로 지정해야 하는 것은 아니지만 일반적으로 Depository들이 기본적인 Seed Trust Node들로 지정되는 것이

블록체인 생태계의 신뢰를 받을 수 있을 것이다. Top Trust Account에게블록체인상에서 Seed Trust Node들을지정할

수 있는특수권한이주어지지만지정된동작을수행하는것외에사용자들의블록체인트랜잭션처리에영향을줄수는

없으며, Top Trust Account의 모든 액션은 블록체인 상에서 이루어지므로 투명하고 위변조가 불가능한 방식으로

이루어지게 되어 블록체인 생태계의 모든 구성원들에 의해 감시를 받게 된다.

28

Page 30: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

5.3.3 Election of Block Producers for BFT Consensus BFT 컨센서스를 위한 블록생성자 선출

The critical element of blockchain design which enables scalability, i.e. a high capacity to make

more blockchain TPS (transactions per second), is whether the predefined number of consensus

participants (i.e. validators, block producers) exists. There is no predefined set in PoW-based

consensus (e.g. Bitcoin, Ethereum) where any node able to competitively find the solution of the

hash puzzle for the new block can be a block producer. Neither does the FBA (Federated

Byzantine Agreement) consensus with the ‘quorum-slice’ concept used in Stellar Consensus

Protocol , in which the quorum set participating in the consensus could be arbitrarily large as 9

the quorum-slices of the consensus nodes expand. In that situation, high TPS is not guaranteed

in the Stellar network. In practical setup, a blockchain with FBA consensus is managed by a

small, fixed set of authority nodes constituting the consensus quorum to achieve high TPS, but

that in fact results in an effectively permissioned blockchain, in which new users have no direct

incentive to run a blockchain node due to lack of a guaranteed block reward and low probability

of inclusion in the top tier quorum to participate in blockchain consensus. Whereas in the

BFT-based consensus algorithms like PBFT (Practical Byzantine Fault Tolerance), Tendermint 10

, and DPoS (Delegated PoS) of Steem/BitShares/EOS, there is a predefined number of elected 11 12

consensus participants (i.e. validators or block producers) which leads to high TPS because the

elected set of nodes can cooperatively make fast consensus for the new block creation with the

agreement that the new blocks made through the consensus of the elected nodes are

authoritative. The YOSEMITE Blockchain adopts the optimized modification of BFT-based

consensus algorithms to achieve short block time (inspired from DPoS of

Steem/BitShares/EOS) and fast 100% block finality (inspired from Tendermint), with the

unique block-producer-election mechanism using the Transaction-as-a-Vote and

Proof-of-Transaction.

블록체인 확장성(많은 수의 초당 처리 가능 트랜잭션 용량(TPS)을 실현하는 것)을 이루기 위한 핵심적인 설계 요소는

밸리데이터 또는 블록 생성자와 같은 합의과정에 참여하는 참여 노드의 수를 제한하는 것이다. 비트코인, 이더리움과

같은 PoW기반 블록체인 합의 방식에는 미리 정해진 수의 채굴자 노드들이 있는 것이 아니라, 어떠한 노드라도 해시

퍼즐을 빨리 찾을 수 있는 컴퓨팅 파워가 있으면 언제든지 채굴 노드가 되어 새로운 블록을 생성할 수 있다. 매 블록

생성시마다 모든 노드들에게 블록 생성자가 될 가능성이 주어지므로 더욱 탈중앙화된 방식이라 할 수 있지만 모든

노드들이 경쟁적으로 합의를 이루어야 하므로 새로운 블록에 대한 합의가 느려지게 되고, PoW 기반 합의에서는

언제든지 최근 블록들을 배제하고 새로운 블록체인 포크(fork)가 발생할수있어서블록에대한 100% 확정성을보장할

수 없게 된다. ‘quorum-slice’ 개념이 적용된 Stellar 컨센서스 프로토콜의 FBA (Federated Byzantine Agreement)

컨센서스 방식에서도 합의 참여 노드들의 집합의 크기가 미리 정해져 있지 않다. 각 블록체인 노드들이신뢰하는다른

노드들을 지정하는 ‘quorum-slice’의 교집합들이 점점 커져감에 따라 합의 참여 노드 집합(quorum set)의 크기는

9 D. MAZIERES, Stellar Consensus Protocol - https://www.stellar.org/papers/stellar-consensus-protocol.pdf , 2015 10 M. Castro, B. Liskov - Practical Byzantine Fault Tolerance and Proactive Recovery - http://www.pmg.csail.mit.edu/papers/bft-tocs.pdf , 2002 11 Jae Kwon - Tendermint : Consensus without Mining - https://tendermint.com/static/docs/tendermint.pdf , 2014 12 D. Larimer - BitShares - Delegated Proof-of-Stake Consensus - https://bitshares.org/technology/delegated-proof-of-stake-consensus , 2014

29

Page 31: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

임의적으로 커질 수 있으며, 그러한 상황에서는 합의 참여 노드 집합의 많은 수의 노드들이 메시지들을 주고 받고

새로운 블록에 대한 합의를 이루어야하므로 Stellar 블록체인의 높은 TPS를보장하기는어렵게된다. 그래서현실적인

FBA 기반 블록체인의 구성에서는 높은 TPS를 이루기 위해 적은 수의 거의 교체되지 않는 신뢰 노드들 사이에만 서로

quorum slice가 설정되어 실질적으로 작은 크기의 폐쇄된 합의 참여 노드 집합이구성되어새로운블록에대한합의를

빠르게 이루어 나갈 수 있게 된다. 이는 실질적으로 새로운 노드들의 블록체인 합의 과정 참여를 제한하는

퍼미션드(permissioned) 블록체인이 구성되어 운영되는 것으로 볼 수 있다. FBA 합의 방식에서는 합의 노드 집합 내

노드들의 투표를통해새로운블록을합의해나가기때문에새로운블록을생성한노드를특정한노드하나로지정할수

없으므로 블록생성시블록보상이존재하지않는다. 따라서새로운노드들이블록합의과정에참여하게될인센티브가

사실상 없으며, 폐쇄적으로 구성된 탑 티어 합의 집합의 노드들이 새로운 노드들을 합의 집합으로 포함해줄가능성도

매우 낮다. 반면에, PBFT (Practical Byzantine Fault Tolerance), Tendermint, Steem/BitShares/EOS에 구현된 DPoS

(Delegated PoS) 등의 BFT 기반컨센서스알고리즘들에서는밸리데이터, 블록생성자와같은블록체인내에서선출되어

합의 프토로콜 참여 노드들의 수가 블록체인 내에 미리 정해져 있다. 블록체인에서 정한 조건에 의해 선출되는 적은

수의노드들이서로경쟁없이협력하여새로운블록을순서대로생성해나가므로높은 TPS 성능을구현할수있게된다.

선출된 노드들 간에 합의를 이루어 생성한 블록은 변경되지 않고 확정적임을 가정할 수 있다. YOSEMITE 블록체인은

Transaction-as-a-Vote와 Proof-of-Transaction을 통한 독창적인 블록생성자 선출 메커니즘과 함께 짧은 블록

타임(Steem/BitShares/EOS의 DPoS로 부터 차용)과 빠른 100% 블록 확정성(Tendermint로 부터 차용)을 구현하기

위해 최적화된 변형된 형태의 BFT 기반 합의 알고리즘을 도입하였다. (5.3.5)

Block producers participating in the consensus protocol to generate new blocks in the

YOSEMITE Blockchain are elected from the PoT Node Pool and the Seed Trust Node Pool. Let

N represent the number of the block producers. The top p nodes sorted by the earned

transaction vote amount are selected from the PoT Node Pool as block producers in each round.

The remaining N-p nodes are pseudo-randomly (hard to predict but deterministically selected

by the protocol) selected from the Seed Trust Node Pool. The numbers N and p are fixed values

in the YOSEMITE Blockchain. The number p is chosen to be more than majority to give weight

to the PoT nodes. Among the N nodes periodically re-elected from the two pool, the BFT-based

consensus protocol is executed to generate new blocks.

YOSEMITE 블록체인에서 새로운 블록들을 생성하기 위한 컨센서스 프로토콜에 참여하는 블록생성자들은 PoT Node

Pool과 Seed Trust Node Pool로 부터 선출된다. 선출된 블록생성자들의 총 수는 N이라고하자. PoT Node Pool에있는

노드들중트랜잭션투표를많이얻은상위 p개의노드들이블록생성자를선출하는라운드마다선택되어블록생성자의

권한을 얻게 된다. 남은 N-p개의 노드은 Seed Trust Node Pool로부터 의사랜덤(pseudo-randomly, 예측하기는

어렵지만 프로토콜에 의해 결정되고 노든 노드에 의해 재현이 가능한, 예를들면 블록의 해시를 랜덤넘버를 만드는데

사용함)한 방식으로 블록생성자로 선택된다. 숫자 N과 p는 YOSEMITE 블록체인 상의 고정된 값이다. p 값은 PoT

노드들에 가중치를 주기위해 일반적으로 과반수 이상으로 설정된다. 주기적으로 두개의 노드 풀로 부터 재 선출되는

N개의 노드들 간에 BFT 기반 합의 프로토콜이 실행되어 새로운 블록들을 생성하게 된다.

For each new block, a portion of the total transaction fee amount collected from the new block is

given as a block reward to each block producer who creates each block. Although the accounts

receiving transaction votes are not necessarily forced to run blockchain core nodes, i.e. run a

physical server, the block reward allotted to elected block producers strongly incentivizes the

30

Page 32: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

PoT nodes to run core nodes and participate in blockchain consensus. If a PoT Node account

elected as a block producer by receiving a significant amount of transaction votes does not run

the physical core node server or an elected core node malfunctions or acts maliciously as a

Byzantine node, the account is penalized by slashing the already earned transaction votes,

forfeiting the account’s accumulated portion of the transaction fee profit pool, and depriving of

the block producer position. If the number of the elected block producers is N = 3f + 1, up to f

Byzantine nodes are tolerable in BFT-based consensus. Compared to the other public

blockchains with BFT-based consensus, the probability that a node elected as a block producer

in the YOSEMITE Blockchain is a Byzantine node can be regarded as very low because every

elected block producer is either a PoT Node making profit by doing the blockchain-based service

business seriously or a Seed Trust Node trusted by the ecosystem.

새로 생성되는 매 블록마다 해당 블록에서 징수된 총 트랜잭션 수수료 수익 중 일부가 해당 블록을 생성한

블록생성자에게 블록 생성 보상으로 지급된다. 트랜잭션 투표를 많이받은 PoT 노드들이반드시블록체인코어노드를

운영하도록 (실제 물리적인 서버를 운영) 블록체인 상에서 강제되어질 수 는 없지만, 블록생성자들에게주어지는블록

보상은 PoT 노드들이 실제 물리적인 코어 노드 서버들을 블록체인 네트워크 상에운영하여블록체인합의프로세스에

참여하도록 하는 강한 인센티브가 된다. 만약상당한양의트랜잭션투표를받아블록생성자로선출된 PoT 노드가실제

물리적인 블록체인 코어 노드 서버를 네트워크 상에 운영지않거나또는서버장애등오동작을일으키거나악의적으로

블록체인을 공격하는 노드로 동작하는 것이 발견되어 Byzantine 노드로 판명이 되면 해당 블록생성자 계정에 대해,

이미 얻은 트랜잭션 투표량을 삭감, 트랜잭션수수료수익풀에쌓여있는수익지분을몰수, 블록생성자지위박탈등의

처벌이 블록체인 상에서 이루어 진다. 선출된 블록생성자의 총 수가 N = 3f + 1 일 때, BFT 기반의 합의 프로토콜에서

최대 f 개 까지의 Byzantine 노드만 허용되므로, 선출된 블록생성자들 중에 f개를 넘는 Byzantine 노드들이 존재하지

않는 것이 기본적인 가정이다. YOSEMITE 블록체인에서 선출된 블록생성자들은 블록체인에 기반하여 서비스를

구현하여 많은 양의 트랜잭션들을 일으켜 수익을 내는 비즈니스를 하고 있는 PoT Node이거나 블록체인 생태계의

신뢰를 받는 신뢰기관들이 운영하는 Seed Trust Node이기 때문에, 다른 BFT 기반 컨센서스로 구현된 퍼블릭

블록체인들과 비교하여 YOSEMITE 블록체인의 블록생성자 노드들이 Byzantine 노드일 확률은 매우 낮다고 볼 수 있다.

31

Page 33: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

5.3.4 Transaction Fee Profit Distribution 트랜잭션 수수료 수익 배분

Figure 5.4 - Transaction fee profit distribution

그림 5.4 - 트랜잭션 수수료 수익 배분

For each new block, the total transaction fee amount collected from the transactions included in

the block is distributed to the block producer, PoT Nodes, and Seed Trust Nodes. B% of the

collected transaction fees is immediately allocated to the block producer as a block reward. The

remaining (100-B)% is saved to the Transaction Fee Profit Pool with P% allocated to the PoT

Node Pool and (100-B-P)% allocated to the Seed Trust Node Pool. Each account listed in PoT

Node Pool can regularly claim its own profit in proportion to its transaction vote amount at the

time of transaction fee collections. In the same way, each account in the Seed Trust Node Pool

can claim its own profit in proportion to the dividend ratio designated by the Top Trust Account.

The percentages B, P are fixed in the blockchain at each protocol upgrade, and P should be over

the majority portion to give weight to the PoT nodes.

매 새로운 블록 마다 블록 안에 포함된 블록체인 트랜잭션들로 부터 징수된 트랜잭션 수수료 총 수익은 해당 블록의

블록생성자, PoT Node들, Seed Trust Node들에게 배분된다. 하나의 블록에서 징수된 트랜잭션 수수료 총량의 B%는

블록생성자에게 즉시 블록 보상으로 주어진다. 나머지 (100-B)%는 트랜잭션 수수료 풀에 쌓이게 되는데, P%는 PoT

Node Pool에 (100-B-P)%는 Seed Trust Node Pool에 할당된다. PoT Node Pool에 등록된 각 블록체인 계정들은

트랜잭션 수수료들이 수집되는 시점들에 각 계정들의 트랜잭션 투표 수집 양에 비례하여 주기적으로 각 계정 자신의

수익 지분을 블록체인에 청구할 수 있다. 같은 방식으로 Seed Trust Node Pool에 등록되어있는각블록체인계정들도

Top Trust Account에 의해 지정된각계정의수익지분비율만큼주기적으로각계정자신의수수료수익을블록체인에

청구할 수 있다. B와 P 비율 값은 블록체인 상에 고정된 값이며 블록체인 프로토콜 업그레이드(하드포크)시변경될수

있다. 비율 P는 일반적으로 PoT 노드들에게 가중치를 부여하기 위해 상대적으로 높은 비율의 값으로 설정된다.

32

Page 34: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

5.3.5 YOSEMITE BFT Consensus with Short Block Time and Fast Block Finality 짧은 블록 타임과 빠른 블록 확정성을 구현하는 YOSEMITE BFT 컨센서스

The high speed and high transaction throughput processing capacity of a blockchain is a key

factor for the next generation scalable blockchains. The short block time (time interval between

consecutive block creations) and the fast block finality (time required for the new block to be

immutable, guaranteeing no fork up to the block) are the crucial properties of a scalable

blockchain.

빠른 트랜잭션 처리 속도와 많은 양의 트랜잭션 처리량은 차세대 고성능 블록체인 구현의 핵심 요소이다. 짧은 블록

타임(Short Block Time, 연속되는 블록들 간의 생성 시간 차)과 빠른 블록 확정성(Fast Block Finality, 새로운 블록이

불가역적으로 확정되기 까지 걸리는 시간, 확정성을 얻은 블록과 그와 연결된 이전의 모든 블록들은 이후에

포크(fork)가 일어나지 않을 것이 보장됨)은 확장성있는 고성능 블록체인에서 반드시 구현되어야 한다.

Figure 5.5 - BFT consensus protocol among the elected block producers

그림 5.5 - 선출된 블록생성자들 간의 BFT 컨센서스 프로토콜

33

Page 35: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

The short block time can be achieved by electing a fixed number of block producers to cooperate

(not compete) to produce blocks, letting each block producer make a new block in its

pre-allocated time slot and immediately progressing to the next block production turn without

waiting to gather votes for the validity of the new block from more than ⅔ of the elected block

producers. We call this mechanism “Optimistic-Block-Production”. The last broadcasted block,

created in the previous time slot allocated to the last block producer, is optimistically trusted as

a valid block if the current block producer has verified the validity of the block, regardless of the

final confirmation from a ⅔ majority of the elected block producers. However, if the next block

producers do not agree about the validity of a block, the newly created block will contain the

block-hash pointer of the last valid block, skipping over any invalid blocks. In the example of

Figure 5.5, The block made by block producer B which is a Byzantine node (malicious attacker or

having network problems) is skipped by the other block producers. There can be temporal forks

of the blockchain, but eventually the longest fork will survive as the canonical chain. A block

producer should not sign more than one temporary fork. If a single block producer’s signatures

are detected on multiple forks of the chain, the Byzantine block producer will be penalized.

Remember up to f Byzantine nodes are tolerable when the number of the block producers is N =

3f + 1. The Tendermint consensus algorithm and its variants can be regarded as

Pessimistic-Block-Production style which lead to relatively long block time because

block-producing nodes must wait to receive voting messages from the majority of consensus

participants for the confirmation of the block validity to continue to the next block production

stage.

짧은 블록 타임은 블록체인 상에서 선출된 고정된 수의블록생성자들이경쟁하지않고블록생성자간신뢰를전제하고

서로 협력하여 새로운 블록들을 생성하게 되므로 가능해진다. 각블록생성자들은자신에게할당된타임슬롯에자신이

수집한 트랜잭션들을 묶어서 새로운 블록을 생성하고 블록체인 네트워크를 통해 생성한 블록 정보를 모든

블록생성자들에게 방송한다. 다른 블록생성자들은 방송되어진 새로운 블록 정보에 대해서 유효성을 검증하고 새로운

블록의 유효성에 대한 자신의 투표 정보를 다른 모든블록생성자들에게다시방송하게되는데, 모든블록생성자들중 ⅔

이상의 블록유효성검증투표가해당블록에대해수집되지않은시점이라도, 다음블록을생성하도록스케줄링된다음

턴의 블록생성자는 자신의 타임슬롯에 즉시 자신이 받은 가장 최근의 블록을 기준으로 다음 새로운 블록 생성 턴을

진행하게 된다. 이전 타임 슬롯에 할당된 블록생성자가 생성하여자신에게전달되어진최신의블록은다음블록생성자

노드가 해당 블록의 유효성을 검증했다면 아직 전체 블록생성자의 ⅔ 이상의 유효성검증투표를수집된확정된블록이

아니라고 할지라도 우선 낙관적으로 (Optimistic) 그 블록이결국 100% 확정성을얻게될것이라는가정을하고곧바로

다음 블록 생성 단계로 넘어가게 되므로 “Optimistic-Block-Production” 방식 이라고 할 수 있다. 하지만, 만약 다음

블록생성자들이 이전 블록의 유효성에 대해 인정하지 않는다면 블록생성자들에 의해 새로 생성되는 블록은 잘못된

이전 블록(들)을 건너 뛰고 가장 최신의 유효성이인정된블록의해시포인터를포함하게될것이다. 그림 5.5의예에서,

Byzantine 노드(악의적인 공격자 노드이거나 네트워크 문제 등으로 B가 생성한 블록이 다른 블록생성자들에게

전달되지 않는 등의 경우)인 블록생성자 B에의해만들어진블록은다른블록생성자들에의해건너뛰어생략되어지고

정본(canonical)에 속하는 체인에 포함되지 않게 된다. 블록체인에 일시적인 포크(fork)들이 발생할 수 있으나, 결국

가장 긴 포크가 정본으로 인정된 체인으로 살아 남게 된다. 한 블록생성자는 동시에 두개 이상의 임시적인 포크에

서명을 해서는 안된다. 만약 한 블록생성자의 서명이 여러개의 임시 포크들에서 발견되어 진다면 Byzantine 노드로

간주되어 그 블록생성자는 블록체인 상에서경제적불이익을받도록처벌을당하게될것이다. 전체블록생성자의수가

N = 3f + 1 인 경우 최대 f개 까지의 Byzantine 노드들 만이 허용된다. Tendermint 컨센서스 알고리즘과 그 변형

알고리즘들은 현재 블록의 유효성에 대한 투표를 합의 참여 노드들 전체의 과반 이상으로 부터 수집하여 블록의

34

Page 36: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

유효성을 확정한 후에서야다음블록생성단계로넘어가도록설계되어있으므로 “Pessimistic -Block-Production” 블록

생성 방식이라고 부를 수있다. Pessimistic-Block-Production 방식은생성된블록이확정성을얻는시간을빠르게할수

있지만 블록의 유효성에 대한 투표를수집하여블록을확정한후에다음블록생성으로넘어가므로상대적으로긴블록

타임을 가지게 된다.

Fast block finality can be achieved through explicit block validity voting among elected block

producers. Without block validity voting, block finality can still be achieved, though the time

delay of block finality is somewhat long. The block finality of a block means that the block and

all connected previous blocks are confirmed as immutable and only the next blocks after the

finalized blocks have non-zero probability that they will belong to a temporary fork and

eventually be excluded from the canonical chain. The block-hash pointer to the previous block

included in the new block data is effectively regarded as a vote of the block producer for the

validity of all the previous blocks. If the block-producer-majority number of blocks are attached

after a block in a blockchain, it means that the block has received the majority number of votes

for block validity from the block producers. Let the block number of a block be k and the number

of the elected block producers be N = 3f + 1 where up to f Byzantines are tolerant. When the

block with block number k+(2f+1)-1 is broadcasted, the block k will earn block finality status

supported by a ⅔ majority of the block producers. Fast block finality is crucial for

inter-blockchain communication because only the transactions in finalized blocks can be

referenced in the external blockchains or the internal sibling chains of a blockchain (for the

multi-chain architecture). The minimum block finality time without explicit voting is 2f*t where

t is block time. If N=25, t=3 second then block finality time is 48 seconds, which is inappropriate

for smooth inter-blockchain communication. The YOSEMITE Blockchain accelerates the block

finality time through explicit block validity voting, independently of the block production

progress, with the trade-off of higher network communication cost. When a block producer

receives a newly broadcasted block from another block producer, the new block is validated and

a validity vote for the block is broadcasted to all block producers. When a block producer creates

a new block in its time slot, if the producer has gathered enough block validity votes for a

previous block from the ⅔ majority of the block producers, the block finality of the previous

block is declared in the new block. A further optimization for block validity voting is also

designed in the protocol to accelerate the voting message propagation. The provable summary

data of the block validity votes received from other block producers are also included in the new

block message and the validity vote message being broadcasted. The example in Figure 5.5

shows that the block finality with the block validity voting is faster than the one without explicit

voting. For larger numbers of block producers N, the resulting time difference is far more. Block

validity voting enables block finality time near the block time (usually 1 or 2 block time).

빠른 블록확정성은블록생성메시지의전파와는별도로, 선출된블록생성자들간에명시적인블록유효성검증투표를

전파하도록 하는 방식으로 구현할 수 있다. 이러한 별도의 블록 유효성 검증 투표 프로세스를 적용하지않더라도블록

생성 메시지 만으로도 각 블록의블록확정성이결국에는결정되지만블록확정성이결정되는시간이다소오래걸리게

된다. 각 블록의 블록 확정성이라는 것은 해당 블록과 그와 연결된 이전의모든블록들이향후블록체인상에서변경이

35

Page 37: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

되지 않을 것을 보장하는 것을 의미하는데, 한 블록이 블록생성자들 ⅔ 과반이상의 암호화 서명을 얻게 되면 블록은

확정된다. 가장 최근에 확정성을 얻은 블록 이후에 연결된 블록들 만이 임시적인 블록체인 포크에 속하여 결국 정본

체인에서 제외될 수 있는 가능성을 가지게 된다. 바로 직전의 블록의 해쉬를현재블록에포함하는블록해시포인터는

사실상 포인터가 가리키는 이전 블록과그와연결된모든이전블록들에대한현재블록의블록생성자의암호화서명을

한 블록 유효성 검증 투표라고 볼 수 있다. 따라서 한 블록 이후에 블록생성자 전체의 ⅔ 과반수 이상의 숫자의 새로운

블록이 블록체인 상에서 생성되어 연결되었다면, 그것은 해당 블록이 ⅔ 과반수 이상의 블록생성자들로 부터 암호화

서명된 블록 유효성 투표를 얻게 되어 블록이 확정성을 얻게 되는 것을 의미한다. 특정 블록의블록번호를 k라고하고

f개 까지의 Byzantine 노드를 허용할 수 있는 선출된 블록생성자들의 총 수를 N = 3f + 1 이라고 하자. 블록 번호가

k+(2f+1)-1 인 블록이 블록생성자들에게 방송되어 전달되었을 때, 블록번호가 k 인 블록은 블록생성자 전체 ⅔ 과반수

이상의 지지를 받은 블록 확정성 상태를 얻게 된다. 빠른 블록 확정성은 인터 블록체인 통신 (inter-blockchain

communication) 구현에 핵심적인 요소이다. 향후 블록체인 포크로 인해 변경될 가능성이 없는 확정성을 얻은 블록에

있는 트랜잭션만이 다른 외부의 블록체인들 또는 한 블록체인 내의 다른 형제 블록체인들로부터 참조가 될 수 있기

때문이다. 별도의 명시적 블록 유효성 검증 투표과정이 없는 경우의 최소 블록 확정성 시간은 2f*t 이다. (t : 블록타임)

예를들어 N=25, t=3초 라고 하면 블록 확정성을 얻기위해 걸리는 시간은 48초이며 이것은 원활한 인터 블록체인

통신을 하기 위해서는 다소 긴 시간이다. YOSEMITE 블록체인은 블록 확정성을 얻는 시간을 빠르게 가속하기 위해,

블록 생성자들 간의 네트워트 통신량이 더 증가하는 것이 트레이드 오프(trade-off)로 작용하지만, 블록생성메시지를

블록생성자들간에 전파하여 블록 생성을 진행 프로세스와 독립적으로 별도의 명시적 블록 유효성 검증 투표

프로세스를 블록생성자들 간에 진행하도록 한다. 다른 블록생성자로부터 만들어진 블록 생성 메시지가 네트워크에

방송되어 각 블록생성자들이 전달받게 되면, 각블록생성자들은전달받은블록의유효성을각각검증하고유효성검증

투표 메시지를 다른 모든 블록생성자들에게 방송하여 전달한다. 블록생성자가 자신에게 할당된 타임 슬롯에 새로운

블록을 생성하는 시점에, 현재 턴의 블록생성자 자신이 아직 블록 확정성을 얻지 못한 이전 블록에 대해, 해당 블록을

생성한 블록생성자와 자신을 포함한 전체 블록생성자 중 ⅔ 과반수 이상의 각 블록생성자들로부터 암호화 서명된블록

유효성 검증 투표를 수집된 것이 확인되면 새로 생성하는 블록 안에 새롭게 블록확정성을 얻게 된블록에대한선언과

증거 데이터와함께포함하여다른블록생성자들에게방송한다. 블록유효성검증투표메시지전달을가속화할수있는

추가적인 최적화도프로토콜내에설계되어있다. 블록생성메시지와블록유효성검증투표메시지를블록생성자들이

만들 때 자신의 블록 유효성 검증 투표에 대한 암호화 서명뿐만 아니라 아직 블록 확정성 상태가 아닌 블록들에 대해

자신이 수집한 다른 블록생성자들의 블록 유효성 검증 투표 정보와 암호화 서명들도 같이 포함하여, 네트워크 속도가

가장 빠른 패스를 통해 블록 유효성 검증 투표 메시지들이 빠르게 수집되도록 한다. 그림 5.5의 예에서 별도의 명시적

블록 유효성검증투표를진행하는것이블록생성메시지만전달하는경우에비해블록들이더욱빠르게확정성을얻게

되는 것을 볼 수 있다. 블록 생성자의 총 수(N)가 더욱 커짐에 따라 블록 유효성 검증 투표를 통한 블록 확정성을 얻는

시간이 상대적으로 훨씬 더 빠르게 진행된다. 이러한 블록 유효성 검증 투표 방식은대부분의경우 1~2 블록타임내에

블록 확정성을 보장하게 된다.

36

Page 38: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

6 Blockchain Accounts 블록체인 계정

Figure 6.1 - Blockchain account scheme of YOSEMITE Blockchain

그림 6.1 - YOSEMITE 블록체인의 블록체인 계정 구조

6.1 Named-Multi-Sig / Single-Key Blockchain Accounts 네임드 멀티시그너쳐 블록체인 계정과 단일 키 블록체인 계정

The YOSEMITE Blockchain natively supports named multi-sig blockchain accounts. A 13

blockchain account used in the YOSEMITE Blockchain consists of a ROOT account and LIVE

account pair. Every usual blockchain transaction includes the crypto-signature of the LIVE

account that should be validated by the block producers. The LIVE account can be freezed or

updated on the blockchain only by the ROOT account when the LIVE account is found to be

compromised. The ROOT and LIVE account themselves are multi-sig accounts, each having

multiple weighted keys and threshold value. To make a valid transaction message signed by a

multi-sig account, the transaction message needs to include valid signatures from the multi-sig

keys with the sum of key weights over the threshold value. In the example of Figure 6.1, for the

ROOT account of “User-Account-A” with threshold value of 2, a signature combination of

(KEY-0, Key-A) [weight sum : 3] or (KEY-0, Key-B) [weight sum : 2], or a single signature of

Key-A [weight : 2] is required to make a valid transaction signature. Recursively, to get a valid

13 Multi-signature - https://en.wikipedia.org/wiki/Multisignature

37

Page 39: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

signature of Key-A referencing to the “Trusted-Entity-A” blockchain account, the valid

multi-signatures of enough weighted keys from the “LIVE” account of “Trusted-Entity-A” must be

collected. A blockchain account can have a human-readable alphanumeric identifier (name).

The public key address of the ROOT account’s default key (KEY-0) can be used as a account

identifier alternatively. A Single-Key account with only one public/private key pair can also be

used as an independent blockchain account in the YOSEMITE Blockchain, using the same key

for both the ROOT and LIVE account without the multi-sig scheme. A Single-Key account can be

created implicitly in the client side offline from the blockchain. Whereas, a Named Multi-Sig

account must be registered on the blockchain, with the selected account name, the weighted

multi-sig keys and the threshold value, by a explicit blockchain account creation transaction

which is charged some transaction fee in dFIAT to prevent account creation spamming attacks.

YOSEMITE 블록체인은 계정 이름을 지정할 수 있는 멀티시그너쳐 블록체인 계정(Named-Multi-Sig Account)을

블록체인 코어 레벨에서 자체적으로 지원한다. YOSEMITE 블록체인에서 사용되는 하나의 블록체인 계정은 ROOT

계정과 LIVE 계정 쌍으로 구성된다. 블록체인 사용자들이 블록체인을 사용하면서 생성하는 일반적인 블록체인

트랜잭션 들은 LIVE 계정의 비밀키로 생성되는 암호화 서명을 포함해야 한다. 블록생성자들이 트랜잭션 메시지를

검증할 때, 사용자 계정의 현재 LIVE 계정으로 트랜잭션이 암호화 서명되어 있는 것이 확인되면 해당 트랜잭션을

유효한 트랜잭션으로 처리한다. 하나의 블록체인 계정의 LIVE 계정은 쌍을 이루고 있는 ROOT 계정에 의해서만 계정

사용이 중지되거나 다른 공개키/비밀키 쌍을 가지는 계정으로 변경될 수 있다. ROOT 계정과 LIVE 계정은 각 계정

자체가 여러 개의 가중치가 부여된 키(key, 공개키/비밀키 쌍)들과 서명 임계치 값을 가지는 멀티시그너처 계정이다.

멀티시그너처 계정에 의해 암호화 서명되는 유효한 트랜잭션 메시지를 만들기 위해서는, 멀티시그너처 계정 내의

키들의 비밀키로 생성한 트랜잭션 메시지에대한암호화서명목록을포함해야하며암호화서명을한키들의가중치의

합이 해당 멀티시그너처 계정에 지정된 서명 임계치 값과 같거나 커야 한다. 그림 6.1의 예에서, “User-Account-A”

계정의 ROOT 계정의 서명 임계치 값은 2이므로, ROOT 계정이 서명하는 유효한 트랜잭션 메시지를만들기위해서는

(KEY-0, Key-A) [가중치 합 : 3] 의 암호화 서명 조합이나 (KEY-0, Key-B) [가중치 합 : 2] 의 암호화 서명 조합, 또는

Key-A [가중치 : 2] 하나의 암호화 서명이 필요하다. “Trusted-Entity-A” 블록체인 계정에 대한 참조로 설정된이 ROOT

멀티시그너처 계정의 하나의 키인 Key-A 의 유효한 암호화 서명을 얻기 위해서는, 같은 방식으로 “Trusted-Entity-A”

블록체인 계정의 “LIVE” 계정의 서명 임계치 값 이상의 가중치 키의 합을 이루는 여러개의 암호화 서명 목록이비밀키

소지자들로 부터 수집되어야 한다. YOSEMITE 블록체인 내의 하나의 블록체인 계정은 사람이 식별할 수 있는

알파벳/숫자로 이루어진 식별자 이름을 가질 수 있다. 별도의 계정 이름을 블록체인 상에서 지정하지 않고 ROOT

계정의 기본 키 (KEY-0) 의 주소를 대신 계정 식별자로 사용할 수도 있다. 멀티시그너처 계정을 사용하지않고하나의

공개키/비공개키 쌍으로만 이루어진 단일키 계정(Single-Key Account)도 YOSEMITE 블록체인에서 하나의 독립된

계정으로 사용될 수 있다. 단일키 계정의 ROOT 계정과 LIVE 계정은 멀티시그너처 구성을 하지 않은 동일한 하나의

키로 설정된 것으로 볼 수 있다. 단일키 계정은 블록체인과 연결되지 않은 상태로 클라이언트 측에서사용자가임의로

생성하여 사용할 수 있으며, 단일키의 주소가 처음으로 블록체인 상에 노출될 때 블록체인은 신규 계정을 인식할 수

있다. 반면에, 네임드 멀티시그너처 (Named-Multi-Sig) 계정은사용자가선택한이름과사용자가생성하여비밀키들을

보관하고 있는 가중치가 부여된 여러 개의 키 목록과 서명 임계치 값 등이 명시적인 블록체인 계정 생성 트랜잭션을

통해 블록체인 상에 등록되어야 한다. 이러한 블록체인 계정 생성 트랜잭션은 계정 생성 스팸 공격을 막기위해 dFIAT

토큰으로 트랜잭션 수수료가 부과된다.

38

Page 40: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

6.2 Trust Network for Account Recovery 계정 복구를 위한 신뢰 네트워크

Because the LIVE account can be replaced by the ROOT account, when the blockchain keys are

lost or compromised by malicious attackers, the LIVE account used to make blockchain

transactions in normal situations can be recovered. Even in the case that the default key (KEY-0)

of the ROOT account is lost, the LIVE account can be recovered with the help of a single or

multiple trusted entities which the account owner registered as key recovery partners in his/her

multi-sig setup. The trusted key recovery partner should require the KYC/AML authentication 14

process to be done by the blockchain user. Recursively, the blockchain account of the trusted key

recovery partner also can be recovered by its own chosen trusted partners, and so on. These

links form the Trust Network of Blockchain Account Recovery in the YOSEMITE Blockchain.

Figure 6.1 shows an example of a Trust Network built by the “User-Account-A”, “Trust-Entity-A”,

“Trust-Entity-B” and a Single-Key account. The Trust Network makes the blockchain ecosystem

solid and stable, highly mitigating the vulnerability of blockchain key loss.

YOSEMITE 블록체인의 LIVE 계정은 연결된 ROOT 계정에 의해 교체될 수 있으므로, 비밀키가 분실되거나 악의적인

공격자에 의해 키가 탈취된 경우, 일상적인 블록체인 트랜잭션 생성을 위해 사용되고 있던 LIVE 계정은 ROOT 계정에

의해 복구 될 수 있다. ROOT 계정의 기본키 (KEY-0)를 잃어버린 경우라고 할지라도, LIVE 계정은 사용자가 ROOT 계정의 멀티시그너처설정에등록해놓은하나또는여러개의키복구파트너계정들에의해서다시복구될수있다. 각

사용자들이 신뢰하고 있는 키 복구 파트너들은 블록체인 사용자들의 계정을 복구해주기 위해 사전에 블록체인 계정

소유자들이 신뢰기관인 자신들을 통해 KYC/AML 신원 인증 프로세스를 거치도록 요구해야 하며, 신원인증된 계정이

키를 분실한경우다시신원인증을할수있는경우에만블록체인계정을복구해줄수있다. 이러한키복구파트너들의

블록체인 계정 역시, 각 키 복구 파트너 자신들이 선택한 다른 신뢰 파트너 계정들을 자신의 키 복구 파트너 계정으로

블록체인 상에 등록하여, 키 복구 파트너의 키가 해킹당한경우에도연결되는키복구연결관계들을통해계정을복구

할 수 있게 된다. 이러한 키 복구 연결 관계들이 모여서 YOSEMITE 블록체인의 계정 복구를 가능하게 하는 신뢰

네트워크 (Trust Network)를 구성하게 된다. 그림 6.1은 “User-Account-A” 계정, “Trust-Entity-A” 계정, “Trust-Entity-B”

계정과 하나의 단일키 계정이 신뢰 네트워크를 이루고 있는 예를 보여준다. 이러한 블록체인 상의 신뢰 네트워크는

블록체인 키 유실로 인한 블록체인 시스템의 취약성을 크게완화시켜안전하고견고한블록체인생태계를구축해나갈

수 있는 토대를 제공한다.

6.3 KYC/AML Compliance and Account Anonymity KYC/AML 규제 준수와 계정 익명성

Tokens issued by Depositories in the YOSEMITE Blockchain can be configured to be held,

transferred, and traded only by blockchain accounts that have already gone through the

KYC/AML process provided by trusted entities. Information about whether a blockchain

account has undergone the KYC/AML process and through what organization is published on

14 Know Your Customer / Anti Money Laundering - https://en.wikipedia.org/wiki/Know_your_customer

39

Page 41: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

the YOSEMITE Blockchain transparently, but the personal information gathered from users is

privately processed and maintained by the trusted entities. The integrated KYC/AML support by

the YOSEMITE Blockchain will be a great help to regulatory compliance issues faced by existing

blockchain systems.

YOSEMITE 블록체인 상에서 Depository들에 의해 발행되는 각각의 토큰들은 신뢰기관들을통해제공되는 KYC/AML

신원인증 프로세스를 거친 블록체인 계정들 만이 소유, 다른 계정으로의 전송, 블록체인 내 오픈마켓을 통한 토큰

거래를 할 수 있도록 선택적으로 설정될 수 있다. 각 블록체인 계정이 KYC/AML 신원인증 프로세스를 통과 했는지

여부와 어떤 신뢰기관을 통해서 신원인증을 하였는 지에 관한 정보는 블록체인 상에 투명하게 공개되지만, 신원인증

프로세스를 통해 신뢰기관들이 수집한 개인정보들은 신뢰기관들이 내부적으로만 비공개로 저장하고 관리하며

블록체인 상에 공개되지 않는다. 이러한 KYC/AML 규제 준수를 위한지원기능들이블록체인자체에기본적으로통합

구현되어 있는 YOSEMITE 블록체인은 퍼블릭 블록체인에 기반한 시스템들이 겪고 있는 금융 규제 준수 이슈들을

해결하는데 큰 도움이 될 것이다.

Since any number of blockchain accounts can be created anonymously and the personal identity

authentication information gathered through the KYC/AML process are privately handled by the

trusted entities, basic account anonymity can be achieved, while the transactions generated by

blockchain accounts are transparent in the blockchain. However, once the owner of a blockchain

account is known (e.g. someone receives tokens from his/her friend), the account anonymity is

compromised. To maintain account anonymity, trusted entities like financial companies can

build their own systems to manage blockchain accounts on behalf of their customers. A financial

company would provide blockchain account mapping services operated under its trusted public

internet domain, e.g. a web service operated under the url https://fintechX.com/YSMT, which

maps a company-specific user account address such as user-account-1234#fintechX.com to an

anonymous blockchain account managed by the financial company. It is possible for a company

to manage only one YOSEMITE Blockchain account serving all its customers using the memo

field in blockchain transaction message to distinguish its customers, with its private customer

ledger running on its backend system. Alternatively, a company can manage multitudes of

blockchain accounts, whose private keys are securely held in its internal system on behalf of its

customers, which are anonymously mapped to its customers and regularly shuffled to maintain

account anonymity of the blockchain transactions. YOSEMITE will provide standard protocols

and open-sourced basic building block components for developers to implement KYC/AML

integrated financial services built upon the YOSEMITE Blockchain.

블록체인 상에서는 사용자가 임의로 익명의 블록체인 계정들을 생성하여 사용할 수 있고 KYC/AML 신원인증

프로세스를통해수집되는개인정보는신뢰기관들을통해비공개적으로처리되기때문에, 블록체인계정들이생성하는

트랜잭션 정보들은 블록체인 상에 투명하게 공개된다 하더라도 각 계정의 개인 정보는 공개되지 않으므로 기본적인

계정 익명성을 이룰 수 있다. 하지만, 특정 블록체인 계정의 소유자의 정보가 한번 노출되면 (예를 들어, 자신의

친구에게 토큰을 전송하여 자신의 블록체인 계정 주소가 지인들에게 노출되는 경우) 해당 계정의 익명성은 무너지게

된다. 이러한 상황에서도 블록체인 계정의 익명성을 보장하기 위해서는, 일반 사용자들이 직접 블록체인 계정을

40

Page 42: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

생성하고 관리하는 대신 YOSEMITE 블록체인에 기반한 서비스들을 제공하는 금융회사들과 같은 신뢰기관들이

고객들을 대신하여 블록체인 계정들을 생성하고 블록체인과 통신하는 자신들의 안전한 시스템들을 통해 관리하는

방식을 구현할 수 있다. 금융회사들은 자신들이 소유하고 있는 신뢰받는 인터넷 도메인을 통해 (예,

https://fintechX.com/YSMT) 블록체인 계정에 공개적으로 연결되지 않는회사내부에서발급되는고객계정아이디(예,

user-account-1234#fintechX.com)를 금융회사가 관리하고 있는 익명의 블록체인 계정으로 매핑(mapping)해주는

웹서비스를 운영할 수 있다. 고객들은 금융회사가 발급하여 제공하는 고객 계정을 은행계좌처럼 사용할 수 있고

금융기관이 제공하는 계정 매핑 서비스를 통해 블록체인 상의 거래는 익명성을 보장하는 방식으로 블록체인 기반

서비스가 구현될 수 있다. 금융 서비스 제공 회사가 아주 많은 수의 블록체인 계정들을 고객들을 대신하여 생성하고

비밀키들은 안전하게 자신들의 내부 보안 시스템을 통해 관리되도록하며, 익명성을보장하기위해블록체인계정들과

고객 계정 간의 매핑이 주기적으로 섞이도록 구현할 수 있다. 다른 구현 방식으로, 금융회사가 많은 수의 블록체인

계정을 사용하지 않고 하나의 대표 블록체인 계정 만을 사용하는 대신 각 고객들을 식별하기 위해 블록체인 트랜잭션

메시지의 메모 필드를 사용하고 금융회사의 백엔드 시스템에서 메모필드에 사용된 식별자들과 내부 고객 계정을

연결하는 원장 시스템을 운영하는 방식으로 시스템을 구성할수도있다. YOSEMITE는서비스제공자들이 YOSEMITE

블록체인에 기반하여 KYC/AML 프로세스가통합되고계정익명성을보장하는서비스들을쉽게구축할수있도록표준

프로토콜을 제공하고 개발자들에게 오픈소스 기반 기본 컴포넌트들을 제공할 것이다.

41

Page 43: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

7 Decentralized Issuance of dFIAT without Fiat Reserve 탈중앙화된 방식의 dFIAT 토큰 발행

YOSEMITE blockchain users can receive an issuance of dFIAT by escrowing their dCRYPTO or

dASSET tokens. At a later time, the user can redeem dCRYPTO/dASSET tokens by returning the

corresponding amount of dFIAT. The issued amount of dFIAT is always less than the dFIAT

price of escrowed tokens by some margin. The exact rates and ratio of issuance will largely be

determined by the historical performance of the dCRYPTO/dASSET token being escrowed. A

very similar decentralized stable coin (bitUSD) implemented by BitShares has proven to closely 15

hold parity with USD. Stable coin issuance via dCRYPTO/dASSET tokens is beneficial to the

YOSEMITE Blockchain ecosystem because this style of issuance relies exclusively on

crypto-token-assets held on the blockchain without the need for a centralized reserve of fiat

funds.

YOSEMITE 블록체인 사용자들은 dCRYPTO 또는 dASSET 토큰을 블록체인 상에 에스크로(escrow)하여 신규 dFIAT

토큰을 발행받을 수 있다. 사용자가에스크로를통해발급받은 dFIAT 토큰의양과동일한양의 dFIAT 토큰을반납하면

에스크로되어있던 dCRYPTO/dASSET 토큰을 다시 돌려 받을 수 있다. 에스크로를 통해 발행되는 dFIAT 토큰의 양은

일정 비율의 마진값을 가지고에스크로되는시점의에스크로대상토큰의 dFIAT 기준시장가격보다항상낮은양으로

책정된다. dFIAT 토큰의 발행 비율은 에스크로되는 dCRYPTO/dASSET 토큰 가치의 안정성에 따라 다르게 책정될 수

있다. 이와 유사한 방식의 탈중앙화 안정화 코인인 bitUSD가 BitShares 블록체인에 의해 구현되었고 USD 가치와 큰

차이 없이 유지되어 왔다. Depository를 통해 YOSEMITE 블록체인 상에 발행되고 실물자산와 외부 블록체인의

암호화폐 자산에의해토큰의가치가뒷받침되고있는 dCRYPTO/dASSET 토큰을통해가치안정화코인을 YOSEMITE

블록체인 상에 신규로 발행하는 방식은 법정화폐의 지급준비금에 의존하지 않고 블록체인 자체적으로 탈중앙화된

형태로 안정화 코인을 발행할 수 있다.

n

dFIATASSET-BACKED < ∑ ( A

i × Pi )

i = 1

where dFIATASSET-BACKED : the total value of dFIAT issued via escrowing dCRYPTO/dASSET tokens,

n : the number of dCRYPTO/dASSET escrows locked for dFIAT issuance,

Ai : the amount of each dCRYPTO/dASSET token escrowed,

Pi : the current dFIAT price (changing over time) of each dCRYPTO/dASSET token escrowed

dFIATASSET-BACKED : dCRYPTO/dASSET 토큰들의 에스크로 하여 발행된 dFIAT 토큰의 총 가치,

n : dFIAT 발행을 위해 실행된 dCRYPTO/dASSET 에스크로의 총 수 dCRYPTO/dASSET, A

i : 각 dCRYPTO/dASSET 에스크로에 묶인 토큰의 양 ,

Pi : 각 dCRYPTO/dASSET 에스크로에 묶인 토큰의 현재 dFIAT 기준 가격 (시간에 따라 변함)

15 D. Larimer, C. Hoskinson S. Larimer - BitShares White Paper - https://www.scribd.com/document/173481633/BitShares-White-Paper

42

Page 44: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

The total value of dFIAT issued from escrowing dCRYPTO/dASSET tokens must always remain

strictly less than the sum of the total value of all escrowed dCRYPTO/dASSET tokens at current

prices in dFIAT. To ensure this equation always holds, the blockchain will execute a margin call

style operation, liquidating dCRYPTO/dASSET into the market on the YOSEMITE Blockchain,

at a price strictly higher than the total value of dFIAT issued from escrowing dCRYPTO/dASSET

tokens at the time. (The elected block producers of YOSEMITE Blockchain automatically

execute sell orders for the escrowed dCRYPTO/dASSET tokens according to the predefined

protocol)

dCRYPTO/dASSET 토큰들을 에스크로하여 발행된 dFIAT 토큰의 총가치는에스크로된 dCRYPTO/dASSET 토큰들의

블록체인 내에서 계속 변동할 수 있는 현재 dFIAT 기준 시장 가격을 반영한 총 가치의 합보다 항상 작아야 한다. 이

조건을 항상 만족시키기 위해, 에스크로된 각 dCRYPTO/dASSET 토큰의 dFIAT 기준 가격이 일정 수준 이하로

떨어지게 되면 블록체인 시스템은 에스크로된 dCRYPTO/dASSET 토큰들에 대해 YOSEMITE 블록체인 내 오픈 토큰

마켓에 Sell 주문을 실행하여 자동으로 dFIAT 토큰으로 유동화되어 진다. (블록생성자들이미리정해진프로토콜대로

에스크로된 dCRYPTO/dASSET 토큰들에대해마진콜(margin call) 스타일의트랜잭션들을자동으로실행함) 유동화된

dFIAT 토큰 중 dCRYPTO/dASSET 토큰 에스크로 시 발행된 양만 큼의 dFIAT 토큰은 블록체인사에서 소각되며,

소각되고 남은 코인은 수수료를 제하고 (징수된 수수료는 트랜잭션 수수료 수익 풀에 저장됨) dCRYPTO/dASSET

토큰을 에스크로 했던 사용자에게 반환된다.

dFIATAB = ∑ dFIAT i

AB = ∑ ( Ai × P

iE × r

i ) < ∑ ( Ai × P

iE × m

i ) ≤ ∑ ( Ai × P

i )

if the token price drops below the maintenance margin, Pi < P

iE × m

i , the blockchain automatically

liquidates(sells) the escrowed dCRYPTO/dASSET (Ai) and the dFIATi

ASTB is burned

where AB : ASSET-BACKED , dFIAT iAB : the amount of dFIAT issued via each dCRYPTO/dASSET escrow,

PiE : the dFIAT price of an dCRYPTO/dASSET when it is being escrowe,

ri : the rate at which dFIAT is issued based on the price P

iE , m

i : the maintenance margin rate, 0 < ri < m

i < 1

블록체인 오픈 마켓 상의 에스크로된 토큰의 가격이 일정 수준 (maintenance margin) 이하로 떨어지게 되면, Pi < P

iE ×

mi , 블록체인 시스템은 자동으로 에스크로된 양의 dCRYPTO/dASSET (A

i) 토큰을 dFIAT 토큰으로 유동화하고

dFIATiASTB 만큼의 토큰은 블록체인 상에서 소각됨

AB : ASSET-BACKED , dFIAT iAB : 각 dCRYPTO/dASSET 토큰 에스크로를 통해 발행된 dFIAT 토큰의 양,

PiE : 토큰이 에스크로되는 시점의 토큰의 dFIAT 기준 시장 가격,

ri : P

iE 가격 대비 dFIAT 토큰 발행 비율 , m

i : 에스크로 토큰 유지 마진 (maintenance margin) 비율,

0 < ri < m

i < 1

The YOSEMITE Blockchain provides a hybrid-style stable coin model supporting both

reserve-backed and token-backed pegging methods.

YOSEMITE 블록체인은 지급준비금(reserve)으로 가치가 보전되는 방식과 블록체인상의 토큰 자산으로 가치가

보전되는 방식의 하이브리드 형태로 법정화폐 가치고정 안정화 코인을 발행할 수 있다.

43

Page 45: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

Total supply of dFIAT = dFIATRESERVE-BACKED + dFIAT

ASSET-BACKED

The total supply of dFIAT tokens in circulation is the sum of dFIAT tokens backed by fiat fund

reserves held by the Depositories and dFIAT tokens backed by dCRYPTO/dASSET escrows.

YOSEMITE 블록체인 상에서 유통되고 있는 dFIAT 토큰의 총 통화량은 신뢰기관인 Depository를 통해 법정화폐

지급준비금에 의해 발행된 dFIAT 토큰의 양과 dCRYPTO/dASSET 토큰 에스크로를 통해 발행된 dFIAT 토큰의 양의

합과 같다.

8 Scalability of YOSEMITE Blockchain YOSEMITE 블록체인의 트랜잭션 처리 성능과 확장성

8.1 Single Chain Scalability 단일 체인 트랜잭션 처리 성능

The single chain scalability of the YOSEMITE blockchain depends mainly on the consensus

mechanism, namely, a novel PoT-based BFT consensus with short block time and fast block

finality. With the Optimistic-Block-Production and the optimized block validity voting protocol,

high speed and high throughput on-blockchain transaction processing, ranging from thousands

to tens of thousands transactions per second with 1~3 seconds block time, can be realized. In the

unique setup of the YOSEMITE Blockchain consensus, the service providers acting as PoT

Nodes and the trusted institutions acting as Seed Trust Nodes will be elected to become block

producers running full core node servers. They are expected to provide high performance

computing powers efficiently and securely to the blockchain ecosystem, handling very large

volume of transactions. The probability for the nodes run by the service providers and trusted

entities to be Byzantine is very low, and there is more room to reduce the number of elected

block producers compared to the usual public blockchain environment. Single chain scalability

is the foundation of extended scalability, like off-chain state channels, on/off-chain hybrid

exchange architecture and the ultimate multi-blockchain architecture with fast inter-blockchain

communication.

YOSEMITE 블록체인의 단일 체인 트랜잭션처리성능은짧은블록타임과빠른블록확정성을보장하는 PoT 기반 BFT

합의 메커니즘으로 부터 기인한다. Optimistic-Block-Production 방식과 최적화된 블록 유효성 검증 투표 프로토콜이

구현된 BFT 기반 합의 알고리즘을 통해 초당 수천건 이상의 블록체인 트랜잭션 처리량과 1~3초 내외의 빠른 블록

타임이 실현될 수 있다. YOSEMITE 블록체인의 독특한 방식의 블록체인 합의 방식인 PoT 기반 합의 프토로콜에서는

44

Page 46: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

YOSEMITE 블록체인 기반 서비스 제공자들이 운영하는 블록체인 코어 노드들인 PoT Node들과 신뢰 기관들이

운영하는 Seed Trust Node들이 블록생성자 노드들로 선출되어 진다. 이러한 블록생성자들이 운영하는 블록체인코어

노드들은 높은 보안성을 유지하는 서버 시스템 환경에서 큰 볼륨의 트랜잭션 처리량을 소화할 수 있는 충분한 컴퓨팅

파워를 블록체인 네트워크에 제공할 것이다. PoT를 통해 선출된 서비스 제공자들과 신뢰기관들에 의해 운영된는

노드들이 Byzantine 노드로 동작할 확률은 현저히 낮을 것을 기대할수있기때문에, 선출된블록생성자들의총갯수를

다른 일반적인 퍼블릭 블록체인 환경과 비교해서 상대적으로 좀더 작은 수로 설정할수있는여지가있다. 단일체인의

높은 트랜잭션 처리 성능은 Off-Chain 스테이트 채널, On/Off-Chain 하이브리드 토큰 거래 아키텍처 및 빠른 인터

블록체인 통신에 기반한 멀티 블록체인 아키텍처와 같은 블록체인 성능 확장성을 구현하는 기술에 기본적인 성능

기반이 된다.

8.2 Extended Scalability with On/Off-chain Hybrid Exchange Technology YOSEMITE On/Off-Chain 하이브리드 거래소 기술을 통한 추가적인 성능 확장성

Though the single chain throughput facilitated by the YOSEMITE Blockchain is enough for most

blockchain service applications, including on-blockchain decentralized exchanges, for

exceptional cases like high frequency trading or micropayments, YOSEMITE has already

provided on/off-chain hybrid exchange technology. Some trading pairs needing high volume,

high frequency trading can be serviced using the existing YOSEMITE hybrid architecture. In this

hybrid architecture, only ‘deposit to exchange’ and ‘withdrawal from exchange’ transactions are

on-blockchain. All buy/sell order messages crypto-signed by YOSEMITE Blockchain user

accounts are submitted to the off-blockchain exchange servers which match the signed buy/sell

orders and publish the trade transactions signed by the off-chain server’s account through the

distributed P2P storage IPFS in a transparent and immutable manner, regularly anchoring the 16

cryptographic proof of recent transactions handled in off-blockchain servers to the blockchain.

When a user requests the withdrawal of the tokens, the verified cryptographic proof of the whole

history of the off-chain trading transactions and the current token balances for the user is also

recorded in the on-blockchain withdrawal transaction. This prevents the external off-chain

exchange servers from manipulating the trading event, and makes the hybrid system fully

auditable to any external parties and fully restorable even in the event of the off-chain exchange

server failure. Off-chain payment channels enabling high-frequency micropayments can also be

implemented in a similar way using the YOSEMITE hybrid technology.

블록체인 기반 탈중앙화 분산 거래소와 같은 블록체인 기반 응용 서비스들을 구현하기 위한 충분한 속도와 처리량

성능이 YOSEMITE 블록체인에서 제공되지만, 하이 프리퀀시 트레이딩 (high frequency trading) 시스템이나

마이크로페이먼트와 같은 추가적인 트랜잭션 처리량을 요구하는 서비스들을 블록체인 기반으로 구현할 수 있도록

YOSEMITE가 이미 개발되어 공개된 YOSEMITE On/Off-Chain 하이브리드 거래소 기술을 제공한다. 더 높은 거래량

처리와 하이 프리퀀시 트레이딩이 요구되는 토큰 거래는 YOSEMITE 블록체인에 기반한 YOSEMITE 하이브리드

아키텍처로 구현된 거래 시스템을 통해 서비스 될 수 있다. YOSEMITE 블록체인 기반 하이브리드 토큰 거래

16 Juan Benet, IPFS - Content Addressed, Versioned, P2P File System https://ipfs.io/ipfs/QmR7GSQM93Cx5eAg6a6yRzNde1FQv7uL6X1o4k7zrJa3LX/ipfs.draft3.pdf

45

Page 47: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

방식에서는, 사용자 블록체인 계정과 하이브리드 거래소 블록체인 계정 간의 입금과 출금 트랜잭션 만이 블록체인

상에서 발생하며, 사용자들의 블록체인 계정의 비밀키로 암호화 서명된 모든 Buy/Sell 주문 메시지들은 블록체인

트랜잭션으로 처리하지 않고 블록체인 밖의 오프체인 (off-chain) 거래소 서버로 제출된다. 오프체인 거래소 서버는

수집된 Buy/Sell 주문들을 연결해 거래를 체결하고 거래 체결 트랜잭션 메시지를 오프체인 서버의 블록체인계정으로

암호화 서명하여 체결된 거래 내역 데이터가투명하게처리되고변경될수없도록분산 P2P 저장소네트워크인 IPFS를

통해 공개된다. IPFS에 공개된 오프체인 토큰 거래 트랜잭션 정보들은 주기적으로 최근 트랜잭션들을 모아서 거래

트랜잭션 발생에 대한 증거데이터(트랜잭션 목록의 암호화 해시값)가 블록체인에 저장하여 오프체인 서버에서

이루어진 거래들에 대한 투명성과 불변성을 보장할 수 있도록 한다. (Anchoring) 하이브리드 거래소 시스템 사용자가

거래소의 블록체인 계정으로부터 사용자의 블록체인 계정으로 토큰의 출금을 요청하면, 이전 출금 시점 이후의 해당

계정의 IPFS와 블록체인에 변조가 안되는 방식으로 저장되어 있는 모든 오프체인 거래 트랜잭션 내역과 출금 시점의

거래소 상의 토큰 잔고 정보가 누구나 입증할 수 있는 형태로 (주문과 체결들에 대한 암호화 서명 확인과 IPFS와

블록체인 연결을 통한 데이터 불변성) 사용자에게 제시되고 토큰 잔고 입증단계를거친후잔고증명데이터를포함한

출금 블록체인 트랜잭션을 블록체인 상에서 실행하여 출금 요청된 토큰을 사용자의 블록체인 계정으로 전송한다.

이러한 방식을 통해 블록체인 외부에서 동작하는 오프체인 거래소 서버가 사용자들의 거래 트랜잭션들을 인위적으로

조작할 수 없도록 보장할 수 있으며, 하이브리드 거래소 시스템에서 발생한 거래 내역들이 블록체인에서 발생한

트랜잭션처럼 시스템 외부 제 3자에의해서완전히감사가가능하다. 또한거래내역들이 IPFS 분산저장소에저장되고

블록체인에 연결되므로오프체인거래소서버가장애가발생하더라도거래소에서처리되었던모든거래트랜잭션들이

복구가 가능하다. 매우 작은 양의 토큰 전송을 매우 높은 빈도로 처리해야하는 마이크로페이먼트(micropayment)

시스템 역시 YOSEMITE 하이브리드 기술을 동일하게 적용하여 YOSEMITE 블록체인에 기반한 고성능 오프체인

페이먼트 채널을 구현할 수 있다.

Figure 8.1 - YOSEMITE hybrid exchange technology, Technical White Paper and asset/crypto exchange

alpha version.

그림 8.1 - YOSEMITE 하이브리드 거래소 기술, 기술 백서와 자산 토큰 거래소 / 암호화폐거래소 알파 버전 시스템

The technical white paper and the working alpha system of the YOSEMITE hybrid exchange 17 18

technology were published in mid 2017. The working alpha versions of asset/crypto exchange

system in Figure 8.1 were developed based on the Ethereum blockchain, but the hybrid

technology can be implemented on any other blockchains including the YOSEMITE Blockchain.

17 YOSEMITE On/Off-Blockchain Hybrid Exchange Tecnical White Paper, 2017 https://yosemitex.com/documents/YOSEMITE_Hybrid_Exchange_Technical_White_Paper_20170731a.pdf 18 YOSEMITE Asset Exchange alpha (http://alpha.yosemitex.com) and Crypto Exchange alpha (http://crypto-alpha.yosemitex.com) hybrid exchange system built upon Ethereum

46

Page 48: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

YOSEMITE 하이브리드 거래소 기술은 2017 중반에 이미 기술 백서와 동작하는 알파버전 시스템이 공개되었다. 그림

8.1의 자산 토큰 거래소와 암호화폐 거래소 알파버전 시스템은 이더리움 블록체인을 기반으로 구현되었으나,

YOSEMITE 하이브리드 기술은 YOSEMITE 블록체인을 포함한 어떠한 퍼블릭 블록체인 위에서도 구현이 가능하다.

8.3 Scalable Multi-Blockchain Architecture 확장성있는 멀티 블록체인 아키텍처

Figure 8.2 - Scalable multi-blockchain architecture with tightly coupled inter-blockchain communication

그림 8.2 - 높은 수준의 상호운용성을 제공하는 인터 블록체인 통신을 통한 확장성있는 멀티 블록체인 아키텍처

With the well-designed single chain scalability characterized by fast block finality and

tightly-coupled inter-blockchain communication protocol, a scalable multi-blockchain

architecture can be implemented. The scalable multi-blockchain architecture is planned to be

implemented in a future upgrade of the YOSEMITE Blockchain. There will be a single

Root-Blockchain in each YOSEMITE Blockchain whose blocks contains the recent block-hashes

of the blocks having block finality status from the multiple Thread-Blockchains running in the

same YOSEMITE Blockchain. The Root-Blockchain operated by its own block producers acts as

the inter-blockchain communication hub between the Thread-Blockchains. A Thread-Blockchain

is a blockchain with its own transaction types, native dFIAT tokens used as basic currency token

in that chain, and its own blockchain consensus run by independent block producers. With

multiple Thread-Blockchains in a YOSEMITE Blockchain, each with a large capacity for

transactions, a very high level of blockchain scalability can be achieved.

빠른 블록 확정성이 보장되고 높은 수준의 블록체인 간 상호운용성을 제공하는 인터 블록체인 통신 프로토콜이 잘

디자인된 단일 블록체인들을 연결하여 블록체인 트랜잭션들을 병렬처리하여 높은 성능을 보장하는 확장성있는 멀티

블록체인 아키텍처를 구현할 수 있다. 멀티블록체인 아키텍처는 YOSEMITE 블록체인의 향후 프로토콜업그레이드에

적용할 예정이다. 멀티블록체인 구조가 구현된하나의 YOSEMITE 블록체인에는하나의 Root-블록체인이존재하는데,

Root-블록체인의 블록들은 하나의 YOSEMITE 블록체인 안에서 병렬적으로 동작하는여러개의 Thread-블록체인들의

블록확정성을얻은블록해시들을포함한다. Root-블록체인은자체블록생성자들에의해운영되고 Thread-블록체인들

간의 인터 블록체인 통신 허브로 동작한다. 각 Thread-블록체인은 자체 블록체인 트랜잭션 타입들, 해당 체인 내에서

기본 통화 토큰으로 사용되는 네이티브 dFIAT 토큰, 독립적인 블록생성자들로부터운영되는자체블록체인컨센서스

프로토콜을 Thread-블록체인 마다 자체적으로 가질 수 있다. 하나의 YOSEMITE 블록체인 안에 높은 트랜잭션 처리

성능을 가진 여러개의 Thread-블록체인들을 동시에 병렬적으로 운영하여, 매우 높은 수준의 블록체인 성능 확장성을

구현할 수 있다.

47

Page 49: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

9 Smart Contract Platform 스마트 컨트랙트 플랫폼

The YOSEMITE Blockchain, basically designed as a decentralized exchange platform, provides

tokenization and token-trading operations as built-in blockchain transaction types, so that

useful killer applications like crypto exchanges can be developed on the YOSEMITE Blockchain

without utilizing smart contract technology provided by the blockchain. To support customized

blockchain transactions designed by developers building their Dapp (Decentralized Application)

on top of the YOSEMITE Blockchain, smart contract execution will be provided in a future

upgrade of the YOSEMITE Blockchain. Instead of developing a custom-designed virtual

machine and smart contract programming language such as the EVM (Ethereum Virtual 19

Machine) and Solidity , the YOSEMITE Blockchain adopts WebAssembly (WASM) technology 20 21

which was originally developed as the open web standard for the next generation of

web-browser-side application runtime environments. WASM, due to its fast and safe VM, has

great potential to replace Javascript, currently the only de-facto standard in web programming.

The EOS blockchain also adopted WASM as its smart contracts execution technology. Currently,

developers can use C/C++/Rust programming languages to produce secure and high

performance smart contract codes compiled to WASM binary. DoS (Denial of Service) attacks

consuming resources such as computing power and storage of the blockchain must be

prevented. The operations callable from the WASM codes modifying the blockchain state (e.g.

token operations, storage operations) will charge a transaction fee paid in dFIAT. The

YOSEMITE Blockchain also restricts the execution time of a smart contract execution

transaction in proportion to the dFIAT holding of the blockchain account who initiated the

smart contract execution. The smart contract platform with a fiat-pegged stable coin as the

native crypto-currency will have a huge impact on practical blockchain-based application

development, attracting existing financial institutions and fintech startups to utilize the

YOSEMITE blockchain.

YOSEMITE 블록체인은 블록체인 상의 토큰 생성과 거래를 위한 오퍼레이션들이 블록체인 코어에 기본 블록체인

트랜잭션 타입으로 구현된 탈중앙화 분산 거래소 플랫폼 기능이 기본 탑재된 블록체인으로 설계되어 있어서 토큰

거래와 관련한 블록체인 기반 서비스들을 블록체인에서 제공되는 스마트 컨트랙트 실행 기능을 이용하지 않고도

구현할 수 있다. 하지만 블록체인에서 기본적으로 제공되지 않는개발자들이작성한코드로실행되는맞춤형블록체인

트랜잭션을 이용한 블록체인 기반 탈중앙화 어플리케이션 (Dapp, Decentralized Application) 개발을 지원하기 위해,

YOSEMITE 블록체인의 향후 프로토콜 업그레이드를 통해 스마트 컨트랙트 실행이 기능이 제공될 예정이다. EVM

(Ethereum Virtual Machine)과 Solidity와 같은 스마트컨트랙트를 위해 특별히 제작된 새로운 가상머신과

스마트컨트랙트 프로그래밍 언어를 개발하는 대신에, YOSEMITE 블록체인은 차세대 웹브라우저 단 응용프로그램

19 G. Wood, Ethereum Yellow Paper - https://ethereum.github.io/yellowpaper/paper.pdf 20 Solidity Programming Language official documentation - https://solidity.readthedocs.io 21 WebAssembly official website - http://webassembly.org

48

Page 50: YOSEMITE Public Blockchain · 2018-04-03 · 블록체인 컨센서스, 거버넌스, 트랜잭션 수수료 배분 2 6 5 . 3 . 1 P ro o f -o f -T ra n sa ct i o n (P o T ) No d e

실행 환경을 위한 오픈 웹 표준으로 개발된 WebAssembly(WASM) 기술을 도입한다. WASM은 매우 빠르고 안전한

가상머신 기술로 현재 사실상 웹 프로그래밍의 유일한 표준인 Javascript를 향후 대체할 수 있는 가능성이 매우 높은

기술이다. WASM 기술은 이미 EOS 블록체인에서도 스마트 컨트랙트 실행 기술로 채택되었다. 현재 C/C++/Rust

프로그래밍 언어를 이용하여 개발자들이 보안성이 높고높은성능을낼수있는 WASM 바이너리로컴파일되는스마트

컨트랙트 코드를 작성할 수 있다. 블록체인 시스템의 컴퓨팅 파워와 스토리지와 같은 자원들을 소진시킬 수 있는 DoS

(Denial of Service) 공격이 스마트 컨트랙트 플랫폼을 통해 실행되는 것이 반드시 방지되어야 한다. WASM 코드들로

부터 실행될 수 있는 토큰 오퍼레이션이나 스토리지 오퍼레이션과 같은 블록체인 상태를 변경하는 오퍼레이션들은

dFIAT 으로 실행 수수료가 부과된다. 또한 YOSEMITE 블록체인은 스마트 컨트랙트를 실행하는 블록체인 계정의

dFIAT 보유량에 비례하여 스마트 컨트랙트 트랜잭션을 실행하는 시간을 제한한다. 법정화폐 가치고정 안정화코인이

기본 화폐토큰으로지원되는스마트컨트랙트플랫폼은기존의금융회사들이나핀테크관련스타트업들이 ICO를통한

암호화폐 등을 사용하지 않고 사용자들이 일상적으로 사용하는 법정화폐를 사용하는 현실적이고 실용적인 블록체인

기반 어플리케이션들을 개발할 수 있는 범용 금융 서비스 플랫폼으로 동작할 것이다.

49