블록체인의 현재: 신뢰기계, 스마트 컨트랙트
April 4, 2017
블록체인

비트코인 페이먼트 서비스 제공업체 ‘bitpay’에서 2014년 블록체인 기반 인증 기술을 공개한 바 있다. Source : bitpay blog

해외뿐만 아니라 국내에서도 블록체인 기술을 적용한 서비스의 상용화나 개념 증명 사례가 늘고 있지만, 아직은 일상생활에서 자주 접할 수 있는 기술은 아니다. 그래도 블록체인을 이용한 간편인증 서비스나 외환 송금 등 금융 거래 비즈니스 모델들은 블록체인 기술이 등장했던 초기부터 지속해서 연구가 계속되어왔다. 블록체인이 수행할 수 있는 역할을 생각해 보면 이런 서비스에 대한 연구는 너무나 당연한 일인지도 모르겠다.

일반적으로 블록체인이 접목된 여러 서비스 사례들은 기술이 등장하기 이전부터 이미 존재했던 것들이 대부분이다. 그런 이유로 블록체인 기술 도입이 얼마나 유익한지 측정하기란 쉽지 않다. 블록체인 기술에 대해 국내외의 자료들을 살펴본 사람들은 도입을 통한 비용 절감이나 거래의 실시간성과 같은 유용함에 관해 이야기한다. 하지만 한국은 그 어느 나라보다도 소액 거래나 전자 금융, 혹은 전자 정부 인프라가 탄탄한 국가에 속하기 때문에 이런 장점들이 큰 공감을 얻지는 못하는 것 같다.

낙관론자의 주장을 따른다면 블록체인은 이 세상의 모든 문제를 해결할 수 있는 기술이다. 그렇지만, 이 세상에 있는 모든 문제를 굳이 인터넷을 통해 해결하지 않는 것처럼, 블록체인이 세상을 구할 것처럼 생각할 필요도 없다. 인터넷 기술이 처음 등장한 후, 기술이 확산되고 여러 서비스가 등장하면서 그 적용 범위를 넓혔던 것처럼 블록체인 생태계도 성공적인 애플리케이션이나 서비스가 등장하면서 범위를 넓혀나갈 것이다.

이번 칼럼부터는 블록체인 기술이 실제로 사용된 사례를 통해 유익함을 살펴보고 기술이 구현된 방법에 관해 이야기해보려고 한다.

블록체인 = 신뢰 기계(trust machine)

사실 블록체인은 데이터 위·변조를 막고, 데이터를 물리적으로 소유한 주체가 조작하는 일을 막는 등, 우리가 기존에 못하던 일을 가능하게 해주는 기술이기보다는 쉽게 할 수 있던 일을 못 하게 하는 기술에 가깝다. 돈 탭스콧(Don Tapscott)은 최근 출간된 저서, <블록체인 혁명(Blockchain Revolution)>에서 블록체인을 '신뢰 기계(trust machine)'로 표현했다. 바꿔 말해 신뢰에 대한 문제로 비용을 과다하게 소모하거나, 그로 인해 비즈니스 프로세스가 제대로 작동하지 않는다면 당장 블록체인을 적용해도 유익하다는 말이다.

첫 부분에서 언급했던 인터넷 인증이나 외환 송금 서비스는 '신뢰' 비용이 과다하게 발생하는 전형적인 사례다. 공인인증서를 생각해보자. 우리가 온라인에서 인증을 하려면 공인인증서나 SMS 인증과 같은 서비스를 사용하는 것이 보편적이다. 누군가는 신분증을 사진으로 찍어 전송해도 충분하다고 생각할 수 있다. 다만 그런 사진은 누구나 쉽게 위조하고 복사할 수 있는 데이터이므로 사진을 받은 사람도 이를 악용해 얼마든지 신분을 사칭할 수 있다. 그래서 한국 정부는 공인인증서나 SMS 인증에서처럼 특정 기관이 인증을 대행하는 방식으로 문제를 해결하려고 했다.

인증체계를 수립하기 위한 노력은 의미 있는 시도라고 생각한다. 하지만 이런 체계에는 근본적인 한계가 있다. 우선, 인증 기관에 업무가 집중되고, 체계가 획일화하면서 그 체계 자체가 공격의 대상이 되기 쉬워진다. 특정 인증서나 주민등록번호, 전화번호와 같은 획일적인 데이터를 매번 사용하기 때문에 공격자 입장에서는 유의미한 공격 방법을 도출하는 일이 가능해진다. 또한, 그런 공격을 막아보려고 새로운 방법을 찾다 보면 사용자 경험은 계속 퇴화할 수밖에 없다.

'생태계'는 기본적으로 '다안성(diverstability)'의 방향으로 진화한다고 생각한다. 종이 계속 다양해지고 서로를 연결하는 계층이 충분히 복잡해져서 안정성을 더하며 발전한다는 것이다. 다안성이 깨진 사회에서는 자연환경의 사소한 변화도 종의 멸종으로 직결되는 치명적인 사고를 일으킬 수 있다. 그런 측면에서 보면, 최근 국내의 공인인증서 의무사용제가 폐지되고 개인인증을 위한 방법이 다양하게 제공되기 시작한 것은 고무적이다.

블록체인

외환 송금의 경우도 비슷하다. 외환 송금은 기본적으로 개인·은행·국가 사이의 돈에 대한 거래 계약이다. 외환은 종류, 거래 대상, 규모 등이 매우 다양하고, 돈 자체를 실제로 옮기는 데 큰 비용이 들기 때문에 실물 거래 대신 계약서를 통해 외환을 거래하고 나중에 차액을 정산하는 것이 보편적이다. 이때 사용되는 외환 전표를 거래하기 위해 쓰이는 통신망이 '스위프트(SWIFT)'다. 스위프트 회원 은행 사이에서 스위프트 메시지의 전송은 실제로 유효한 신용장 증서로 간주된다.

스위프트는 은행간 통신 수단이지만 시스템의 확장성에 한계가 있으므로 결제 메시지는 회원 은행만 이용할 수 있도록 고안되어 있다. 그리고 그 대가로 회원은행들은 스위프트에 막대한 전신료와 중계, 외환, 망 사용 수수료 등을 지급한다. 금융 기관들은 블록체인을 활용해 스위프트 시스템을 전자 신용장 형태로 발전시켜 서류는 전자 문서를 제시하고 대금은 전자 자금 이체 형식을 원용해 온라인 단일 결제 방법으로 발전시키려고 하는 중이다.

블록체인 기반의 스마트 컨트랙트(smart contract)

이는 단순히 보안이나 접근성에 대한 진보가 아니다. 궁극적으로는 소프트웨어를 통해 인간과 사물에 대한 모든 규칙이 표현될 수 있다는 의미다. 블록체인은 데이터 저장소이기 때문에 프로그래밍 가능한 형태로 규칙을 작성할 수 있다. 가령, '내일 비가 오면 친구에게 비트코인을 보내준다.'는 식으로 다양한 '조건'을 설정할 수 있다. 블록체인에서는 이 기술을 '스마트 컨트랙트(smart contract)'라고 부르는데, 실제 계약처럼 조건과 행위가 정의되고 이를 강제적으로 수행한다는 점에서 적절한 이름이다. 스마트 컨트랙트는 디지털 자원에 대해 여러 당사자의 행위를 수반하도록 만드는 자동화된 계약 메커니즘이다. 이를 이용하면 정부나 그에 따르는 중계기관의 개입 없이도 법률상의 행위들을 정의하고 참여할 수 있다. 스마트 컨트랙트는 탈중앙화된 자동화의 가장 단순한 형식으로, 다음과 같이 정의된다.

간단한 예로 웹사이트 개발 용역 계약을 생각해보자. A가 B에게 웹사이트를 만드는 일로 1,000만 원을 지급하는 계약을 만드는 경우 다음과 같이 진행된다. A는 1,000만 원을 스마트 컨트랙트 형태로 입금하고, 그 금액은 출금이 정지된다. B가 웹사이트 개발 작업을 끝내면 B는 스마트 컨트랙트에게 출금 요청을 할 수 있다. 이때 A가 동의하면 스마트 컨트랙트는 B에게 1,000만 원을 출금한다. 만일 B가 웹사이트 개발을 끝마치지 않고 포기하면, B는 A에게 돈을 돌려주라는 메시지를 스마트 컨트랙트에게 보내고 작업을 그만두면 된다. B는 웹사이트 개발을 끝냈다고 주장하고, A는 동의하지 않는 불일치가 일어나면 대기 시간이 필요하다. 그 후 A나 B에 대한 지지 여부는 판결자 C의 결정에 따른다.

블록체인

스마트 컨트랙트의 개념을 도식화한 그림 / Source: “What is Ethereum?” EtherScripter, 2016

블록체인 기반의 스마트 컨트랙트에서 내용은 당사자간에 투명하게 공개되며 실시간으로 검증할 수 있다. 이런 전자계약이 가져오는 효과는 명백하다. 예컨대 A가 자신의 집을 청소해주는 사람에게 0.1 비트코인을 주겠다는 형태의 주문이나, 얼마의 비트코인을 낸 사람이면 누구나 내 차를 그 시간 동안 탈수 있도록 빌려준다는 계약 역시 스마트 컨트랙트로 구현할 수 있다.

블록체인은 거대한 담론이어서 그것을 도입할 때에는 반드시 그 효과와 전환 비용에 대해 고민해야 한다. 너무나 당연한 이야기지만, 이메일이 편리한 커뮤니케이션 수단이라고 해서 반드시 모든 커뮤니케이션을 이메일로 할 필요는 없다. 이메일로 처리하면 효율적인 업무를 위주로 이메일을 쓰도록 설계하고, 부족한 부분은 고전적 방법을 사용하거나 여러 가지 메신저 서비스를 이용하면 된다. 마찬가지로 블록체인을 썼다는 사실이 중요한 것이 아니라, 어떤 문제를 해결하기 위해 어떻게 블록체인을 쓴 것인지가 중요하다는 것이다.

블록체인으로 구현한 직접 민주주의

블록체인을 통한 투표로 주민 의사를 수렴한 사례는 앞서 언급한 스마트 컨트랙트를 실제로 적용한 좋은 예이다. 블로코는 최근 경기도 주민 제안 공모 사업에 블록체인을 적용했다. 왜 투표일까?

블록체인

투표에 사용된 모바일 애플리케이션 화면. PT 참관과 심사 참여, 결과 확인을 모바일 애플리케이션으로 구현했다. Source: 블로코

그동안 주민들이 제안하는 공모 사업에 대한 평가는 주로 전문가에 의해서 이뤄졌다. 그런데 이런 방식은 전문가가 아주 공정하게 심사를 해야만 가능한 방법이다. 과거의 주민 제안 공모 사업은 전문가 섭외 과정에서 이권이 개입하는 등, 소수의 선택에 의한 의사 결정 체계의 폐해를 고스란히 보여주었다. 경기도는 이런 문제를 해결하려고 전문가 평가와 함께 각 공동체 대표자들이 주민들을 대신해 평가에 참여하는 간접 민주주의의 방식을 도입했지만, 한계가 있었다. 이중 투표나 꼼수 투표와 같은 부정 투표를 막기 어려웠고, 대표자에게 의견을 개진한 참여 주민과 그렇지 못한 주민 사이의 정보 격차는 공동체 내부에 갈등 요소로 작용했다.

경기도는 지난 2월 23일, 간접적인 참여의 문제를 개선하고, 투표 과정을 투명하게 만들기 위해 블록체인 기술 기반의 모바일 공모 사업 심사를 진행했다. 심사의 기본 개념은 투표, 개표, 검증 등 3개로 나뉜 단계마다 후보자와 투표자의 비트코인 장부로 이동한 자산을 실시간 검증하는 것이었다. 실제 투표 과정은 그간 공동체 대표자만 행사장에 모여 평가에 참여하던 간접적 방법에 더해, 주민 모두가 모바일 애플리케이션을 통해 인터넷으로 중계되는 심사 과정을 지켜보면서 사전에 수령한 투표권(QR코드)으로 모바일 투표에 참여하는 순서로 진행되었다. 이 과정에서 블록체인은 모바일 투표 실행에 대한 무결성과 신뢰, 사용 편의성을 높이는 역할을 했고, 담합을 통한 선택이나 주민들 사이의 정보 부조화와 같은 문제들이 함께 해결되었다.

현재 블록체인의 활용은 금융권에 집중되고 있지만, 활용 가능한 영역은 무궁무진하다. 앞서 언급한 대로 어느 영역에 적용해야 실효성이 있는지, 그리고 어떤 노력이 수반되어야 하는지 아직은 많은 연구가 필요하다. 다음 칼럼에서는 다양한 산업별로 블록체인 기술을 적용할 때 고려해야 하는 지점들을 살펴보고 서비스 방향성에 대해서도 알아보려고 한다.

 

*블록체인 전문 스타트업 블로코(blocko) 김종환 대표의 블록체인 칼럼 시리즈 ...더보기

김 종환
김종환은 블로코 공동 대표로, 2012년 비트코인을 처음 접한 후 비트코인 대중화에 앞장서기 위해 2013년 말 비트코인 거래소 'BTC KOREA'를 설립하였고, 비트코인 코어 기술인 블록체인의 무궁무진한 잠재력에 확신을 가지게 되어 이듬해 분산 네트워크를 개발하던 친구와 블로코를 공동 창업했다. 연세대학교에서 법학을 전공한 국내 비트코인 1세대로, 금융권, 공공기관 등에서 다수의 블록체인 컨설팅과 강의를 진행한 블록체인 전문가다.