Crypto Cannon 번역: Fat Protocol
Edited by : 구광민(한양대_PROOFER), 박민서(중앙대_C-Link)
Key-concept팀은 블록체인의 가장 기본적이고 중요한 요소들을 다루는 팀입니다. 블록체인이 매력적인 이유와 기능을 살펴보고, 여러 의견과 비판을 공유하는 것을 목표로 글을 쓰려고합니다. 주로 블록체인과 관련되어 언급되는 키워드 중심의 글들을 참고할 예정입니다. 이번 글은 Crypto Cannon에 실려있는"Fat Protocol"글을 번역하고 이에 관련된 글을 참고하여 작성된 내용입니다.
2016년 Joel Monegro의 “Fat Protocols”는 우리가 지금까지 사용한 인터넷의 프로토콜 스택 구성과 블록체인의 프로토콜 스택 구성에는 차이점이 있다고 주장한다.
프로토콜: 주로 통신 목적에서 상호간 사전에 공유되어야하는 데이터 처리 규약으로, 같은 프로토콜을 사용해야만 정상적인 통신이 가능하다.
블록체인 등장의 전후, 프로토콜에 대한 관심의 차이만 봐도 이 글의 타당성을 알 수 있다. 단편적인 예로, 우리는 Google과 Facebook의 인터넷 프로토콜이 TCP인지 UDP인지 궁금하지 않았지만, 비트코인과 이더리움의 트랜잭션 처리 속도나 합의 알고리즘에 대한 관심은 많다. 비교하는 두 프로토콜에는 차이점이 있다. TCP와 같은 인터넷 프로토콜은 데이터 운반 목적으로 Addressing, Connection Establishment, Multiplexing, Flow Control 등 많은 부분이 연구되어 사용중이지만, 블록체인은 인터넷 프로토콜에 없던 새로운 기능과 다른 목적의 Overlay Network로써 다양한 과제가 쏟아지고 있다. “Fat Protocol” 글에서는 가치확보(value captured)를 중심으로 프로토콜이 “살찌게” 된 이유를 설명하였다. 이와 더불어, 어플리케이션이 가졌던 데이터의 권한이 프로토콜 레벨로 옮겨진 관점에서도 프로토콜은 두꺼워졌다. 이 두 가지 측면의 Fat Protocol을 살펴보려 한다.
Joel은 일반적으로 네트워크 프로토콜 계층을 표현하는 스택을 이용하여, 이를 어플리케이션 계층과 프로토콜 계층으로 나누고, 기존 인터넷 환경과 블록체인의 가치 분포를 두께로 비교했다. 기존에는 어플리케이션 레벨에서 서비스를 개발하는 Google과 Facebook 등이 가치를 창출하며 성장했고, 그 바탕이 되는 인터넷 프로토콜은 주목받지 못했다. 그림 1에서 볼 수 있듯이, 기존에는 얇은 프로토콜 계층 위의 어플리케이션 계층이 두껍게 묘사되었다. 그러나 블록체인에서는 두 계층의 두께가 역전한다. 그 근거로 비트코인 기반의 회사 가치가 비트코인 네트워크 자체의 시가총액을 넘지 못하는 것, 그리고 좋은 어플리케이션들이 자리 잡기 전부터 그 가치가 오르고 있는 이더리움을 이야기한다. 이렇게 시장의성장에 따른 투자 대상도 블록체인에서는 어플리케이션에서 프로토콜로 내려왔다.
공유 데이터 계층
블록체인에서 가치의 반전이 일어나는 이유는 공유 데이터 계층(Shared Data Layer)과 프로토콜 토큰때문이다. 일반적인 방식으로는 어플리케이션마다 서로 다른 서버에 데이터를 저장하고, 서비스 제공자만 해당 데이터에 접근할 수 있다. 그러나 블록체인은 탈중앙화 네트워크에 데이터가 모두 복제되며, 같은 블록체인 네트워크에 기반한 모든 어플리케이션들이 데이터를 공유한다. 이러한 데이터에 대한 높은 접근성으로 인해 상호 호환이 가능한 서비스들은 경쟁에서 살아남기 위해 비용을 절감하고, 제품 품질을 개선하며, 결국 새로운 혁신 개발 시장이 활성화된다. 블록체인의 공유 데이터 계층이 가치를 창출하는 이유이다.
프로토콜 토큰
다음으로 프로토콜 토큰의 역할은 “Token Feedback Loop” 를 통해 설명할 수 있다.
먼저 토큰의 가치가 상승하면서 투자자, 개발자, 사업가 등이 관심을 가지게 되고, 프로토콜에 금전적으로 투자를 한다. 이 때, 초기의 토큰 가치 성장은 프로토콜에 대한 투기에 좌우된다. 프로토콜의 가치가 상승하면 이미 투자를 했던 토큰 소유자들은 이익을 챙긴다. 이익이 생긴 이해관계자들은 토큰의 가치가 더욱 상승할 것으로 예측하여, 이익의 일부를 제품과 서비스를 구축하기 위해 사용한다. 구축된 제품과 서비스 중 일부가 성공하여 새로운 사용자들과 VC, 투자자들을 네트워크로 끌어들이게 되고, 이는 다시 토큰의 가치 상승을 야기하며 프로토콜 투자로 이어지는 순환 구조를 이룬다.
Token Feedback Loop에서도 볼 수 있듯이, Joel은 토큰에 의한 어플리케이션과 프로토콜의 가치 상생에 주목하고 있다. 이는 어플리케이션이 독식하던 기존 생태계와 달리, 가치가 분산되어 있음을 뜻한다. 오히려 어플리케이션들의 성공이 프로토콜에 대한 추가적인 투자를 장려하기 때문에, 프로토콜의 시가총액이 어플리케이션의 가치보다 빠르게 성장함을 주장한다. 이것이 토큰화된 프로토콜 계층이 두터워지고 어플리케이션 계층이 얇아진 이유다.
블록체인의 공유 데이터 계층은 데이터의 접근성에 대한 변화를 가져왔다. 공유 데이터 계층에 관해 Joel은 “The Shared Data Layer of The Blockchain Application Stack” 글에서 그 차이를 설명한다. 기존 방식과 블록체인은 모두 개인정보를 암호화하여 저장하지만, Dropbox와 같이 기존 방식에서는 서비스 제공자가 데이터와 복호화를 위한 키를 모두 가지고 있기 때문에 사적인 데이터에 대한 접근에서 안전을 보장할 수 없다. 그러나 블록체인은 데이터를 네트워크 참여자 모두가 가지며, 그 데이터 접근을 위한 키를 사용자 스스로가 지니므로 허가없이 접근이 불가능하다.
데이터의 접근성과 더불어, 블록체인의 프로토콜 계층은 기존 어플리케이션 계층의 데이터 권한을 가진다. 우리가 Facebook에 가입을 하면 계정 정보를 어떤 형식으로, 어떤 절차로 저장할지 Facebook 어플리케이션에서 정한다. 로그인을 하기 위해서는 Facebook의 데이터베이스에 저장되어있는 계정 정보를 활용하여 서버와 클라이언트 어플리케이션이 인증해주고, 작성하는 글이나 사진 같은 개인정보 또한 서비스 제공자가 소유하고 관리한다. 이러한 데이터의 권한이 전송기능만 담당하던 프로토콜 계층으로 이동하면서, 데이터로 가치를 창출하던 어플리케이션의 역할이 줄어들고, 프로토콜이 처리하고 관리해야 하는 일이 많아졌다. 블록체인의 어플리케이션 계층에서 프로토콜 계층으로 이전된 데이터 권한은 데이터 정의, 저장, 관리로 나누어 볼 수 있다. 각 데이터 권한이 블록체인에서 어떻게 달라지는지 비교해보자.
먼저, 데이터의 전송에 대해서 간단하게 알아보자. 기존 네트워크 프로토콜은 어플리케이션의 데이터 전송을 위한 패킷의 헤더를 정의한다. 송신자는 캡슐화, 수신자는 역캡슐화 작업을 수행하는데, 프로토콜에서 데이터 전송을 위해 헤더를 작성하는 것을 캡슐화(Encapsulation), 수신자가 헤더를 해석하여 처리하고 버리는 것을 역캡슐화(Decapsulation)라고 한다.
전송이 된 후에는 데이터를 저장한다. 기존의 프로토콜 레벨에서는 저장되는 데이터에 관여하는 일은 거의 없었다. 그러나 블록체인에서는 기본적으로 데이터를 블록 단위로 저장한다. 프로토콜마다 블록의 형식도 다르며, 기존 서버와 비교했을 때 네트워크 참여자로서 로컬 저장소에 쌓이는 데이터의 형식을 어플리케이션으로 다루지 못하는 것은 낯선 일이다.
블록체인의 데이터는 어플리케이션이 네트워크에 제출한다고 모두 저장되는 것도 아니다. 프로토콜이 합의과정을 통해 해당 데이터의 타당성을 검증하고 승인을 받아야 데이터가 저장될 수 있다. 민감한 데이터의 사생활 보호가 보장되지 않는 어플리케이션 레벨과 정반대이다. 어플리케이션은 특정 이벤트가 발생할 때마다 원하는 데이터를 저장하도록 설계할 수 있다. Facebook을 열면 나의 접속상태가 모든 친구들에게 알려지고, Youtube 영상을 한 번 클릭만해도 추천 영상이 바뀌는 것이 나의 허가없이도 이루어지고 있음을 모두 알고있다.
마지막으로 데이터를 프로토콜이 관리하므로 변조나 인위적인 수정이 불가능하다. 서버관리자로서 어플리케이션 레벨에서의 데이터 접근은 어렵지 않을 수 있다. 극단적인 예로, 게임 회사 서버관리자가 그 회사의 게임 속 게임머니를 원한다면 서버의 데이터베이스를 조금 수정하는 단순 작업으로 원하는 만큼 가져갈 수 있다. 하지만, 블록체인은 정해진 프로토콜 이외의 행위가 데이터에 영향을 주려해도 다른 참여자들에게 승인 받을 수 없다. 이러한 이유로 블록체인의 프로토콜은 어플리케이션 계층보다 역할이 많아지고 필연적으로 두꺼워졌다고 할 수 있다.
지금까지 블록체인에서 어플리케이션 계층과 프로토콜 계층의 두께 역전 현상이 일어난 이유를 살펴보았다. 사실 제대로 구현된 어플리케이션이 없는 프로토콜의 가치에 집중되면 투자가 투기로 변질될 수도 있다. 하지만 프로토콜을 막연히 투자의 대상으로 보지 않고, 이 글에서 주장한 데이터 권한도 함께 고려한다면 기술적인 시각으로 평가할 수 있다. 현재 블록체인은 속도, 효율성, 확장성 등 문제점에 대한 많은 토론들이 오가는 중이다. 이러한 연구와 시도를 통해 더 안정된 프로토콜을 완성한다면 우리가 접하지 못했던 새로운 세계가 열릴 것이라 확신한다.