A Hybrid Model for Central Bank Digital Currency Based on Blockchain

Yun Young Lee
slcf
Published in
12 min readMay 20, 2021

By JINNAN ZHANG , RUI TIAN , YANGHUA CAO , XUEGUANG YUAN , ZEFENG YU , XIN YAN , AND XIA ZHANG

  • 이번 글은 IEEE Access에 게재된 “A Hybrid Model for Central Bank Digital Currency Based on Blockchain” 논문을 요약한 것입니다.
  1. Introduction

세계 각국의 중앙 은행들을 중심으로 CBDC에 대한 연구가 지속됨에 따라, 어떠한 블록체인 모델이 CBDC에 적합한지 더욱 심도있게 논의될 필요가 있습니다. 본 논문에서는 operating mechanism, network architecture, 그리고 consensus mechanism 측면에서 CBDC에 적합한 모델을 제안하고, 이에 대한 실증 실험을 진행하였습니다.

2. Problem Analysis

A. Analogy of current digital currency expression schemes

디지털 화폐는 크게 UTXO와 계정(account),이 두 가지의 scheme으로 나누어 볼 수 있습니다. UTXO는 현재 비트코인에서 사용하고 있는 scheme으로, 여러 개의 transaction이 병렬적으로 진행될 수 있도록 설계된 구조입니다. 또한 프라이버시의 강도도 높기 때문에, 높은 보안 수준을 요구하는 화폐 시스템에서 사용될 경우 효과적일 수 있습니다. 반면 계정 기반 scheme은 현재 이더리움에서 사용되고 있으며, 복잡한 연산 메커니즘 없이 transaction을 처리할 수 있다는 점에서 UTXO에 비해 효율적일 수 있습니다. 또한 스마트 컨트랙트 등의 탑재를 통해 더욱 복잡하고 다양한 기능을 제공할 수 있습니다.

a) The UTXO Scheme

  • UTXO를 CBDC에 탑재하는 경우, 수많은소액 결제들로 인하여 spatial complexity가 매우 높아질 수 있음.
  • UTXO Scheme만으로는 large-scale-small-payment simple transactions들을 모두 소화해낼 수 없음.

b) The Account Scheme

  • 여러 복잡한 컨트랙트 코드들은 더욱 많은 저장 공간과 리소스를 필요로 하며, 이는 네트워크 및 시스템 내에 오류를 야기할 가능성이 높음.
  • 따라서, account scheme을 사용 시에도 스마트 컨트랙트에 대한 어느 정도의 제한을 두어 complexity를 조절할 필요가 있음.

위와 같은 이유로, 디지털 자산을 발행하는 데에 유리한 UTXO와, DApp 등 개발에 용이한 account를 모두 적절히 활용할 수 있어야 합니다.

B. Current blockchain network node architecture

블록체인 네트워크 구조는 전통적인 P2P(peer-to-peer) 네트워크와 structured modular network로 나눌 수 있습니다. 전자의 경우 비트코인과 같은 디지털 화폐들에 통용되고 있으며, 후자의 경우는 alliance chain에 활용되고 있습니다.

a) 전통적 블록체인 구조

  • 블록체인에 참여하는 노드가 전체 장부 데이터베이스를 저장하고 있는 경우가 대다수이며, 채굴을 통해 보상을 받기도 함.
  • 사용자의 프라이빗 키를 저장하여 트랜잭션을 발행하고 검증을 진행하는 등 다양한 기능을 수행함.
  • 전통적 블록체인에 대한 문제점으로는 노드 리소스의 낭비, 모듈성(modularity)의 부재, 그리고 processing fee의 경쟁이라고 할 수 있음.

b) 모듈화된 블록체인 구조

  • 노드에 따라 기능을 다르게 부여하고, 권한 또한 다르게 부여할 수 있음.
  • 만약 결함이 발생하는 경우, 결함이 발견된 노드만 부분적으로 고치는 것이 가능함.
  • 따라서 노드 리소스에서 효율성을 불러올 수 있음.
  • 하지만 현재 alliance chain들의 경우 smart contract로 모든 기능들이 구현되고 있다는 점에서, 단순 계산들에 비하여 네트워크 성능이 떨어질 수 있음. 또한 CBDC의 취지와는 달리 여러 블록체인들을 사용하는 경우가 존재함.

C. Consensus mechanism in the current blockchain

합의 메커니즘은 블록체인을 구성하는 데에 있어서 매우 중요한 요소로, 노드들간의 장부를 어떻게 동기화 할 것인지에 대한 문제입니다. 일반적인 합의 메커니즘으로는 Proof of Work, Proof of Stake, Practical Byzantine Fault Tolerance, Ripple Consensus Protocol, 그리고 Delegated Proof of Stake 등이 있습니다.

a) POW 합의 메커니즘

  • 각 노드의 computing power 경쟁을 통하여 데이터의 일관성과 합의의 보안성을 확보함.
  • 그러나 분기를 막기 위하여 각 블록은 너무 짧게 생성될 수 없도록 하여야 하는데, 이는 transaction 처리 속도의 저하를 낳게됨.

b) POS 합의 메커니즘

  • 다음 블록을 생성하는 노드는 랜덤성과 자산 현황 등을 고려하여 선택됨.
  • 다른 bookkeeping 노드들은 복잡한 계산을 수행하지 않아도 되기 때문에 리소스 절약을 불러올 수 있음.
  • 그러나 네트워크 전체가 부유한 노드들에 의해 통제될 수 있다는 위험이 존재함.

c) PBFT 합의 메커니즘

  • f가 failure에 대해 응답하지 않는 노드의 수라고 할 경우, 3f+1개 이상의 노드가 존재할 때 안정적인 메커니즘임.
  • 그러나 노드들은 2n*n+n (n은 노드의 개수)번의 소통을 진행하여야 하므로, n이 커지는 경우 비효율적임. 그러나 PoW에 비해 빠르고 PoS에 비해 안전하다고 할 수 있음.

d) DPOS 합의 메커니즘

  • 블록을 생성할 수 있는 producer node들에 대한 범위가 POS보다 더욱 제한적이며, 이들은 자신의 자산이나 컴퓨터 리소스 등을 투입하여야 함.
  • Master node들 끼리는 소규모의 PoS 혹은 PBFT 합의 메커니즘을 사용함.
  • 그러나 Sybil Attack에 취약하고 high latency network 상에서는 블록 분기가 많을 수 있다는 문제점이 존재함.

정리하자면, POW와 POS 메커니즘에서는 거의 대부분의 참가자들이 블록을 검증하여야 하며, 공격자 노드가 절반 이상의 리소스나 투표를 차지하는 경우 이에 대한 대응을 하기가 매우 힘듭니다. PBFT 메커니즘은 안전하고 효율적이라고 할 수 있지만, 참가자 노드의 수가 많아짐에 따라 네트워크 성능이 크게 떨어질 수 있습니다. DPOS의 경우 중앙화된 주체가 참가하게 되는 CBDC와 같은 경우, Sybil Attack이 방지될 수 있으므로 매력적인 메커니즘이라고 할 수 있습니다. 본 논문에서는 DPOS 뿐만 아니라 DPOS와 PBFT를 결합한 DPOS-BFT 알고리즘도 고려하였습니다.

3. CBDC의 Scheme

A. 전체적 디자인

UTXO와 account scheme의 장점을 모두 활용하고자, 본 논문에서는 이 둘을 합친 hybrid digital currency scheme을 제안하였습니다. Bottom layer의 경우 중앙 은행의 통솔 하에 시중 은행과 정부 기관들이 참가하는 분산화된 블록체인 네트워크로 구성되어 있습니다. Account scheme은 디지털 화폐 간의 단순 계산에 활용되며, 이보다 확장된 기능이 필요한 금융 자산이나 Dapp의 경우는 UTXO scheme을 활용합니다. 이와 같이 활용하는 경우, 단순한 트랙잭션을 간단하게 유지하는 하에 스마트 컨트랙트의 단점을 보완할 수 있습니다.

B. 주요 모듈들의 디자인

a) Account

  • Account scheme 내에서 개인이 보유하고 있는 디지털 화폐의 양은 account내 잔고로 나타나며, 중앙 은행은 이를 확인할 수 있음.
  • 하지만 다른 노드들의 경우 노드들의 개인 정보를 열람할 수 없음.

b) Digital assets (UTXO)

  • 디지털 자산은 UTXO 형태의 전자 보증이며, 은행 예금, 채권, 펀드 등의 형태로 사용될 수 있음.
  • UTXO 내 기본적인 정보로는 소유권, 액면가, 스마트 컨트랙트 조건 등이 담겨있음.

c) 트랜잭션

  • 트랜잭션은 사용자 account와 디지털 자산의 변화의 근본임.
  • 모든 트랜잭션은 소유자의 서명이 필요함.

C. 실행 메커니즘 디자인

a) Transfer mechanism

  • User 2가 User 1에게 디지털 화폐를 결제하는 경우, user 2가 이에 맞는 트랜잭션을 생성하여 CBDC 네트워크로 전송함.
  • 전송된 트랜잭션은 알맞는 사용자(user 1)에게 전달되며, 트랜잭션의 유효성이 검증됨.
  • 만약 양 측 노드에서 진행되고 있는 스마트 컨트랙트가 없다면 트랜잭션이 실행되어 user 2의 잔고는 감액되고 user 1의 잔고는 증액됨.
  • 디지털 자산의 경우, 이와는 다르게 UTXO 기반의 트랜잭션으로 생성되며 양측의 프라이빗 키가 모두 필요함.

b) Issuance, circulation, and withdrawl

  • CBDC의 발행은 UTXO transfer와 흡사함. 시중 은행은 sender가 정해져 있지 않음 특별한 트랜잭션을 발행하는데, 이에는 중앙은행의 서명이 첨부되어 있음.
  • CBDC reserve 혹은 Cash reserve에서 해당 금액만큼 차감된 후 시중 은행으로 디지털 화폐가 전송됨.
  • 시중은행들에서 진행되는 예금이나 출금들 또한 UTXO로 활용될 수 있음.

c) Supervison mode and security

  • 중앙 은행은 모든 블록체인 네트워크 상의 데이터를 감시하고 노드에 페널티를 부여할 수 있음.
  • 중앙 은행은 불법 계좌에 대한 freeze를 진행하거나 트랜잭션 롤백, 디지털 자산 혹은 CBDC에 대한 압수를 진행할 수 있음.

4. Network Architecture

전통적인 P2P 디지털 화폐의 구조는 실행 효율성이나 리소스 분배에 있어서 CBDC에 적용되기에는 많은 문제점을 내포하고 있었습니다. Alliance chain의 네트워크 구조는 이에 비해 훨씬 효율적이지만, CBDC에 적용되기에 적합하지 않은 기능들이 많다는 견해도 존재하고 있습니다. 이에 따라 본 논문에서는 alliance chain을 기반으로 한 변형된 네트워크 구조를 제안하고 있습니다.

A. Overall Structural Design

  • Application layer: 사용자와 직접적으로 연결되어 있는 layer로, 네트워크 내 지갑들로 해석할 수 있음.
  • Enter layer: 직접적으로 transaction settlement나 data maintenance에 참여하지 않으나, 접수된 transaction을 pre-checking하고 transaction의 수를 관리하는 등의 기능을 수행함.
  • Second-level node: 분산화된 원장에 관련된 모든 계정 데이터 및 트랜잭션 데이터를 저장함. 이 노드는 주로 정부기관이나 공식적으로 인증된 network operator가 수행하게 되어 있음. 이 노드에 저장된 데이터는 메인 체인의 원장의 부분집합이라고 볼 수 있음.
  • Third-level node: 디지털 자산에 관련된 다양한 기능을 수행함.
  • First-level node: 이 노드는 트랜잭션들에 대한 최종 검증 과정을 수행하며, 중앙 은행이나 지역 정부에 의해 통제됨. 전체 블록체인 데이터를 보유하고 있으며 first-level node간의 원장은 통일성이 보장되어야 함.

B. Sliced data and storage design

제안된 네트워크의 데이터 구조는 다음의 그림을 참고하시면 쉽게 이해하실 수 있습니다.

5. Consensus Mechanism

앞서 논의된 DPOS와 PBFT의 장점을 살려 POA-PBFT라는 새로운 합의 메커니즘을 제안하였습니다. POA-PBFT의 특징은 다음과 같습니다.

A. Election mechansim

  • 기존의 bookkeeping node들에 대한 election은 중앙 은행의 통제로 변경됨. 이에 따라 voting consumption이 줄어들 수 있음.
  • 이후에 Shutdown node들이 candidate node들로 대체될 수 있음.

B. Block production sequence

  • DPOS 내에서 블록 생성의 순서는 모든 채굴자들에 의해 논의되며 블록 넘버는 자유롭게 늘어날 수 있음.
  • 하지만 PoA-PBFT에서는 중앙 은행에의해 채택된 어떤 노드들은 일정한 넘버의 블록만을 생성할 수 있으며, 이 블록의 생성 및 전파가 지연될 경우 다음 블록의 생성이 불가하게 됨. 이는 체인의 분기를 쉽게 막을 수 있음.

C. The process of shutdown

  • 만약 한 노드가 shut down 되어 다른 노드들에게 이를 알릴 수 없는 경우, 중앙 은행이 블록의 부족을 파악하고 이를 다른 노드들에게 전파함.
  • 이 후 네트워크는 invalid한 block number를 제거하고 계속 구동되며, 다른 노드들이 일시적으로 shutdown node를 대체함.
  • 이러한 경우 shutdown에 의한 전체 처리 능력의 저하를 단지 몇 블록 생성기간으로 줄일 수 있음.

6. 실험 및 분석

본 논문에서는 몇 가지 시뮬레이션 실험을 통해 제안된 모델을 분석하고 있습니다. 결과는 다음과 같습니다.

  • 트랜잭션 수에 따른 소요 시간 (Scheme 별)
  • 트랜잭션 수에 따른 소요 시간 (네트워크 구조별)
  • 노드 수에 따른 소요 시간(합의 메커니즘별)

References

Zhang, Jinnan, et al. “A Hybrid Model for Central Bank Digital Currency Based on Blockchain.” IEEE Access 9 (2021): 53589–53601.

--

--