어떻게 성능을 키울 건가? ‘느림보’ 비트코인의 확장성 강화 시나리오

원문 보기: https://techit.kr/view/?no=20190616112609

블록체인을 성능으로만 놓고보면 가장 느린 블록체인 네트워크다. 초당 처리 가능한 거래 건수가 7건 정도다. 수천건에 달하는 비자에는 한참 못미치는 수준이다. 

비트코인의 이같은 구조는 비트코인의 성능 한계를 극복하겠다며 다양한 블록체인이 등장하는 계기가 됐다. 

비트코인 커뮤니티는 속도를 개선하기 위해 기술적인 조치를 취할 경우 플랫폼의 상징인 탈중앙성이 약화된다는 이유로 현재 구조를 유지하는 것을 지지하고 있다. 비효율성에는 다 이유가 있다는 것이다. 

현재 시점에서 비트코인 블록체인이 느린 것은 사실이지만, 이같은 문제가 해결 불가능한 것은 아니다. 비트코인이 갖는 고유한 구조를 건들지 않으면서도 초당 가능한 거래 처리 건수를 늘리려는 다양한 시도가 이뤄지고 있다.

달러는 왜 비트코인을 싫어하는가’를 쓴 사이페딘 아모스 레바논 아메리칸 대학 경제학 교수가 쓴 책 ‘달러는 왜 비트코인을 싫어하는가?를 보면 3~4가지 정도가 대안으로 언급되고 있다.

우선 저자는 속도를 끌어올리겠다고 비트코인 자체를 건들어 비자와 경쟁하려 하는 것은 무모한 시도라는 입장이다.

이글을 쓰고 있는 지금 비트코인을 둘러싸고 벌어지는 논쟁 가운데 가장 유명한 것은 비트코인의 규모를 키울 수 있느냐, 즉 거래 처리 능력을 확대할 수 있느냐는 문제다.  비트코인의 블록은 1MB이므로, 현재 상태에서 하루에 처리 가능한 거래 건수는 50만건 이하다. 비트코인의 거래 처리 규모는 이미 그 정도 수준에 도달했기 때문에 지난 몇달 동안 거래 수수료가 상당히 올랐다. 

세그위트라는 기술을 도입하면 하루 처리량을 네배로 올릴 수 있지만 그럼에도 탈중앙, 분산이라는 속성 때문에 비트코인 블록체인이 처리할 수 있는 거래량에 절대 넘지 못할 한계가 있다는 사실만은 점점 명확해진다. 모든 네트워크 노드는 비트코인 거래가 일어날 때마다 기록하고 모든 거래가 적힌 전체 장부의 복사본을 가지고 있어야 한다. 따라서 기록 하나에 백업본 몇개 정도 보관하면 되는 중앙식 방법에 비하여 거래 기록 비용이 훨씬 높을 수 밖에 없다. 고효율 결제 처리 시스템이 모두 중앙식인데는 다 이유가 있다. 비트코인 작업증명으로만 달성한 방식에 따라 기록을 여러 곳으로 분산한 후 골머리를 썩이며 서로 동조하기 보다는 중앙에 기록 하나만 유지하는 편이 아직은 싸기 때문이다.

비자나 마스터카드 같은 중앙 결제 방식에는 모든 거래를 처리하는 중앙 장부가 하나 있고, 백업 장부가 완전히 별개로 또 하나 있다. 비자는 거래를 초당 3200건, 연간 1008억건을 처리할 수 있다.  반면 비트코인의 1메가바이트짜리 블록은 거래를 초당 4건, 일당 35만건, 연간 1.2억건 처리할 수 있다. 비트코인이 비자처럼 1년에 1000건을 처리하려면 블록 하나당 크기가 800메가바이트짜리 자료가 추가될 것이다. 1년이 지나면 비트코인 노드 하나가 블록체인에 더하는 자료는 42테라바이트, 즉 4만2000 기가바이트가 된다. 현재든 미래든, 가까운 미래는 양산형 컴퓨터가 지닐 연상력 범위에서 완전히 벗어나는 수준이다.  지금 일반 소비자용 컴퓨터나 일반 외장 하드 드라이브 저장 용량은 보통 1테라바이트인데, 이 정도면 비자가 처리하는 1주일치 거래 규모다. 비교 목적으로 비자가 어느정도 컴퓨터 시설로 거래를 처리하는지 검토해 보자.

2013년에 나온 한 보고서의 표현에 따르면 비자가 소유한 데이터센터는 서버 376대, 스위치 277대, 라우터 85대, 방화벽 42개로 구성된 디지털판 포트 녹스다. 물론 중앙 시스템이 고장이 나면 모두 불거품이 되므로 예기치 못한 호나경이 닥쳐도 시스템을 보호하기 위하여 자료를 중복 보관하고 대규모 여유 능력을 구비해 둔다.  반면 비트코인에서는 노드가 수없이 존재하고 노드 하나하나는 고장이 나도 전체에 치명적 영향이 가지 않기 때문에 보안과 여유 능력을 확보하는데 노력을 덜 쏟아도 된다. 하지만 매년 42테라바이트를 추가할 수 있는 노드를 운영하려면 매우 비싼 컴퓨터를 사야할 것이고, 또 매일 이정도 거래를 처리하는 필요한 인터넷 접속 속도를 확보하려면 엄청난 비용이 들테니, 분산 네트워크를 유지하기가 도저히 불가능할 정도로 비싸고 일이 복잡해질 것이다.

비자정도되는 결제 처리 데이터센터를 갖춘 곳은 전세계를 살펴봐도 마스터카드 등 몇군데 뿐이다. 비트코인이 비자 같은 중앙 방식과 경쟁하기 위하여 그 정도 용량을 처리하려고 해봤자 규모가 그 정도나 되는 분산 데이터를 수천 곳이나 확보할수는 없을테니, 결국 데이터센터 몇군데를 만들어 집중할 수 밖에 없을 것이다. 비트코인이 분산화를 유지하기 위해서는 소프트웨어가 양산형 컴퓨터에서도 잘 돌아가서 수천명이라도 비용 부담없이 네트워크 노드를 운영할 수 있어야 하고, 노드끼리 주고받는 자료가 일반 소비자가 사용하는 인터넷으로도 충분히 처리할 수 있는 규모여야 한다.

그렇다면 어떻게 확장성을 강화해야할까?저자는 온오프체인간 역할 부담을 키워드로 내걸었다.

비트코인이 중앙 시스템이나 감당할만한 거래량을 온체인으로 처리할 수 있으리라고 보기는 어렵다. 그래서 거래비용은 오르는 중이고, 네트워크가 계속 성장한다면 앞으로도 계속 성장할 가능성이 높다. 비트코인 거래 규모를 조정해 본다면 덜 중요한 소규모 거래는 비교적 간단한 기술을 활용한 오프체인 방식으로 처리하는 정도가 아마 최선일 것이다. 그렇게 하면 비트코인이 엄청나게 소모하는 연산력을 정당화하는 두가지 중요한 특성, 바로 디지털 건전 화폐이자 디지털 현금이라는 본질도 위협받을 일이 없다. 이 두가지 기능을 제공하는 기술은 비트코인 뿐이지만 소규모 결제와 소비자 지출을 낮은 비용으로 처리하는 기술은 여러가지 있고, 또 현재 금융기술로도 매우 쉽게 도입하여 비교적 안정적으로 운영할 수 있다. 

비트코인을 광범위한 상거래 결제용으로 사용한다는 생각은 현실적이지 않은데, 거래 승인을 1차로 받는데도 1분에서 12분 정도 걸리기 때문이다. 판매자와 고객이 결제를 그렇게 오래 기다릴 수도 없고 또 소규모 결제를 한번 하는 정도면 몰라도 거래를 대량으로 처리하는 판매자에게는 중요한 문제가 이중지불공격이다.

저자는 오프체인에서 일어나는 비트코인 거래 처리와 관련해 몇가지 사례를 들었는데, 구체적인 내용은 다음과 같다.

비트코인을 장기적으로 가치를 저장할 디지털 수잔으로 사용하려거나 압제적 정부를 거치지 않고 중요한 거래를 하는데 쓰려는 사람들에게는 높은 거래 수수료는 낼만한 가치가 있다. 비트코인을 저축용도로 쓴다면 본질상 거래를 많이 할 필요가 없을 것이고 따라서 높은 거래 비용도 낼만하다.  그리고 인플레이션이나 자본 통제를 피해서 나라 밖으로 돈을 옮기려는 등 일반 금융시스템으로 처리할 수 없는 거래를 할때도 비싼 비트코인 거래 수수료를 낼만한 가치가 있다. 비트코인이 인기를 더해 간다면 비트코인 자체 구조가 아니라 거래 구조를 바꿔 처리 가능한 결제 건수를 늘리는 방법으로 비트코인의 크기를 키울 잠재적 해결책이 몇가지 있다.

비트코인 각각은 여러 가지 입력값과 출력값을 포함하는데, 코인조인이라는 기술을 활용하면 결제 건 각각을 거래 하나로 묶을 수 있으므로 포함해야할 입력값이 출력값을 크게 줄일 수 있다. 그렇게 하면 비트코인 거래량이 매일 수백만건으로 늘어날 수 있기 때문에 거래 비용이 오를 수록 널리 쓰이는 대안이 될 가능성이 높다.

물리적 차원에서 조작할 수 없고 언제나 잔액을 확인할 수 있게 만든 디지털 모바일 USB 지갑도 비트코인 크기를 키울만한 해결책이다. 이 USB 드라이브에는 특정한 양의 비트코인에만 연동한 개인키를 실어 누구든 여기서 돈을 뽑을 수 있게 만드는 것이다. 그러면 소유자가 드라이브의 가치를 검증하고 마치 현금처럼 쓸수 있다. 네트워크에서 수수료가 오르는데도 가격이 오르는데서 볼 수 있듯 비트코인 수요는 꺾일 줄 모르고 커갔으며, 따라서 사용자들은 지불해야하는 거래 수수료보다 거래해서 얻는 가치가 크다고 생각한다는 사실이 드러난다. 수수료가 올라간 결과 비트코인 보급 속도가 느려진 것이 아니라 덜 중요한 거래가가 오프체인으로 옮겨가고 더욱 중요한 거래가 온체인에 남게된 것이다.

이미 오늘날에도 비트코인 거래중 대다수는 오프체인에서 실행되고 청산만 온체인에서 처리된다. 거래소, 도박장, 게임 웹사이트 같이 비트코인에 기반을 둔 회사는 고객과 입출금 처리를 할때만 비트코인 블록체인을 이용하고 자사 플랫폼안에서 일어나는 거래는 모두 비트코인 단위로 표시하여 자기 로컬 데이터베이스에 기록한다. 이런 회사수가 엄청나게 많고 회사별 플랫폼에서 일어나는 거래를 집계한 공식 자료도 없으며, 비트코인 경제의 역학관계가 빠르게 변하기 때문에 이런 거래수를 정확하게 추정하기는 불가능하지만 보수적으로 추정해도 비트코인 블록체인에서 실행되는 거래량에 비하여 열배 이상 정도라고 보면 무리 없다.  비트코인이 계속 성장한다면 온체인 거래보다 오프체인 거래수가 더 빠르게 느는 편이 자연스럽다. 

라이트닝 네트워크도 주목할만한 기술이다.

라이트닝 네트워크가 있는데, 비트코인 장부는 이제 처리가 아니고 잔고 타당성 검증에만 쓰고 각 노드는 오프체인 결제 채널을 운영하여 거래 처리 용량을 늘리려는 목표로 개발중인 기술이다.  비트코인은 온체인 거래의 숫자 증가가 아니라 가치 상승을 통하여 규모를 키우고 있다. 점점 더 많은 거래가 오프체인에서 성사되고 비트코인을 다루는 거래소나 웹사이트에서 청산되면서 비트코인은 직접 결제 네트워크에서 거래 청산용 네트워크로 바뀌고 있다. 비트코인은 오늘날 소규모 거래에 쓰이는 지폐를 가리키는 현대적 의미의 현금이 아니라 금 보유고 같은 예전 의미의 현금으로 이해하는 편이 좋을 것이다. 

결론을 내리자면 현재 비트코인 구조를 바꿀 필요는 없고, 또 현재 노드 운영자가 보유한 장비를 동시에 새것으로 교체하지 않아도 여러가지 방법으로 비트코인 거래 처리량을 늘릴 수 있다. 

처리 규모 확대는 노드 운영자가 다른 네트워크 구서원에게 비트코인 거래 자료를 보내는 방법을 개선하는 방식으로 해결될 것이다. 구체적으로는 거래를 한데 묶고, 오프체인에서 거래하며, 자불 경로를 다양화하는 데서 나올 것이다. 반면 온체인 거래 처리 규모 확대 방식으로는 시간이 흐를수록 성장하는 비트코인 수요에 대응하기에 충분할 가능성이 낮다. 따라서 앞으로 2차 단계에서 처리하는 방식이 점점더 중요해지고 그리하여 암호학을 활용하고 주로 온라인에서 영업하는 금융기관이 새로 출현하여 오늘날 은행과 같은 역할을 할 가능성이 높다.

Leave a Reply

Your email address will not be published. Required fields are marked *

Bitnami