테크 #백서리뷰#기술분석#비트코인#이더리움#tech
도지더리움으로 보는 인터체인의 역사1 - 도지더리움의 탄생
최신 인터체인 기술을 망라한 도지더리움, 검증 솔루션이 핵심
이종 블록체인을 엮는 인터체인로 새로운 블록체인 비즈니스 가능할 것
업계에서는 프라이버시 인터체인 등 연구 논의 중
강민승 기자
등록일: 2019-07-08  수정일: 2019-07-11


시간없는 그대에 바치는 요약(TL; DR)

도지더리움은 최신 인터체인 기술을 망라한다.

도지더리움은 양방향 교환을 위해 보증금을 토대로 운영되는 브릿지를 사용한다.

☛도지코인을 이더리움에서 검증하려는 난제는 트루빗의 아이디어로 해결했다.

프라이버시 코인의 트랜잭션을 인터체인으로 연결하는 브릿지 등이 연구 중이다.


“인터체인 기술을 통해 다양한 블록체인 상호운용이 가능해지며 여러 프로토콜을 엮는 새로운 프로토콜이 등장할 것이다. 이로써 블록체인 유스케이스를 크게 늘릴 수 있을 것이다.” 박상현 서울대학교 가상머신 및 최적화연구소 석사과정연구원은 지난 이드콘 2019에서 인터체인 기술을 강조하며 이같이 말했다.


서로 다른 블록체인 간 자산을 교환하고 인터페이스를 정의하는 기술을 인터체인이라고 한다. 도지더리움은 도지코인과 이더리움 블록체인 간 안전한 데이터 전송을 위해 고안된 브릿지를 말한다. 도지더리움은 인터체인 기술을 총망라한 것이라고 할 만큼 블록체인의 역사에서 기념비적인 작품이다. 도지더리움을 통해 인터체인의 역사와 인터체인 최신 기술 트렌드를 알아보자.


도지코인의 탄생과 인터체인의 시작

태초에 빅뱅처럼 비트코인이 탄생했다. 비트코인의 탄생은 P2P 네트워크에 있어 커다란 사건이었다. 시간이 흐르고 비트코인을 포크해 라이트코인이 탄생했다. 라이트코인을 포크해 럭키코인이 탄생했다. 빌미 마커스와 잭슨 팔머는 럭키코인을 포크한 도지코인을 2013년 12월 탄생시켰다. 이들에 따르면 도지코인의 탄생은 순전한 장난으로 시작했다. 도지코인은 일본의 시바견을 상징으로 삼았다. 도지코인은 시바견을 간판으로 삼아 도지코인 투더문 등 여러 합성 사진을 만들어냈고 이것들은 인터넷 커뮤니티에서 빠르게 밈으로 자리잡았다. 이로써 도지코인은 블록체인계의 마스코트라고 불리며 빠르게 유명해졌다.


시바견의 얼굴을 한 도지코인의 귀여운 이면에는 복잡한 기술적 요소가 자리잡고 있었다. 실제로 도지코인은 주문형반도체(ASIC) 등 채굴기를 통해서 채굴하기 어렵게 설계됐다. 채굴장비에 저항하는 메모리하드 작업증명(PoW) 알고리즘을 사용하기 때문이다. 메모리 하드 알고리즘을 사용하면 ASIC 채굴에 저항할 수 있지만 스마트 컨트랙트에서 도지코인의 블록헤더를 검증하기도 어려워진다. 한편 2014년부터 도지코인과 라이트코인은 마이닝 풀에서 병합됐다. 채굴자 입장에서는 도지코인을 채굴하면 라이트코인도 획득할 수 있게 돼 일석이조인 셈이었다. 하지만 이후 도지코인의 코어 개발자가 도지코인을 상당수 떠나며 마이닝 풀도 얼어붙으며 인기도 시들해졌다.


그러던 와중 2015년에 이더리움이 탄생했다. 이더리움에 메모리 하드 알고리즘을 사용하는 도지코인을 연결하고 검증하는 모든 절차는 이더리움 진영에 대단한 도전처럼 여겨졌다. 실제로 이더리움의 창시자 비탈릭 부테린은 도지코인 체인에서 발생한 단 118개의 트랜잭션을 이더리움 네트워크에서 검증하는데도 37억가스가 필요하다고 계산한 바 있다.


이는 이더리움의 가스 제한을 초과해 실행자체가 불가능한 수준이었다. 가스란 이더리움 블록체인에서 이뤄지는 일의 양을 측정하는 단위를 말한다. 연산량이 많은 작업은 가스가 많이 든다. 이더리움 트랜잭션 한 개에서 발생하는 가스는 일반적으로 2만1000위(Wei) 정도가 소모된다. 이에 비하면 도지코인의 검증은 매우 거대한 연산이었다. 비용도 만만치 않았다. 도지코인의 모든 데이터가 아닌 헤더값만 뽑아 검증하는데도 하루에 1만달러(한화 약1200만원)가 드는 수준이었다. 


외부의 블록체인을 검증할 수 있다면 둘을 연결하는 인터페이스인 인터체인을 위한 준비 작업은 사실상 끝났다고 할 수 있다. 몇 단계만 거치면 이더리움과 도지코인 블록체인을 연결해 데이터를 주고받고 스마트 컨트랙트도 이상없이 사용할 수 있게 된다. 예를 들어 이더리움의 스마트 컨트랙트를 실행하는데 도지코인을 지불할 수 있게 된다. 


토큰의 무결성이 검증되면 서로 다른 블록체인을 연결하는 상호운용성을 안전하게 확보할 수 있다. 한쪽 블록체인에서 데이터를 악의적으로 변경하는 경우를 탐지해 막을 수도 있다. 한편 서로 다른 블록체인 간 코인이 교환되기 시작하면 프로토콜의 가치가 상승하는 부차적인 효과도 있다. 서로 다른 블록체인 간 인터넷이 가능해지기 때문이다. 


도지코인 PoW 검증 난제, 트루빗 스마트 컨트랙트로 해결

하지만 도지코인을 검증하는 과정은 쉽지 않았다. 이더리움은 애초에 가스 제한량을 두고 있기 때문에 도지코인의 검증은 사실상 불가능했다. 이더리움이 가스의 제한량을 두는 이유는 해킹 등 네트워크 리소스를 악의적으로 차지하는 경우를 방지하기 위함이다. 실제로 이더리움에서는 도지코인 뿐만 아니라 암호학 프로토콜 등은 수수료 가스 초과로 온체인에 구현할 수 없는 경우가 많다. 대부분의 경우 이같은 기능의 테스트를 온체인에서 수행하기도 어렵다. 그렇다고 이더리움 자체의 수수료 제한선을 풀어버릴 수도 없다. 수수료 경제에 기반하는 이더리움의 합의 알고리즘에서 수수료를 변경한다는 건 이더리움을 처음부터 다시 만드는 작업과도 같다. 또 수수료 제한을 없애면 시빌 공격, 스팸, 연산 과부하 등 네트워크 공격에 취약해질 수도 있다. 


여러 시행착오 끝에 도지코인과 이더리움을 연결하는 브릿지가 건설되기 위한 세 가지 전제 조건이 세워졌다. 첫째는 이더리움과 도지코인은 서로 다른 합의 알고리즘으로 각각 운영하며 누구 한쪽을 전적으로 개조할 수는 없다는 점. 둘째는 연산량을 획기적으로 감소시킬 방법이 필요하다는 점. 셋째는 채굴자의 권한 등 거버넌스를 다루는 방법이 필요하다는 점이었다.


지난 2017년 만우절에 이같은 조건을 만족시키는 도지더리움 브릿지가 발표됐다. 도지더리움이라는 이름은 도지코인과 이더리움을 합성해 만든 말이다. 도지코인 블록체인은 이더리움과 섬처럼 떨어져 존재하는데 트루빗 스마트 컨트랙트가 둘을 연결하는 다리로 사용됐다. 트루빗 스마트 컨트랙트가 도지코인 스크립트를 중간에서 검증하는 역할을 수행한다. 실제로 트루빗이 C++로 작성된 도지코인의 PoW 스크립트를 오프체인에서 검증하고 그결과를 스마트 컨트랙트로 이더리움에 전달한다. 


트루빗은 오프체인에서 연산을 대행하는 오라클 솔루션이라고 볼 수 있다. 블록체인에서 오라클은 블록체인으로 외부 데이터를 받아오는 게이트웨이 서비스를 말한다. 오라클 서비스 특성상 오프체인에서 결과를 가져오기에 구조상 다른 데이터가 침범하거나 올바르지 않은 데이터가 유입될 가능성도 있다. 때문에 트루빗은 오프체인에서 처리한 결과값을 믿을 수 있는지 보증하기 위해 자체에 챌린지 메커니즘을 탑재하고 있다. 


누군가가 제출한 연산 결과에 대해서 올바르지 않다고 챌린지를 걸면 검증 게임이 시작된다. 검증 게임이란 데이터 제출자와 도전자가 제출된 자료 데이터의 진위를 두고 벌이는 내기와 같다. 데이터를 제출한 기존 제출자가 옳은지 도전자가 옳은지 스마트 컨트랙트 상에서 검증하게 된다. 모든 코드를 이더리움가상머신(EVM)에서 검증하기란 현실적으로 어렵지만 트루빗은 명령어가 불일치하는 지점만 온체인에서 구동해 검증한다. 트루빗은 일종의 블록체인 블랙박스인 셈이다. 오프체인으로 들어온 데이터의 검증은 스마트 컨트랙트로 수행된다. 명령어를 구동하기 위한 웹어셈블리(WASM) 인터프리터가 컨트랙트 안에 구현돼 있다. 트루빗이 등장하며 도지코인 블록체인의 데이터가 올바른지 이더리움에서도 명시적으로 확인할 수 있게 됐다. 한편 도지더리움 브릿지의 스크립트 검증기능은 트루빗 라이트 클라이언트 버전으로도 작년 등장했다. 


도지더리움 브릿지에는 보증금이 사용된다

도지더리움은 트루빗을 차용해 도지코인의 데이터 검증을 위한 준비는 끝냈다. 도지더리움에서는 도지코인을 본격적으로 전송하기 위한 여러 부품을 조립해 완성된 브릿지의 모습을 만들어갔다. 서로 다른 블록체인을 연결하는데 있어서 브릿지 방식을 사용하는 이유는 블록체인 자체를 수정할 필요가 없다는 이유가 지배적이다. 블록체인을 상대방에 맞게 개조하는 작업도 물론 가능하긴 하다. 다만 블록체인에 연산코드(옵코드)를 추가해야 해 하드포크가 필요해져 일반화된 솔루션이 되기 애초에 어렵다. 그렇다고 모든 데이터를 상대편 체인으로 그대로 넘겨주는 방식은 데이터의 양도 많을 뿐더러 인터체인 솔루션으로써 효율이 떨어진다.


반면 도지더리움에서는 자원을 양방향으로 주고받기 위해 중간에 담보를 예치하는 대행자를 둔다. 인터체인 프로토콜에 등장하는 중간사업자인 셈이다. 운영자는 토큰 전송을 전담하면서 브릿지에서 발생하는 수수료를 획득할 수 있다. 담보를 이같이 예치하는 브릿지 방식을 콜레트럴 브릿지라고 부른다. 데이터가용성(DA) 문제 등 운영자의 비정상행위가 발생하거나 토큰 전송에 문제가 발생하면 운영자의 보증금이 삭감된다. 이는 브릿지에서 정책상 시행하는 경제적인 처벌에 해당한다. 한편 이종 체인을 연결하는 브릿지로는 콜레트럴 브릿지를 비롯해 다중 서명을 활용하는 멀티시그 브릿지 등의 방식이 있다.


도지더리움 브릿지의 작동 방식

사용자는 이더리움 네트워크로 자신의 도지코인을 보내려면 먼저 자신의 계정에서 보유한 도지코인을 운영자가 지시하는 도지코인 주소로 보내야 한다. 도지코인이 전송되면 스마트 컨트랙트는 전송된 도지코인의 소유권을 잠근다. 토큰을 잠근 트랜잭션은 도지코인 블록안에 잠금 행위를 기록한다. 블록의 정보는 도지더리움 브릿지로 전송되고 브릿지는 해당 블록의 기록이 올바른지 검증하게 된다. 이상이 없으면 릴레이어는 브릿지 컨트랙트에 트랜잭션을 보내 코인의 잠금이 완료됐고 브릿지에서도 납득할 수 있다고 전파한다. 인터체인에서 릴레이어란 주로 블록 헤더 정보를 등록하는 주체를 말한다.


신호를 받은 이더리움은 컨트랙트를 통해 사용자에게 이더리움 플랫폼에서 사용할 수 있는 와우토큰을 민팅해 지급한다. 민팅이란 코인을 주조하는 행위를 뜻한다. 와우토큰이라는 명칭은 시바견이 짖을 때 나는 소리를 받아적어 만들어졌다. 와우토큰은 ERC-20 표준을 따르지는 않지만 ERC-20을 확장한 형태를 지니고 있다. 사용자는 이더리움 컨트랙트나 게임 등에서 와우토큰을 사용해 지불할 수 있다. 


잠긴 코인은 특정한 조건이 충족돼야 소유권 잠금을 풀 수 있다. 잠금을 푸는 행위는 사용자가 와우토큰을 태워 파괴하는 절차에 해당한다. 사용자가 와우토큰의 잠금을 풀면 와우토큰은 도지코인으로 형태가 되돌아오고 사용자의 본래 주소로 회수된다. 만약 운영자가 토큰을 파괴한 사용자에게 도지코인을 전송하지 않으면 컨트랙트는 운영자의 보증금에서 해당하는 금액을 빼내 사용자에게 전송한다. 브릿지가 정상적으로 종료되면 컨트랙트는 운영자의 이더리움 보증금을 운영자에게 반환해준다. 


브릿지를 도입해 얻게 되는 효과는 크다. 브릿지 방식은 사용자 커뮤니티를 활용할 수 있다는 장점이 있다. 커뮤니티가 참여해 브릿지의 역할을 수행하고 인센티브가 순환하면 브릿지는 더욱 활성화될 수 있다. 실제로 콜레트럴 브릿지의 역할을 수행하는 주체는 운영자, 사용자, 릴레이어 등 여럿으로 나뉘는데 이들의 활동을 장려하기 위해 도지더리움 브릿지는 참여자에게 인센티브 시스템을 도입하고 있다. 올바른 정보를 기록하면 토큰 보상을 주고 비정상적인 행위를 한 참여자의 토큰을 몰수하는 방식이다. 한편 브릿지는 블록체인 자체를 개조하는 하드포크와 달리 자체 업그레이드가 수월하다. 때문에 여러 기능을 쉽게 개선할 수도 있다.


또 이더리움과 도지코인이 브릿지로 연결되면 이더리움과 그동안 섬처럼 떨어져 존재했던 도지코인에 접근해 저장된 블록 데이터를 이더리움에서 읽어올 수 있게 된다. 반대로 도지코인 홀더는 이더리움에서 와우토큰을 사용해 이더리움 상에서 벌어지는 거래에 참여할 수도 있다. 스마트 컨트랙트 기능이 없는 도지코인에서 스마트 컨트랙트를 사용할 수 있고 이더리움에서는 도지코인 화폐를 사용할 수 있으니 서로 윈윈인 셈이다.


이같은 인터체인 기능이 더욱 발달하게 되면 비트코인, 이더리움, 도지코인을 모두 연동할 수 있게 된다. 예를 들어 이더리움 플랫폼에서 비트코인과 와우토큰을 직접 교환하는 등의 연산도 가능해진다. 이더리움 뿐만 아니라 스마트 컨트랙트를 지원하는 여러 블록체인으로 토큰을 내보낼 수 있게 된다. 이밖에도 새로 만들어진 블록체인에서 발부된 아직 상장되지 않은 토큰도 브릿지를 통하면 이더리움 계좌안에 저장할 수 있게 된다.


브릿지의 보안은 대부분 나카모토 합의에 현재 뿌리를 두고 있다. 나카모토 합의란 네트워크에서 선출된 리더가 다음 블록을 제안하는 방식을 말한다. 비트코인, 이더리움에서는 PoW 문제를 가장 먼저 푸는 노드가 그 시점의 리더를 맡는다. 만약 나카모토 합의가 아닌 다른 합의 알고리즘을 사용하는 이종 블록체인을 브릿지로 연결하는 건 또 다른 기술적 난제다. 나카모토 합의를 사용하는 경우 PoW 블록체인에서 블록헤더가 유효한지 검증하기 수월하다. 한편 비트코인, 이더리움 등 주류 암호화폐가 모두 나카모토 합의에 기초하고 있을 만큼 나카모토 합의의 영향력은 큰 편이다. 


한편 나카모토 합의를 사용하지 않는 암호화폐, 분산원장도 속속 등장하고 있다. 독자적인 합의 알고리즘을 사용하는 알고랜드, 테조스 등이 이에 해당한다. 나카모토 합의를 따르지 않는 블록체인을 사이드체인으로 연결하는 작업은 상대편 블록헤더의 검증이 매우 어렵다는 점이 큰 장애물로 작용한다. 독자 합의알고리즘을 사용하는 프로젝트와 이더리움 등 기존 블록체인에 연결하는 일반화된 인터체인 솔루션은 아직 없다.


도지더리움의 ‘핵심 기술’ 파라미터 토큰, 트루빗, 불렛프루프

브릿지에서 도지코인을 이더리움으로 옮기는 작업은 단계별로 진행된다. 브릿지에는 코인 전송을 위한 일련의 메커니즘이 있다. 도지코인을 이더리움 계열의 와우토큰으로 환전하려면 가치를 매기는 작업이 먼저 필요하다. 와우토큰을 본래 도지코인으로 환전하는 경우도 마찬가지다. 하지만 도지코인과 이더리움의 가격변동은 실시간으로 이뤄지고 있어 쉽지 않다. 브릿지에 전송돼 잠긴 도지코인의 가격이 이른바 떡상하면 상대적으로 이더로 예치된 담보금은 부족해질 수밖에 없다. 결론부터 말하자면 전송되는 도지코인의 실시간적인 가치의 등락은 브릿지에서도 사용자가 감내해야 한다. 도지코인과 이더리움은 기본적으로 스테이블코인이 아니기 때문이다.


다만 도지더리움에서는 코인 가치 등락과 보증금의 가치가 변동하는 상황에서 도지코인과 이더리움 간 매개를 효율적으로 하기 위해 파라미터 토큰 개념을 도입했다. 파라미터 토큰이란 와우토큰을 1/2, 1/4, 2, 4배 등으로 나타낸 단위 토큰을 말한다. 이더리움의 가치가 보존되는 한 와우토큰은 이더리움을 매개 변수를 사용해 배수로 표현한다. 파라미터 토큰은 ERC-20 규격처럼 사용자 간 손쉽게 교환할 수 있는 특징이 있다. 파라미터 토큰을 도입하면 토큰에서 처리할 수 있는 거래 범위가 넓어져 환전 등의 거래에서 잔돈을 줄이는 부차적인 효과도 있다. 한편 이같은 파라미터 토큰은 도지더리움에 예치된 담보에 대한 인센티브로도 운영자에게 주어지기도 한다. 


도지코인 홀더는 가격이 오르든 내리든 해당하는 도지코인 양 만큼 언제든 환전할 수 있어 도지코인을 보유하는 것이나 와우토큰을 보유하는 것이나 단기적으로는 큰 차이는 없다. 다만 와우토큰은 이더의 가치에 맞춰 파라미터로 묶여 있게 되는데 이더리움 가치가 크게 떨어지면 홀더의 와우토큰의 가치도 하락하게 돼 주의가 필요하다. 만약 와우토큰의 가치가 크게 떨어지면 도지코인 가치에 해당하는 원금회수가 어려워 질 수 있다. 한편 환전을 위한 최소 단위량보다 와우토큰의 값어치가 떨어지는 경우 와우토큰을 원래의 도지코인으로 교환할 수 없으니 가격변동에 항상 주의해야 한다. 


브릿지 운영자의 경우 자금을 운영하는데 있어 책임이 더욱 엄중하다. 사용자는 언제든 와우토큰을 도지코인으로 출금할 수 있지만 브릿지 운영자는 수수료를 미리 걷은 만큼 책임감을 갖고 거래가 끝날때까지 브릿지의 예치금을 유지해야한다. 비정상적으로 보증금을 사용할 경우 예치금을 몰수당하게 된다. 


도지더리움은 파라미터 토큰을 비롯해 트루빗, 불렛프루프 등 검증솔루션을 포함하고 있다.트루빗은 거대한 연산을 오프체인으로 돌려 검증, 테스트할 수 있는 검증 오라클을 표방한다. 트루빗은 C, C++, Rust 스크립트로 쓰여진 작업을 검증할 수 있다. 참고로 도지코인은 라이트코인을 수정한 변종 PoW C++ 스크립트를 사용하고 있다. 트루빗의 검증 기능은 최근 스마트 컨트랙트로 구현되기도 했다. 트루빗은 해당 스크립트에서 해시를 추출하는 기능이 올바른지 검증하게 된다.


거래 기록을 업데이트하는 릴레이어는 특정 업데이트로 인한 분쟁이 발생하면 모두를 설득할 수 있는 합당한 증거를 브릿지에 제출해야 한다. 증거는 간결한 영지식 증명의 한 형태인 불렛프루프를 통해 작성된다. 불렛프루프를 사용하면 온체인에 요구되는 연산을 줄이고 검증 절차도 줄일 수 있다. 데이터를 주고받는 인터랙티브한 과정이 없고 영지식증명을 통해 검증에 필요한 데이터 양을 크게 줄였기 때문이다. 업데이트를 다루는 트랜잭션에는 불렛프루프 값이 담기며 스마트 컨트랙트는 이를 간결하게 검산해 검증한다. 단지 선형로그(log(n))의 시간이 소요될 뿐이다.



인터체인 기술력 총집합 도지더리움, 앞으로 방향은?

인터체인 인터페이스를 요약하면 검증과 브릿지 거버넌스라고 할 수 있다. 인터체인을 구현하는데는 상대방 체인의 블록체인의 블록을 검증하는 검증자의 역할이 가장 중요하다. 어떠한 브릿지를 구현하든 전송된 여러 트랜잭션이 유효한지 트랜잭션을 보낸 해당 블록체인을 검증하는 과정은 필수적으로 요구되기 때문이다. 이같은 과정을 간단히 할 수 있도록 최신 인터체인 기술은 검증자를 스마트 컨트랙트로 대체하는 게 현 트렌드다. 


하지만 검증을 스마트 컨트랙트에서 모두 구현하다보면 스마트 컨트랙트에서 처리할 연산량이 많아져 비용도 많이 들게 된다. 이를 해결하고자 오프체인 검증 솔루션인 트루빗 등을 사용한다. 하지만 인터체인 프로토콜은 아직 완벽하지 않다. 브릿지를 신뢰해야만 하는 문제가 바로 그것이다. 비탈릭 부테린도 사이드체인 기술은 중앙화된 솔루션이라고 최근 지적한 바 있다.


박상현 연구원(사진)은 “ 이더리움에서 블록검증을 스마트 컨트랙트로 처리한다 하더라도 블록 정보를 중개하는 릴레이어에게 구조적으로 중앙화될 수 있는 문제점이 있어 이를 여러명이서 수행하는 연합페깅이나 코스모스, 폴카닷, RSK처럼 릴레이어 자체를 블록체인으로 만드는 등 연합 릴레이어를 통해 탈중앙화하는 흐름이 앞으로 이어질 것”이라고 전망했다. 연합 페깅이나 코스모스의 허브, 폴카닷의 릴레이체인 등 신뢰를 분산시킬 방법은 얼마든지 가능하다는 설명이다. 서로 다른 블록체인을 매개하는 인터체인을 구현하는 과정에서 서로 다른 프로토콜을 맞춰주는 시스템이나 프로토콜 연결 작업을 페깅이라고 한다.


인터체인은 최신기술의 집약체로 도지더리움만 보더라도 인터체인에 필요한 수많은 기법을 포함하고 있다. 불렛프루프, 콜레트럴 브릿지, 분산화 거래, 아토믹 스왑, 트루빗 등이 그것이다. 하지만 인터체인 프로토콜에는 아직 더 개발해야 할 분야가 남아있다고 박 연구원은 말했다. 특히 “프라이버시를 위해 트랜잭션 내역이 하이딩 되는 경우 트랜잭션이 실제로 발생됐는지 얼만큼 돈이 움직였는지 검증하기가 외부에서는 어려워 이를 해결하기 위한 솔루션도 필요할 것"이라고 덧붙였다.


[강민승 기자]

디스트리트 커뮤니티 광고
북마크
좋아요 : 0
공유
https://dstreet.io/news/view-detail?id=N20190704173247305864
URL복사
댓글 0
댓글쓰기
댓글 쓰기
에어드랍 가즈아