플랫폼 매너리즘, 블록체인의 시간은 해결되지 못했다

최근에 회사일이 다사다난하고, 개인적인 일도 많아서 포스팅을 하지 못했습니다. 인터체인 프로젝트 정리를 서둘러서 마무리해야하는 상황인데도 불구하고.... 최근의 개인사로 인해서 잠시 펜딩을 하고, 최근에 블록체인 세미나를 돌았던 내용중에 하나를 풀어보려 합니다. 주제는 우리가 블록체인의 구조에 대해서 공부하면서도 크게 개의치 않았던 블록의 Header 값에 들어있는 Time, 바로 시간입니다.

블록체인의 도입이유

블록체인의 도입에는 수 많은 이유가 있을 수 있습니다. 보안, 안정성, 비가역성, 분상원장을 통한 탈중앙화, 중개자의 제거와 같은 부분들이 우리가 알고 있는 대표적인 이유입니다. 하지만 블록체인을 도입하는 이유가 정말 이게 전부일까요? 그렇다면 어째서 지금 모든 기업들이 블록체인을 도입하지 않을까요?

단순히 보안을 위해서는 기존 Data storage에 Software 기반의 보안을 좀더 덕지 덕지씌워주면 미흡한 보안에 대한 문제는 어느정도 해결됩니다. 안정성도 마찬가지입니다.

비가역성은 이전의 데이터를 암호화하여 저장하고 해당 내역의 변화를 해시값으로 지속적으로 업데이트하게 된다면 데이터의 변동에 대한 기록을 덮어씌우는 개념이 아니라, 변화의 내역을 기록하는 방식으로 완성됩니다.(정확히는 과거 데이터의 수정이라기 보다는, 변화의 내용을 기록, 일반적으로 대부분의 사람들이 기업이 도입하는 블록체인을 암호화된 레져를 분산해서 들고있을 뿐이라고 표현하는 이유) 다만 이러한 내역을 담당하는 주체가 기존에 서버이기 때문에 중앙화의 문제점(신뢰에 대한 문제)이 해결되지 않는 다는 것입니다.

몇몇 선구자 적인 기업들이 블록체인을 도입하고 있습니다. 과연 이러한 기업들이 탈중앙화를 위해서 블록체인을 도입할까요? 기업들이 생각하는 블록체인의 도입 목적은 탈중앙화가 아닙니다. 이미 중앙화되어 이익을 내고 있는 상황에서, 이익과 비용의 분산이라는 개념의 목적을 가지고 탈중앙화라는 목표로 블록체인을 사용할 이유는 전혀 없습니다. 대부분의 기업들이 블록체인을 도입하고자 '계획'하는 이유는 중개자의 제거를 통한 비용의 효율화일 것입니다.

얼마전에 올렸던 PPT 파일에서 교보생명의 케이스를 본다면 이해가 쉬울 듯합니다. 얼마전에 언론에서도 공식적으로 발표를 하였으니 내용을 적기도 부담스럽지 않군요.

일반적으로 우리가 실손보험을 수령하기 위해서는 병원비를 결제하고, 증명서를 발급받고, 증명서를 제출하고, 보험금을 지급받는 과정을 거치게 됩니다. 이 과정에서 2~3일정도의 시간이 소요되고, 보험사 내부에서는 해당 내역을 확인하는 수많은 사람들이 존재합니다.

기존에 보험사에서 확인하는 것들은 다음과 같습니다.

  1. 교보생명에 가입이 되어있는지
  2. 실손보험에 가입이 되어있는지
  3. 월 납부를 꾸준히 했는지
  4. 병원에서 실손보험에 해당하는 병원비를 결제했는지입니다.

블록체인을 도입하기 이전에는 A라는 사람이 보험사에 증명서를 제출한 순간 1번부터 확인과정이 시작되게 됩니다. 만약 블록체인을 도입하면 어떻게 될까요?

블록체인을 도입하게 되면 이미 1~3번까지는 확인이 끝나있습니다. 마지막 4번인 결제가 끝나는 상황에서 이미 보험금 지금 준비는 완료되게 되는 것이죠. 이미 언론에서 이야기한바와 같이 교보생명은 향후에 실손보험에 한해서는 10분 내외의 시간에 보험금지급을 완료하게 될 것입니다.

이미 기존에 교보생명은 실손보험 서비스를 진행하고 있습니다. 기존의 서비스가 과연 보안이 낮아서 블록체인을 도입했을까요? 안정성? 비가역성? 탈중앙화? 그 무엇도 도입의 이유는 아닙니다. 교보생명 내에서 보험지급의 내역을 확인하는 과정에 있는 중개자(회사의 직원)의 컷팅을 통한 인건비 절감과, 보험서비스 가격의 현실화 정도가 그 이유가 될 수 있을 듯합니다.

하지만 저는 개인적으로 블록체인의 현재 기술 수준에서는 기업들이 블록체인의 시범적인 도입이 아닌, 본격적인 도입을하기에는 어렵지 않나 생각합니다. 이유는 데이터가 기록되는 순서가 명확하지 않다는 점, 바로 시간입니다.

지금 현대 사회에서 발생하는 수많은 상호작용이 있습니다. 걸어가는 것, 숨을 쉬는 것, 주변을 보는 것과 같은 사람의 행동 뿐만 아니라, 차를 움직일때 엑셀을 누르는 것, 엔진에 연료가 들어가서 동력을 만들고 차가 움직이는 것과 같은 것들 말입니다. 만약 이러한 상호작용을 기반으로하는 현실세계를 블록체인화 한다면 어떻게 될까요?

단연코 완벽한 혼돈에 빠질 것입니다. 모든 상호작용에는 시간을 기반으로하는 순서가 있습니다. 현재의 블록체인은 순서를 기록하지 못합니다. 제가 엑셀을 밟고 엔진이 움직이는 것은 실생활에서는 거의 동시간대에 이루어지지만 명백한 순서가 존재합니다. 만약 블록의 사이즈나 tps의 문제, 또는 체리픽킹의 문제, 벨리데이션에 걸리는 시간의 문제로 엔진이 먼저 움직인 것으로 기록된다면 어떻게 될까요? 자동차의 문제일까요 블록체인의 문제일까요? 비트코인의 PoW에서는 블록의 생성 시간(예를 들면 1초에 들어가있는 전송과 9분 59초에 들어간 전송이 동일 블록에 기록될 수 있음) 과 체리픽킹과 수수료 이슈로 인해서 순서를 명확히 기록할 수 없고, 이더리움의 경우에도 마찬가지 입니다. 블록체인이라는 기술에서 발생하는 데이터 지연의 효과도 무시할 수 없습니다.

예를 들어 블록체인을 기반으로한 거래소가 있다고 가정해보겠습니다. 사실 저는 지금의 블록체인 기술을 기반으로하는 암호화폐 거래소에 대해서 굉장히 회의적입니다. (실제로 현재 만들어진 dex는 안쓰이고 있습니다, 일간 거래가 100건~300건 수준)이유는 단순합니다. 블록의 생성이 0.01초 만에 이루어지는 엄청난 성능의 블록체인을 만들어낸다 하더라도 지구 반대편에 있는 친구가 저의 주문내역이 반영되어있는 Order book을 확인하기 위해서는 데이터 지연 효과가 2초정도 발생하기 때문입니다.

퍼블릭 블록체인, 암호화폐는 지구를 잇는 기술이 아니던가요? 과연 지구 반대편에 있는 친구가 2초의 시간 갭에서 저와 동시에 주문을 넣는다면, 누구의 주문이 먼저 체결될까요? 아니 되어야 할까요?

그렇기 때문에 우리는 tps에 이토록 집착하는 것일지도 모릅니다. 높은 전송에 대한 톨러런스는 순서에 대한 문제를 최소화할 수 있을 테니까요. PoW -> PoS -> DPoS -> LFT, 텐더민트 등등....으로 조금씩 탈중앙화를 포기하면서 나아가는 합의 알고리즘의 변화는 대부분 이러한 목적을 가지고 진행되고 있습니다. 수많은 플랫폼 블록체인은 매일 매일 tps에 대한 이야기를합니다. 소수의 노드를 기반으로 AWS에서 1000tps를 도달했다느니, 이론적으로 10만 tps가 가능하다는 이야기와 같은 것들입니다.

다만 이러한 합의 알고리즘의 변화는 10년 20년뒤에 본다면 지금의 PoW와 같이 모두 구시대의 유물이 될 것입니다. 모든 사람들이 플랫폼 블록체인을 생활속에서 사용하고, V2X와 같은 차간통신이 사회 전반에 깔리게 될때에는 tps 10만건은 지금의 tps 3.5건(비트코인)과 비슷한 수준일 것이기 때문입니다.

tps는 지속적으로 발전할 것입니다. 지금의 10만, 20만이 아니라, 100만 1000만과 같이 말입니다. 다만 현재 이러한 기술의 발전 방향은 기술경연 대회에 불과해 보입니다. 본질적인 문제가 해결되지 않은 이러한 기술을 누가 사용하게 될까요? 저는 현실을 대체하기 위해 근본적으로 필요한 고민이 반영되지 않은 기술의 효용은 없다고 판단합니다. 마치 만들어놓고 아직까지 잘 쓰이지 않고 있는 중국의 슈퍼컴퓨터인 Sunway 처럼 말입니다. (물론 최근에 해시그래프의 경우에는 시간을 감안하려하고 있습니다, 향후 코드 오픈이 된다면 과연 정말 시간에 대한 문제를 해결했는지 코드리뷰를 해볼 계획입니다)

혹여나 지금 새로운 합의 알고리즘을 고민하시는 블록체인 엔지니어 분들이 계시다면, 시간에 대한 순서를 고려하시고 디자인을 해주셨으면 하는 바램이 있습니다. 어차피 블록체인은 대부분 오픈플랫폼입니다. 모두가 tps에 집중하고 있을때, 시간의 흐름(flow)에 집중하는 사람이 있다면 플랫폼 블록체인의 발전은 좀 더 생산적인 방향으로 나아가지 않을 까 생각합니다.

너무나 많은 플랫폼 암호화폐가 등장하는 와중에 느껴진 매너리즘을 한번 적어봤습니다. 같은 고민을하고, 답을 함께고민해보는 사람들이 많아졌으면 좋겠습니다. 감사합니다.

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center