brunch

You can make anything
by writing

C.S.Lewis

by Daemin Park Jun 24. 2019

창작자가 발행한 토큰을 주고 받는  암호화폐 지갑

플랫폼리스 미디어 블록체인의 기술 (2)

미디어 블록체인은 미디어에 블록체인을 결합한 것이다. 기술 관점에서 블록체인은 앞 절에서 소개한 4개 기능, 즉 지갑, 채굴, 풀 블록체인, 네트워크 라우팅 기능을 갖추고 있다. 그러나 사용자 관점에서 가장 중요한 것은 지갑이다. 즉 UX 측면에서 미디어 블록체인은 ‘미디어+지갑’이다. 


암호화폐를 주고 받으려면 암호화폐 지갑이 필요하다. 암호화폐 지갑을 사용하는 경험은 온라인 통장과 유사하지만, 암호화폐 지갑의 실제 기능은 열쇠 보관소에 가깝다. 지갑은 암호화폐 자체가 아니라 블록체인에 대한 접근 권한을 부여하는 개인키(private key)를 관리한다. 비트코인의 경우 보유한 암호화폐는 전체 블록체인 상에 암호화된 UTXO(Unspent Transaction Output)  형태로 분산 저장된다. 여기서 UTXO란 소비되지 않은 거래 출력값을 뜻한다. 암호화된 UTXO는 암호가 풀리면 출력값이 된다. 


지갑 주인이 암호화폐를 쓸 때는 자신의 개인키를 이용해 UTXO에 걸린 암호를 풀어서 사용한다. 개인키는 아주 긴 길이의 통장 비밀번호와 같다. 다만 한 번 만들면 바꿀 수가 없다. 때문에 절대로 남에게 알려주어서는 안 될 뿐만 아니라 잃어버려서도 안 된다. 공개키는 개인키를 이용해 만들 수 있는데 계좌번호와 같은 역할을 한다. 당연히 공개키는 타인도 알 수 수 있다. 공개키를 입력하면 비공개된 개인키와 일치 여부를 대조할 수 있기 때문에 정확한 거래가 가능하다. 


지갑은 인터넷 접속 여부에 따라 핫월렛(hot wallet)과 콜드월렛(cold wallet)으로 나눠진다. 핫월렛은 인터넷에 접속된 지갑으로 실시간 거래를 할 수 있다. 핫월렛은 온라인에서 접속된 상태이기 때문에 해킹 가능성이 있다. 참고로 핫월렛 해킹 방식으로는 키로깅, 원격조정, 사회공학, 무차별 공격, 개인키 훔치기 등이 있다. 


콜드월렛은 인터넷 연결을 하지 않는 컴퓨터, USB, 외장하드 등에 만들 수도 있다. 콜드월렛도 거래 내역을 업데이트하기 위해 다른 컴퓨터와 연결될 수 있기 때문에 각종 보안 기능을 갖추어 놓는 것이 일반적이다. 개인키를 QR코드로 만들어 종이에 인쇄해 갖고 있을 수도 있다. 앞서 말한 것처럼 지갑은 실제로는 개인키의 보관소일 뿐이다. 콜드월렛은 온라인상 해킹으로부터는 안전하지만 그 자체가 파손되거나 분실될 가능성이 있으므로 유의해야 한다. 


거래 내역을 전부 갖고 있는지 여부에 따라 풀 노드 월렛(full node wallet)과 라이트 월렛(lite wallet)으로 나눌 수도 있다 . 

https://bit.ly/1Yitgi2


풀 노드 월렛은 모든 거래 내역을 갖고 있는 반면 라이트 월렛은 자신의 거래 내역만 갖는다. 풀 노드 월렛은 3자 개입이 전혀 없어 가장 안전한 반면, 항상 인터넷에 접속되어 있어야 하는 등 유지 비용이 높다. 라이트 월렛은 자신의 거래 내역만 보관하며, 거래할 때만 인터넷에 접속해도 되는 등 컴퓨팅 자원이 덜 든다. 이밖에 웹 지갑은 복잡한 개인키가 아닌 아이디, 패스워드 방식으로 접근할 수 있는 등 UX가 주식 계좌와 유사해 편하다. 거래소를 통해 만드는 거래소 지갑이 대표적이다. 


지갑의 기본 기능은 개인키 관리, 공개키 생성, 주소 생성 등이지만 최근에는 다양한 암호화폐 자산 관리 기능을 추가한 지갑이 많아지고 있다. 예를 들면 지갑을 통해 하나의 주소가 아니라 여러 개의 주소를 생성하고 관리할 수 있다. 암호화폐 잔액은 여러 주소에 들어있는 암호화폐의 양을 합한 것이다. 


최근에 나온 많은 지갑은 다양한 토큰의 에어드롭을 하나의 지갑에서 받을 수 있는 기능도 지원한다. 일반적으로 이 지갑은 이더리움이나 이오스 등 특정 코인 기반의 토큰만을 지원한다. 여러 종류의 토큰을 보유하고 있더라도 그 토큰이 기반하는 코인으로 전환되어 합산된 총액을 알 수 있다. 예컨대 C토큰 1개가 1ETH이고 D토큰 1개가 0.5ETH인 상태에서 C코인 2개와 D코인 1개를 갖고 있다면 총 2.5ETH를 갖고 있는 것으로 계산된다. 

보통은 코인이 달라지면 지갑도 달라진다. 그러나 멀티 코인 지갑의 경우 여러 코인도 하나의 지갑으로 관리할 수 있고, 하나의 코인으로 보유한 암호화폐 총량을 알 수 있다. 즉 자신이 0.1BTC과 0.1ETH를 보유하고 있다고 하고 1BTC이 30ETH이라고 하면 총 3.1ETH를 보유한 것으로 알 수 있다. 1ETH가 20만원이라고 하면 총 62만원을 보유한 셈이다. 이더의 현금 가격은 24시간 변동하므로 보유한 암호화폐의 현금 가치도 실시간 변동한다.


멀티 코인 지갑은 빗썸 등 국내 암호화폐 거래소 지갑과 UX 측면에서는 유사하다. 비트코인과 이더리움을 비롯해 이러한 코인에 기반한 토큰 등 모든 암호화폐는 거래소 지갑을 이용해 자유롭게 거래된다. 보유한 암호화폐 자산 가치는 현금으로 환전한 가치로 합산돼 보여진다.


지갑이 특정 암호화폐 기반의 토큰을 만드는 기능을 추가로 제공할 수도 있다. 현재 개인이 토큰을 만들 수 있는 기능을 제공하는 서비스가 있는데 일본의 밸유(VALU)가 대표적이며 블록체인 개발사인 블로코(BLOCKO)가 출시 예정인 갓츄(GOTCHU) 등의 서비스가 있다. 이들 기능을 지갑에 통합하는 것이다. 


미디어 블록체인의 경우 지갑은 초 마이크로페이먼트 기능을 지원해야 한다. 이를 통해 자동 정산된 저작권료를 받을 수 있다. 저작권료 정산은 월 단위로 이루어지는 경우도 많다. 따라서 블록 생성에 걸리는 시간을 과도하게 단축하기 위해 보안성을 희생할 필요성은 적어진다. 


정리하면 미디어 블록체인의 지갑은 다음 기능을 제공한다. 첫째, 개인키 관리, 공개키 생성, 주소 생성 등 키 관리, 둘째, 초 마이크로 페이먼트를 지원하는 이체, 정산, 현금 환전 등 거래 기능, 셋째, 복수 토큰 및 코인 관리 기능, 넷째, 토큰 생성 기능. 이러한 기능을 갖춘 지갑은 한편으로는 블록체인의 트릴레마인 탈중앙성, 확장성, 보안 등을 해결하면서 개발되어야 하므로 기술적 난이도가 낮지 않다. 때문에 필수적이면서 개발이 비교적 쉬운 기능부터 순차적으로 개발돼야 한다. 키를 관리하고 복수의 토큰을 관리하며 단순한 이체를 지원하는 기본적인 기본적인 지갑 기능 외에 미디어 블록체인을 발전을 위해 우선 개발되어야 할 기능은 토큰 생성 기능이다. 이후 저작권 정산 기능과 이더리움 등 특정 체인 기반으로 생성된 코인은물론 서로 다른 체인의 코인들 간에 거래가 가능한 인터체인 기능이 접목될 필요가 있다. 

이 지갑은 동시에 매우 쉬운 UI와 기존 미디어 플랫폼의 UX와 연결되도록 개발되어야 한다. 미디어 블록체인의 지갑 기능 활용 시나리오를 제안해보자. 아래 그림에서 달러 표시를 누르면 최초에는 지갑 생성이, 이후에는 이더리움이나 해당 미디어 플랫폼의 코인 등 특정 코인 기준으로 보유한 암호화폐 총량이 표시된다. 지갑 생성 단계에서 해당 콘텐츠를 생산한 콘텐츠 생산자가 발행한 토큰의 에어드롭이 이뤄지며, 이 토큰으로 자동 구독이 되게 만들어진다. 에어드롭을 받은 토큰을 다 소모한 뒤에는 해당 토큰이 기반하는 코인 기준으로 구독료가 자동 정산된다. 암호화폐가 없으면 구독이 중단된다. 미디어 블록체인의 경우 콘텐츠 아래에는 공유 대신 누적 정산된 저작권료를 표기할 수 있다. 


플랫폼리스 미디어 블록체인의 지갑 UI 디자인 예시



이 글은 박대민, 명승은이 2018년 공저한 <미디어 블록체인, 플랫폼리스의 기술>에서 분량 문제로 빠진 부분 등을 보완한 것이다. 아래는 링크.

* 이 글은 정보 공유를 목적으로 연구용으로 작성됐으며 투자 권유를 목적으로 쓴 글이 아닙니다. 모든 투자는 전적으로 투자자 자신의 판단과 책임에 따라 스스로 투자에 관한 의사결정을 하여야 하고, 그에 대한 결과는 투자자 본인에게 귀속됩니다. 


매거진의 이전글 미디어 블록체인의 기술 구성
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari