블록체인으로 완성하는 CBDC

CBDC는 무엇이며 어떤 요소가 필요할까요? 블록체인은 어째서 CBDC 시스템에 적합할까요?

Scroll

디지털화폐는 실물화폐와 달리 전자적으로만 존재하며 거래가 간편해, 민간기관의 주도하에 전자송금이나 IC카드 같은 형태로 우리 생활에 널리 쓰이고 있습니다. 이처럼 대중에게 친숙한 디지털화폐 외에, 민간은행 지급준비금이나 결제계좌 잔액 또한 중앙은행에서 디지털화폐 형태로 운용해왔습니다.1

그런데, 최근들어 각국 중앙은행은 기존의 용도에서 한발 나아간 새로운 중앙은행 디지털화폐(Central Bank Digital Currency, 이하 CBDC) 연구에 한창입니다. Bank for International Settlements의 조사에 따르면, 2019년 기준으로 세계 중앙은행 약 80%가 CBDC를 조사 중이며, 50% 가량은 개념 증명(proof of concept)과 파일럿을 실행 또는 준비 중2이라고 합니다.


주요국의 CBDC 추진 현황을 알아보세요.


주로 논의 중인 CBDC는 지급결제 기능을 가진 화폐로, 정책에 따라 금융기관 간 거액 결제(wholesale)나 일반인이 평소 접하는 소액 거래(retail)에 사용할 수 있습니다. 이런 CBDC는 비트코인 같은 암호화폐, 멤버십포인트 같은 가상화폐와는 달리 중앙은행이 보증함으로써 현금과 동등한 지위를 갖는 법정 화폐로, 특정 서비스에 한정하지 않고 언제 어디서든 이용할 수 있어야 합니다.3 따라서 보안이 무엇보다 중요합니다.

CBDC와 원장 관리

시스템 장애나 외부 공격에도 거래를 지속할 수 있고 거래 내역을 안전하게 보관하는 원장 관리 방법은 무엇일까요?

CBDC는 전자화폐이므로 전자 원장에 계좌와 거래 정보를 기록합니다. 전자 원장은 중앙화 시스템이 단독 관리하는 단일원장과 다수의 참여자가 원장을 각자 보관하는 분산원장으로 나눌 수 있습니다.

전통적인 중앙화 시스템인 단일원장 방식에는, 중앙시스템에 장애가 발생하면 시스템 전체가 멈추는 단일실패점(single point of failure) 문제가 있습니다. 이를 피하고자 여러 가지 방지 시스템이나 정책을 덧입히는데, 그럴수록 보안 관리가 복잡해집니다. 이와 달리 분산원장 방식은 원장을 한 곳에서 관리하지 않고 여러 참여자가 분산 관리하며, 분산된 원장을 검증하는 별도 주체가 있거나 참여자들이 공동으로 검증합니다.4 이때, 참여자를 신뢰할 수 있다면 보안 관리가 쉬워집니다.

분산원장 관리 방식에는 모든 참여자가 동일한 원장을 관리하는 동일 원장 분산 관리, 원장 내용을 구분하고 참여 그룹별로 서로 다른 원장을 관리하는 비 동일 원장 분산 관리가 있습니다. 동일 원장 분산 관리는 단일 실패점을 방지할 수 있고, 비 동일 원장 분산 관리는 거래 기밀성을 보장할 수 있습니다.

CBDC와 블록체인

암호화폐의 기반인 블록체인은 분산원장 시스템을 구현하는 한 방법입니다.

최근 들어 CBDC 논의가 활발한 데는 여러 원인이 있으나, 비트코인을 위시한 암호화폐가 주목받고 블록체인 기술이 발전하면서 편리함을 넘어 신뢰할 만하고 효율적인 전자 결제 수단이 마련된 것도 그 중 하나입니다.

블록체인은 참여 방식에 따라 누구나 참여할 수 있는 비허가형(permissionless)과 허가받은 자만 참여하는 허가형(permissioned)으로 나뉩니다. 비허가형 블록체인은 모두에게 원장을 공개해 누구나 언제든 허가없이 네트워크에 참여해 읽고 쓸 수 있으므로, 중앙은행 통제 하에 운영되어야 하는 CBDC 시스템에 적합하지 않습니다. 따라서 중앙은행의 통제 하에 참여자를 선정하고 네크워크를 운영할 수 있는 허가형 블록체인(프라이빗 또는 컨소시움 형태 블록체인)을 채택하는 것이 좋습니다.

앞서 기술했듯 분산원장을 구현한 블록체인은 결함에 내성이 있어 신뢰할만 하나, 합의가 필수 절차이다 보니 중앙화 시스템보다 처리 성능이 떨어집니다. 하지만 허가형 블록체인을 구축해 참여자 수를 조절하고 효율이 높은 합의 알고리즘을 채택함으로써 처리 성능을 높일 수 있습니다.


블록체인 기반 CBDC로 무엇을 할 수 있는지 알아보세요.


블록체인 기반 CBDC 시스템 구축

법정화폐로서 CBDC 및 CBDC 시스템이 갖추어야 할 기본 원칙이 있습니다.

  • 현금과 유사한 지급수단 제공
  • 효율적인 성능 및 활용
  • 프라이버시 확보와 감사 기능

블록체인으로 CBDC 시스템을 구축할 때는 앞서 언급한 보안과 처리성능을 포함해 위 요건을 달성하는 방법을 고려해야 합니다. 블록체인 기반 CBDC 시스템에서는 다음 세 가지 특성을 보장함으로써 요건을 만족할 수 있습니다.

결제 완결성

결제 완결성이란, 일단 확정한 거래를 취소할 수 없는 성질을 말합니다. 현금은 신용 리스크가 없는 거래 수단으로 즉각적인 거래 완결성을 가지므로, 현금과 유사한 지급 수단인 CBDC 시스템도 결제 완결성을 보장해야 합니다. 블록체인의 결제 완결성은 합의 알고리즘에 크게 영향 받습니다.

지금까지 제시된 합의 알고리즘은 블록이나 트랜잭션 데이터를 완결하는 방법에 따라 가장 긴 체인 규칙(longest-chain rule), Crash Fault Tolerance(이하 CFT), Byzantine Fault Tolerance(이하 BFT) 계열로 분류할 수 있습니다. 보통 가장 긴 체인 규칙을 채택한 합의 알고리즘은 결제 완결성을 보장하지 않으므로 CFT나 BFT를 채택하는 것이 좋으며, 그중에서도 좀 더 넓은 범위 결함에 대응할 수 있는 BFT를 권장합니다. 체크포인트를 만들어 결과만 저장하고 나머지는 버리는 PBFT는, 속도가 느린 BFT 계열 합의 알고리즘의 단점을 해결하면서도 결제 완결성을 확보하므로 CBDC 시스템에 알맞은 합의 알고리즘입니다.

기밀성과 추적성

블록체인을 이용하면 모든 거래 이력이 원장에 기록돼 참여자에게 노출됩니다. CBDC는 금융 시스템이므로 기밀성이 중요하지만, 자금세탁 방지를 위한 감시 기능도 중요합니다. 따라서 프라이버시를 보호하면서도 불법 또는 위법 거래를 추적하는 기술이 필요합니다.

거래 정보를 특정 기관에만 공개하거나, 거래 내용을 암호화한 후 검증 기관에 복호화 키를 제공하거나, 거래자와 실 사용자를 분리해 원장에서는 사용자를 특정할 수 없지만 검증 기관은 실 사용자를 확인할 수 있게 하는 방법을 적용할 수 있습니다.

상호 운영성과 확장성

CBDC 시스템은 기존 금융 시스템과 매끄럽게 상호 운영할 수 있어야 하며, 타 분산원장 시스템과 연동하는 방법도 제공해야 합니다. 오픈 API를 제공해 기존 금융 시스템이 손쉽게 기능을 호출할 수 있게 하거나, SPV(Simplified Payment Verification), 지갑, 권한 기반 연동 방법을 적용하는 것이 한 방법입니다.

이와 더불어 거래량 증가에 대비해 확장성을 확보하는 것도 중요합니다. 합의 알고리즘과 블록 크기를 조절해 단일 블록체인의 처리량을 늘릴 수도 있고, 오프체인(off-chain)에 거래 처리를 위임하거나 여러 체인을 연결함으로써 단일 블록체인의 한계를 극복할 수도 있습니다.

 

블록체인으로 CBDC 시스템을 구축하면 앞서 언급한 기본 원칙 뿐만 아니라 다음과 같은 이점도 얻을 수 있습니다.

프로그램 가능성

CBDC를 도입하면 통상적인 현금 기능 외에도 이자 지급, 자산의 토큰화, 탈 중앙 금융 같은 응용 기능을 고려해볼 수 있습니다. 블록체인 기반 CBDC 시스템을 구축하면 스마트 계약으로 이런 기능을 구현할 수 있습니다. 스마트 계약에는 종료 가능성을 보장하고 결정론적으로 동작하는 프로그래밍 언어를 사용하는 것을 권장하며, 샌드박스화 해 스마트 계약의 오류가 시스템에 영향을 주지않도록 분리하는 것이 좋습니다.

안전성

BFT 기반 합의 알고리즘을 채택한 블록체인 CBDC 시스템에서는 원장 내용을 임의로 변경할 수 없으므로 거래 정보를 안전하게 보관할 수 있습니다. 이런 특징은 이중지불을 방지하는 데도 도움이 됩니다. 충돌하는 거래가 발생했을 때, 먼저 들어온 거래만 처리하고 뒤에 들어온 것은 거부하므로 이중지불을 막을 수 있습니다.

복원력

복원력이란 분산 컴퓨팅 시스템의 프로토콜 모델이 결함을 얼마나 허용할 수 있는지를 말합니다. 여러 참여자가 동일한 원장을 분산 관리하는 블록체인은 일부 참여자에 문제가 생겨도 장애가 일어나지 않는 복원력을 갖추었습니다. 복원력은 동기화 환경과 결함 유형에 따라 다른데, 동기 또는 부분 동기 시스템에서 BFT 계열 합의 알고리즘을 사용하면, 전체 노드의 1/3 이상에서 동시에 비잔틴 결함(Byzantine fault)5이 발생하지 않는 한 시스템이 정상 동작 합니다.

LINE Financial Blockchain은 이 모든 요건을 세심하게 고려해 만들어졌습니다.

블록체인 기술은 아직 발전을 거듭하고 있습니다. 빠르고 안전한 CBDC 시스템을 위해서는 시시각각 변화하는 기술을 따라가는 것도 중요합니다. LINE Financial Blockchain과 함께 그 첫걸음을 시작하세요.


1. 이명활, <중앙은행 디지털화폐(CBDC)의 이해: 해외의 주요 논의내용 및 시사점>, 2019

2. BIS, Central bank digital currencies: foundational principles and core features, 2020

3. 소액 거래를 지원할 때 한정

4. 단, 검증 주체가 존재하지 않거나 각 참여자가 관리하는 원장이 다르면(비 동일 원장 분산 관리) 잠재적인 단일실패점 문제가 있음

5. 시스템이 멈추거나 오류 메시지를 보내거나 다른 시스템에 잘못된 값을 전달하는 등의 장애