비트코인 블럭체인 기술
최근 금융권에서 핀테크 열풍에 힘입어 블럭체인 기술을 도입하려는 움직임이 하나둘 일어나고 있는데요. 오늘은 자주 들어봤지만, 그 개념은 제대로 알지 못했던, 블럭체인 기술에 대해서 알아보도록 하겠습니다.
블럭체인은 가실 비트코인 때문에 유명해진 기술인데요. 비트코인은 잘 아시다시피 가상화폐입니다. 이 가상화폐를 사람들 이 주고 받을 때, 주고 받은 기록과 주고받은 사람들을 신뢰할 수 있는 장치가 필요한데, 이를 해결하기 위핸 도입한 기술이 바로 블럭체인입니다.
쉽게 이야기 하면 블럭체인은 '거래원장' 이라고 보시면됩니다. 기존 은행에서는 이 원장을 은행 자체적으로 보관을 합니다. 따라서 그럴일은 없겠지만, 고객의 거래내역이나, 잔고 등을 은행이 마음만 먹으면 조작을 할 수 있는 구조입니다. 하지만 블럭체인 기술을 이용하면, 모든 사람이 거래내역과 주고받는 사람이 누구였는지를 기록한 거래원장을 공유하게 됩니다.
단순히 공유하는 것 뿐만 아니라, 사람들 끼리의 거래가 진짜로 발생한 거래인지를 서로 확인해주는 역할까지 합니다.
따라서 이론적으로 거래원장을 조작(해킹)하는 게 불가능합니다. 어? 근데 비트코인이 해킹 당했다는 뉴스를 봤는데 그건 뭐지? 라는 생각이 드실 수도 있는데요.
지금까지 발생한 비트코인 해킹 사례는 거래원장(블럭체인)을 해킹해서 발생한 것이 아닌, 사람들의 비트코인 계좌정보 와 비밀번호가 털린 것입니다. 쉽게 말해 은행으로 비유해 보면, 은행이 털린 것이 아닌, 사람들의 공인인증서와 계좌번호가 털렸다는 것입니다.
따라서 블럭체인 기술 자체의 헛점으로 발생한 해킹 공격은 아닌 것입니다.
하지만 블럭체인 기술이 완벽한 것은 아닙니다. 제가 비트코인을 이용해서 거래를 해보니 크게 두가지 문제점을 가지고 있어습니다.
첫째는 거래 속도 입니다. 비트 코인을 통해서 송금을 하는 경우 최소 10분~30분 정도의 시간이 필요합니다. 또한 비트코인을 사용하는 사람이 많아져서 거래량이 많아지만 송금에 걸리는 시간은 점점 늘어나게됩니다. 이는 모든 거래정보를 모두에서 공유하는 블럭체인 기술의 사상 때문인데요. 당연히 거래량이 늘어나면, 공유해야 하는 정보가 많아지기 때문에, 거래 속도도 점차 느려지게 되는 것입니다.
두번째는, 시세 입니다. 비트코인은 주식처럼 사고자하는 사람과 팔려는 사람들이 서로 가격을 흥정해서 매매를 하게 됩니다. 예전에는 비트코인의 가격이 급변하는 일이 없었지만, 최근에는 불과 1-2분 사이에 10% 이상 가격이 급변하는 일이 발생하게 되었습니다.
이렇게 가격이 급변하는 경우 쇼핑을 할 때 문제가 많이 발생합니다. A쇼핑몰에서 0.01BTC(비트코인) 짜리 물건을 사려고, 0.01BTC을 3만원 주고 구입을 하고 쇼핑몰로 입금을하려고 했는데, 그 사이 비트코인 가격이 변동해서 0.015BTC으로 물건 가격이 변하게 되면... 순식간에 물건의 가격이 50% 오른셈이 됩니다. 이 경우 그냥 현금이나, 카드로 결제했으면 문제가 없었겠죠.
물론 반대의 경우도 있을 수 있습니다. 그럼 이익이 될 수도 있겠죠. 하지만 안정적인 거래를 위해서 그리고 사람들이 쉽게 사용하기 위해서는 비트코인의 가격 변동이 급등하는 일이 없어야 합니다.
그리고 0.01BTC으로 $10 달러 짜리 물건을 샀다가 환불을 받았는데, 환불 받았을 때의 0.01BTC의 가치가 $5 달러라면, 그냥 $5가 사라지게 되는 것입니다. 따라서 이런 문제 보완하기 위해서 비트코인 거래를 하는 일부 쇼핑몰에서는 환불의 경우 비트코인이 아닌 기프트카드로 해주는 경우도 있습니다.
아무튼 말씀 드린 두가지 치명적인 단점이 비트코인 그리고 블럭체인 기술로 해결이 불가능한 문제입니다. 하지만 세상이 불가능은 없습니다! ㅋ
이런 방식을 보완하기 위해서 나온 기술이 바로 '프라이빗 블럭체인' 인데요. 비트코인에서 사용하는 블럭체인 기술이 '퍼블릭 블럭체인' 즉 모두가 거래원장을 공유하는 기술이라고 하면, '프라이빗 블럭체인'은 모두에게 원장을 공유하는 방식이 아닌 중앙에서 원장을 관리하는 기술입니다.
'프라이빗 블럭체인' 기술은 그래서 속도가 매우 빠릅니다. 송금을 할 경우에도 단지 몇초만에 가능합니다. 하지만 이 기술의 한계는 확장성 입니다.
예를 들어 A은행에서 프라이빗 블럭체인을 사용하고, B은행에서도 자체 프라이빗 플럭체인 기술을 사용한다면, A와 B 은행간에는 서로 송금이 불가능 하게 됩니다.
이를 극복하기 위해 국내에서는 증권사들은 컨소시엄을 만들어서 증권사용 프라이빗 블럭체인을 만드려고 하는데요. 이렇게 한다한들.. 향후 은행권들이 이 컨소시엄에 참여하지 않고, 별도의 컨소시엄을 만든다면, 서로 분리가되어 증권사-은행 간 거래는 불가능하게 됩니다. 따라서 확장성에 있어서는 치명적인 문제를 안고 있는 것이 바로 '프라이빗 블럭체인' 입니다.
그리고 프라이빗 블럭체인의 경우 중앙에서 원장을 관리하기 때문에, 마음만 먹으면 충분히 조작이 가능하다는 문제점은 존재합니다.
이론적으로는 블럭체인 시스템의 2/3 이상을 장악한 후 단 몇초만에 거래원장의 내용을 조작해버리면, 해킹은 가능한데, 프라이빗 블럭체인의 경우 시스템 규모가 크지 않기 때문에 상대적으로 해킹(조작)이 수월합니다.
비트코인의 경우 구글이 가진 모든 컴퓨터 서버를 동원한다해소 전체 시스템의 10%에도 미치치 못하기 때문에, 조작은 불가능 하다고 봐야합니다.
오늘은 비트코인과 블럭체인 기술에 대해서 제가 아는 범위 내에서 설명을 드렸는데요. 워낙 생소하고 복잡한 기술이라 어려우실 수도 있지만, 조금만 관심을 가지고 인터넷 서핑을 하면 점점 개념이 잡히실 것 입니다.
끝으로 블로터에서 블럭체인 기술에 대해서 알기쉽게 설명된 기사가 있어서 소개해드립니다.
[블록체인 톺아보기] 금융권은 왜 블록체인에 주목할까
전략...
블록체인은 누군가의 보증이 없어도 내용을 신뢰할 수 있게 해주는 기술입니다. 비트코인은 은행의 거래 보증 없이 디지털 화폐를 송금할 수 있습니다. 수많은 노드에 거래 내역이 복제되기 때문에 비트코인 사용자는 거래한 내용이 삭제되거나 위·변조될 것을 걱정하지 않아도 됩니다. 블록체인이 개인 간 거래 신뢰를 제공하는 것입니다. 개인이 서로의 신뢰를 위해 블록체인을 이용하는 것처럼, 금융권은 기관 간 거래 및 정보 공유의 신뢰를 위해 블록체인을 이용합니다.
청산 기관을 이용한 거래와 블록체인을 이용한 거래(출처 : santander)
현재 기관 간 신뢰가 필요한 업무는 많은 비용과 시간이 발생합니다. 예를 들면 금융기관 간 거래 할 때는 청산기관이나 중앙은행을 통해 거래합니다. 이 방법을 통하면 거래 보증을 위한 많은 비용이 발생하고 청산기관이 주기적으로 모아 청산하기 때문에 즉각적인 청산이 불가능합니다. 만약 기관끼리 블록체인을 구축해 청산 시스템을 구축한다면 신뢰를 위한 수수료가 감소하고 즉각 청산할 수 있습니다.
금융기관 간 거래 말고 다른 업무는 어떨까요? 공인인증서의 경우 다른 기관에서 발행한 공인인증서를 검증하기 위해선 CA 기관을 통해 검증해야 합니다. 다른 기관의 데이터가 자주 필요한 업무라면 어떨까요? DB를 서로 오픈해서 공유하기는 힘들고, 만약 데이터를 공유한다고 해도 중간에 데이터가 변조돼 사고가 발생하면 책임 문제도 발생할 것입니다. 이런 분야에 블록체인을 이용한다면 필요한 데이터 쉽게 공유·검증할 수 있습니다.
블록체인을 통해 시스템을 구축한다면 필요한 내용이 기관들 사이에 공유되고 이해관계에 있는 기관들이 해당 내용을 검증할 것입니다. 검증 내용도 즉각 공유 됩니다. 이러한 과정을 통해 신뢰보증을 위해 발생하는 많은 비용을 해결할 수 있고 즉각적으로 처리할 수 있습니다. 또한 중앙 공격에 강하고 거래 내역 위변조를 즉각적으로 발견하고 모든 기록이 남아 책임 주체도 확인 가능합니다. 필요한 데이터를 복잡한 프로세스 없이 공유할 수 있다는 것도 매력입니다.
후략...
출처 : 블로터