본문 내용으로 건더뛰기

KDI 경제정보센터

16개 경제부처가 만드는
국내 유일의 경제 정책 정보지

나라경제

발행물

칼럼

‘디앱’이 몰려온다
류한석 류한석기술문화연구소 소장 2019년 08월호

비트코인이 블록체인 기술을 이용해 단지 암호화폐를 구현하는 것에 초점을 뒀다면, 이후에 등장한 블록체인 기술은 한층 발전해 ‘스마트 컨트랙트(smart contract)’ 또는 ‘스마트 계약’으로 불리는 일종의 디지털 계약 기능을 지원한다. 최근 들어 스마트 컨트랙트는 블록체인의 가치를 한층 높여주는 핵심 기능으로 큰 주목을 받고 있다.

1994년 나온 스마트 컨트랙트 개념, 2015년 이더리움이 본격 구현
스마트 컨트랙트는 간단히 말해 일반적인 계약서의 역할을 블록체인을 통해 구현한 것이다. 스마트 컨트랙트를 이용하면 컴퓨터 프로그램 형태로 프로그래밍된 계약 조건에 따라 특정 이벤트가 발생할 때 자동으로 계약이 수행된다. 이렇듯 자동화된 특성을 통해 스마트 컨트랙트는 계약 조건을 강제하고 계약 조건이 제대로 준수됐는지 확인할 수 있다.
원래 스마트 컨트랙트라는 개념은 현재의 블록체인과는 별개로 1994년에 나온 것이지만 당시에는 이를 구현하기에 적당한 기술이 없었다. 그러다가 블록체인 기술이 등장하고 2015년경 커다란 주목을 받은 이더리움(Ethereum)이 스마트 컨트랙트 기능을 본격적으로 제공하면서 이에 대한 관심이 크게 높아졌다. 이후 스마트 컨트랙트는 블록체인의 중요한 기능 중 하나로 평가받았으며 이를 이용해 개발된 다양한 블록체인 기반 서비스들이 속속 등장하는 추세다.
스마트 컨트랙트를 기반으로 만들어진 애플리케이션을 ‘분산형 애플리케이션(decentralized application)’ 또는 ‘탈중앙화 애플리케이션’이라고 한다. 줄여서 ‘디앱(DApp)’ 또는 ‘댑’이라고도 부른다. 이더리움 외에도 이오스(EOSIO), 네오(NEO) 등과 같은 여러 블록체인 플랫폼이 스마트 컨트랙트를 지원하고 있다.
정리하면 스마트 컨트랙트는 블록체인 네트워크에서 작동되는 일종의 프로그램으로 분산형 애플리케이션(디앱)의 형태로 만들어지며, 어떤 목표를 달성하기 위한 요구사항에 맞춰 개발자가 프로그래밍하고, 특정 상황에서 조건이 충족되면 자동으로 수행된다.

금융, 법률, 게임, 의료, 교육 등 다양한 분야에서 디앱 개발 중
분산형 애플리케이션과 달리 중앙 서버의 통제를 받아 목표를 달성하는 애플리케이션을 ‘중앙집중형 애플리케이션(centralized application)’ 또는 ‘중앙화 애플리케이션’이라고 한다. 중앙 서버가 전체 시스템을 통제하는 방식에서는 서버의 데이터베이스에 정보가 저장되고 시스템의 운용을 서버가 관리한다. 하지만 순수한 블록체인에서는 중앙 서버가 존재하지 않으며 서버가 가졌던 신뢰와 권한을 블록체인 네트워크에 참여하는 수많은 컴퓨터가 나눠 갖는다.
블록체인에서는 중앙 서버가 존재하지 않는다고 표현했는데, 이는 다르게 말하면 블록체인에 참여한 각각의 컴퓨터가 모두 서버의 역할을 수행하는 것과 마찬가지라고 볼 수 있다. 그런 구조로 인해 블록체인에서는 별도의 서버를 구축하고 관리할 필요가 없는 것이며, 결국 서버의 역할이 블록체인 네트워크에 참여한 컴퓨터들에 분산돼 있다고 이해하면 된다.
블록체인에서는 네트워크에 참여한 다수의 컴퓨터가 암호 기술에 기반한 증명을 통해 거래의 진위 여부와 완료 상태를 결정하고 블록체인에 영구히 저장한다. 블록체인은 이러한 기술적 구조를 통해 소유권 증명 및 이전 작업에 대한 높은 신뢰성을 제공하며 소유권 조작, 위조, 명의도용 등에서 안전하다.
이와 같은 맥락에서 스마트 컨트랙트에 기반한 디앱 또한 마찬가지로 네트워크에 연결된 다수의 컴퓨터가 상호작용하면서 공통의 목표를 달성하고 그 결과를 블록체인에 저장하는 방식으로 작동한다.
스마트 컨트랙트라는 용어 때문에 이것이 단지 계약서상의 계약 조건만을 대상으로 하는 것으로 오해할 수 있다. 하지만 스마트 컨트랙트를 이용하면 일반적인 업무 프로세스나 비즈니스 로직(business logic)도 프로그램으로 만들 수 있으며 업무용 애플리케이션뿐만 아니라 게임도 만들 수 있다.
스마트 컨트랙트를 구현하기 위해서는 각각의 블록체인 플랫폼이 지원하는 개발 방법과 프로그래밍 언어를 학습해야 하는데 이는 개발자의 영역이다. 앞으로 스마트 컨트랙트가 보다 대중화되면 웹 개발자나 모바일 앱 개발자처럼 디앱 개발자도 더욱 늘어나게 될 것이다.
현재 스마트 컨트랙트를 활용해 금융, 법률, 게임, 의료, 교육 등의 다양한 분야에서 디앱이 개발되고 있다. 지면 관계상 디앱의 구체적인 사례들은 추후 별도의 주제로 살펴보려고 한다.
그렇다면 앞으로 블록체인을 기반으로 작동하는 디앱의 미래는 어떻게 전개될까? 역사가 반복되는 것처럼 IT 역사도 반복되는 측면이 있기 때문에 웹 초기의 경험에 대입해서 생각해볼 수 있다. 과거에 인터넷이 세상에 나온 후 콘텐츠 표현 방식 중 하나로 HTML과 이를 사용하는 웹이 등장했다. 이후 웹 기술은 끊임없이 진화했으며 웹 기술로 개발된 엄청나게 다양한 웹 서비스들이 시장에 등장했다. 그리고 치열한 경쟁이 벌어지면서 많은 웹 서비스가 실패했으며 살아남은 일부 웹 서비스들은 대중에게 큰 사랑을 받게 됐다.
이와 흡사한 맥락에서 앞으로 블록체인 기술이 확산되면 많은 기업이 블록체인에 기반한 다양한 디앱을 시장에 선보일 것이다. 하지만 모든 디앱이 성공할 수는 없고 또 그럴 필요도 없다. 시장에 등장한 많은 디앱이 실패하겠지만 일부는 성공해 주요 서비스로 자리 잡고 상당한 수익을 올리게 될 것으로 전망된다.
세계 각국에서 블록체인의 미래 전망을 밝게 생각하는 많은 개발자가 블록체인 기반의 디앱 개발을 위해 노력하고 있다. 다만 모든 애플리케이션이 디앱에 들어맞지는 않는다. 무엇보다 디앱에 맞는 ‘킬러앱(killer app)’을 발굴하는 게 중요하다고 볼 수 있다.

KDI 경제정보센터