gettyimages

블록체인에 블록이 없다면 그것도 블록체인이라고 부를 수 있을까?

아무래도 어폐가 있는 말처럼 들린다. 그러나 지난 9일 세상에 모습을 드러낸 O(1)이라는 회사는 분명 기존의 블록체인과는 완전히 다른 방식으로 네트워크를 운영한다. 코다(Coda) 프로토콜에서 만들어낸 새로운 블록을 바로바로 버리는 방식이기 때문이다. 블록체인하면 함부로 위조나 변조할 수 없는 기록으로써 가치가 있는 것인데, 그 블록을 버리다니 도대체 무슨 생각인지 의아할 정도다. 그러나 이 의아한 아이디어야말로 지금 암호화폐에 가장 필요한 것이라고 믿는 유수의 투자자들이 이미 줄을 섰다.

메타스테이블(Metastable)과 앤젤리스트를 공동 창업한 네이벌 라비칸트(Naval Ravikant), 트위터와 구글에서 일했던 엘라드 길(Elad Gil)을 비롯한 투자자들이 O(1)에 총 350만 달러를 지분 투자했다. 코인베이스 출신 프레드 에르삼(Fred Ehrsam)과 린다 시에(Linda Xie), 그리고 폴리체인 캐피털도 투자에 참여했다.

라비칸트는 코인데스크에 "소규모 노드에서도 독립적으로 거래를 검증하고 확인할 수 있는 작고, 확장 가능한 블록체인이라는 사실에 무엇보다 끌렸다."라고 말했다.

사실 주요 블록체인에서 모든 거래 내역을 저장하는 데 드는 비용이 갈수록 커지고 있는 점을 고려하면, 소규모 노드에서 굴러가는 작은 블록체인이라도 그 영향력은 무시할 수 없을 것이다. 기존의 블록체인은 원칙대로 네트워크상에서 발생한 모든 거래를 빠짐없이 기록하게 돼 있다. 거래 기록을 일일이 기록하는 걸 비용이자 부담이라고만 바라볼 일은 아니다. 실제로 채굴자와 이용자들이 거래가 얼마나 정확하게 이뤄지고 있는지 검증하는 데 수많은 거래 기록을 자료로 쓰기 때문이다.

그런데 만약 거래 기록을 원장에 저장할 의무가 없다면, 코다 프로토콜로 남긴 기록이 정확하다는 걸 무슨 수로 신뢰할 수 있을까요?

여기서 등장하는 개념이 바로 "스나크(snarks)"인데, 이 스나크를 효과적으로 활용하면 블록 없는 블록체인을 구현할 수도 있다. 암호화폐 세계에 어느 정도 있던 분이라면 제트캐시가 발전시킨 프라이버시 강화 기술로 가장 잘 알려진 zk-snarks 같은 용어를 들어본 적이 있을 것이다. zk-snarks는 특히 최근 들어 이더리움이나 JP모건의 프라이빗 블록체인 쿠오럼(Quorum)에도 활용되면서 여러모로 각광받고 있기도 하다.

다만 O(1)은 이 기술의 프라이버시 문제를 크게 걱정하지 않는다. O(1)이 발행할 코인은 검증자가 원하면 해당 원장을 계속 가지고 있을 수도 있기 때문에 이른바 프라이버시를 강화한 코인에 속하지도 않는다. O(1)이 주목하는 부분은 오히려 O(1)의 기술이 현재 블록체인이 확실히 해결하지 못하고 있는 확장성 문제를 말끔하게 해결한 블록체인을 만드는 데 쓰일 수 있다는 점이다. O(1)의 공동창업자이자 최고 기술 책임이사인 이작 메클러는 O(1)의 코인을 "탈중앙화돼 있으며 쉽게 확장이 가능한 암호화폐"라고 소개했다.

지금 우리는 개인 간에 현금처럼 쓸 수 있는 탈중앙화된 화폐를 만들고 있다고 생각한다. 기본적으로 이 아이디어를 지지하고 생각이 같은 사람이라면 우리 프로토콜도 열렬히 지지해줄 것이다.

O(1)의 프로토콜은 제한 없는 지분증명 검증 네트워크를 활용해 코다 코인(Coda coins)이라는 프로토콜의 기본 코인을 지원한다. 다만 코인을 어떻게 배분할 것이며 총 어느 정도 규모로 발행해 운영할지 등에 관해서는 아직 결정된 바가 없다. O(1)은 올 3분기에 테스트넷을 런칭한다는 계획이다.

확장 가능한 스나크

일단 이 개념 자체에 매력을 느끼는 사람이 꽤 많을 것이다. 그러나 동시에 정확히 어떻게 이를 구현하겠다는 건지 의문을 품는 이들도 적지 않을 것이다.

거칠게 단순화해서 설명하자면, 블록체인 상의 모든 지갑에 들어있어야 할 암호화폐가 제대로 들어있다는 사실을 증명하는 스나크 암호 증명 방식을 활용해 원장의 상태를 확인하는 것이다. 한 번 검증을 거친 원장은 영원히 저장해둘 필요가 없어진다. 성공적으로 증명이 이뤄졌다는 것은 거래 기록을 맞게 저장했다는 뜻이고 블록체인도 정상 상태라는 뜻이기 때문이다.

매번 새 블록이 생성될 때마다 새로운 증명을 거친다. 그리고 그때마다 과거 증명이 문제가 없었는지도 검증해 그 사실을 블록체인 상의 모든 지갑에 알린다. 이 증명에 필요한 데이터는 기껏해야 몇백 바이트에 불과하다. 프로토콜을 검증하려면 비트코인 노드 몇 기가바이트는 다운받아 확인해야 하는 것보다 훨씬 가볍고 빠를 수밖에 없다. O(1)은 심지어 스나크 암호 증명 방식을 스마트폰에서도 구동할 수 있을 것으로 보고 있다.

메클러는 "네트워크가 커지면서 탈중앙화를 유지하기 점점 어려워지자 확장성 문제와 탈중앙화 기치 사이에 일종의 갈등이 빚어지는 모습"이라고 말했다. 하지만 코다 프로토콜에서는 모든 증명이 정확히 같은 크기로 기록된다. 메클러는 O(1)의 가장 큰 장점이 간결함에 있다고 강조했다.

"가장 중요한 것은 O(1)의 방식이 무엇보다도 간결하다는 점이다. 트윗 몇 줄 정도에 해당하는 몇백 바이트면 증명을 통해 전체 노드를 검증할 수 있다. 검증 속도도 빠르다. 블록체인이 자꾸 몸집을 불려 그로 인한 문제가 생길 걱정을 할 필요가 없다. 사진 속 사진 속 사진처럼 군더더기를 그야말로 쫙 뺐다."

대중이 이해할 수 있는 설명

간결함을 내세운 기술 만큼이나 설명도 복잡하지 않고 아주 간명하다. 이 점이 코다 프로토콜의 기술적인 최대 장점이다. 하지만 심리적으로 어딘가 불안함을 부추기는 면도 없지 않다.

비트코인 블록체인에는 모든 거래를 일일이 기록하는 칸이 있고 이 기록을 모두 모은 장부가 있다고 생각하면 누구나 그 개념을 직관적으로 이해할 수 있다. 그런데 O(1)이 스나크 암호 증명 방식을 활용해서 이 과정을 간소화하고 어떤 것을 생략하고 들어냈다는 설명을 하기 시작하면 적잖은 사람들이 복잡하고 어렵다며 머리를 감싸 쥐거나 O(1) 자체를 신뢰할 수 있는지 의심할 수도 있다. 메클러도 이 사실을 인정한다.

"사실 이용자가 제대로 이해하지 못하는 한 증명이고 검증이고 다 소용이 없다. 그래서 우리는 무엇보다도 이용자가 어렵지 않게 이해할 수 있게 만드는 데 심혈을 기울여 왔다."

이를 위해 O(1)은 스나키(Snarky)라는 프로그램 언어를 만들어 그 언어로 연산을 증명해 보이기도 했다. 또한, 여전히 프로그램 언어가 낯설고 어려운 이용자들을 위해 O(1)은 자체 블로그에 이 증명을 어떻게 적용해볼 수 있을지 가상의 상황을 설정해 자세히 풀어 설명해 놓았다.

한 모임에서 사람들이 피자 토핑으로 무엇을 주문할지 투표로 정하는 과정을 예로 들어 표를 어떻게 (암호) 함수로 만들어 집계하고 결과를 공유하는지 설명했다. 가상의 상황치고도 좀 너무 단순한 예이긴 하지만, 중요한 건 각각 모은 표를 따로 암호화하고 또 전체를 모아 한 번 더 암호화함으로써 이용자들이 다른 사람의 투표 결과는 몰라도 내 표가 제대로 제출돼 집계됐다는 사실은 확인할 수 있다는 점이다.

라비칸트는 스나크의 신뢰성에 관해 "시간을 더 갖고 여러 가지를 조사해봐야겠지만, 적어도 지금까지는 별문제 없이 잘 해오고 있다"고 말했다.

그러나 O(1) 팀은 새로운 O(1)의 코인과 증명 방식이 블록체인 세계에 신선한 충격파를 던질 것을 굳게 믿고 있는 듯하다. O(1)이 발표한 내용에는 이런 자신감이 묻어난다.

전체 블록체인을 트윗 두 줄 정도 분량으로 성공적으로 압축함으로써 코다는 블록체인의 새 장을 열고 있다.

번역: 뉴스페퍼민트
Brady Dale Brady Dale is a senior reporter at CoinDesk. He has worked for the site since October 2017 and lives in Brooklyn.
제보, 보도자료는 contact@coindeskkorea.com
저작권자 © 코인데스크코리아 무단전재 및 재배포 금지