분류와 통찰 - 카르다노(Cardano)의 프로토콜 해설을 시작하며

in #cardano6 years ago (edited)

분류



아리스토텔레스는 범주론에서 인간이 사물을 서술 할 때 필요한 요소가 10가지로 정리될 수 있다고 했다. 딱 10가지를 정리한다함은, 모든 인식함이 그 요소들만으로 완벽히 설명되면서도 또 각 요소가 서로 정확하게 분리되어 정의 되었다는 뜻일 것이다. 그런 아이디어를 소개할 수 있다는 자신감이 너무도 감명 깊었기에 지금과 같은 상황에 항상 먼저 떠오르곤 한다. 이제껏 인터넷 세대로서 살아오며 여기저기 떠도는 지식들 위에 표류하여 왔고, 가짜 분류를 해왔기 때문이다. 진짜 분류에 필요한 통찰을 얻으려면 얼마나 험난한 길을 걸어야 하는 지 요즘따라 점점 더 느끼고 있다.


블록체인 프로토콜 - 수많은 PO'x'



블록체인 프로젝트에 투자하고 있는 사람들, 특히 뉴비들이 가장 먼저 맞닥뜨리는 산은 POx들의 산이다

  • POW
  • POS
  • POI
  • DPOS
  • POA
  • POC
  • etc........??

바로 가상화폐의 근간이 되는 블록체인의 프로토콜들 종류이다.
비트코인과 이더리움이 내보인 POW는 기존에 생각치도 못한 방법으로 탈중앙 기록 문제를 해결해준 아름다운 개념임에 분명하다. 그렇지만 어쨌든 실용성과 거버넌스 등등의 문제에 의해 프로토콜 자체는 사양의 길을 걷게 될 것으로 보인다. 이 프로토콜들은 일종의 인프라(infrastructure)로서 역할을 하고, 그 다음 비즈니스 문제들을 해결할 주춧돌이 되어주어야 한다. 그런데 계속해서 인프라 자체에 대해 의문이 제기되었고 새로운 후보들이 속속 나타나고 있다. 즉, 현재 블록체인 시장은 아직 기회와 위험이 아직도 같이 공존하는 흥미로운 상태라는 것이다.

그리고 향후 어떤 형식으로 블록체인이 발전하게 될 지는 당연히 프로토콜의 발전과 아주 깊은 연관관계를 가진다.


분류의 함정 - 프로토콜 구분하기



그럼 이제 수많은 POx들을 어떻게 분리할 것인가?

우린 일단 그 프로토콜들에 대한 설명을 읽을 것이다. "pow는 다 같이 증명해서 합의를 찾고, pos는 지분에 의해서, poi는 특정한 현실의 기준으로 노드를 설정..." 이런 과정을 거치고 나면 나름의 방식으로 분류를 하게 된다. 블록체인 프로토콜을 뭉뚱그려 정의하면 합의(consensus)에 이르는 과정을 설명하는 것이다. 그러므로 합의와 연관된 요소들의 마인드맵을 그려서 적당히 이것저것 중요해보이는 속성들을 엮어서 머릿속에 개념을 만들어낼 것이다.

이렇게 이해한 개념이 얼마나 허술한 지 드러내는 방법은 간단하다. 다음 질문을 답해보려고 시도하면 된다.

  1. POS는 POW에 비해 안전할까 혹은 위험할까?
  2. POS를 쓰는 블록체인과 DPOS를 쓰는 블록체인을 구분하려면 내부의 어떤 기능을 찾아보면 될까?

1.에 대해서는 우리가 '안전함'이라는 것 조차 정확히 정의하지 못하고 있다는 것을 알게 되었다. 만약 1.에 대해 대답할 수 있는 사람이 있다면, 프로토콜에 대해 정말 아주 깊은 이해를 하고 있거나 혹은 높은 확률로 착각하고 있는 것이다. 이런 주제는 인터넷에 떠도는 가벼운 지식만으로 논하기 쉽지 않다.
그리고 2.에 대해서는 각 프로토콜 개념의 껍데기 바로 안쪽을 파고들어가는 순간, 우리가 까막눈이 된다는 사실을 깨달을 수 있을 것이다.
만약 우리 친구가 블록체인에 관심을 가져 우리에게 합의 프로토콜에 대해 묻는다면 기껏 할 수 있는 것은 서로다른 블록체인을 구분하는 방식을 마음대로 나열하는 것이다. 그것은 사실 현상에 대해 아무런 설명을 하지 못한다. 다단계에 빠진 판매자가 신형 정수기의 기능을 어필하는 것과 정확히 똑같다. 지금 이 순간에도 자기가 조금 더 지식이 있다는 이유로 사기꾼이 아니라고 생각하고 있을 사람들이 많을 것이다. 하지만 분명 대중이 가진 편견처럼 "가상화폐라는 다단계로 끌어들이는" 정도의 수준에서 벗어나지 못하고 있다.

이것이 분류의 함정이다. 우리는 블록체인 프로토콜에 대해 가짜 분류를 하고 있는 것이다.

가짜 분류란 사과와 오렌지를 책상에 적당히 세워놓고 잘 세웠다고 자위하는 거나 마찬가지다. 이 책상 위에는 시간이 지나면서 하나씩 뭔가 추가된다. 그래서 우린 다음에 나타난 토마토를 어떻게 세워놓을 지 고민해야한다. 나는 사과와 토마토가 빨개서 같이 놔뒀다. 색이 같은 것끼리 놔두니 눈에는 정리가 잘 된 것 같다. 하지만 사과와 토마토가 전혀 다른 맛을 낸다는 것을 알지 못한다.


그림1.jpg


친구가 "그래서 어떤 게 주스로 갈아먹기 좋아?"라는 질문을 했을 때, 곤혹스러운 감정을 갖게 된다. 여기서 문제가 도출된다. 내가 분류한 것들이 서로 진짜로 다른 것인지, 아니면 사실은 같은 것인지, 아니면 어떤 부분은 같고 어떤 부분은 다른 그래서 분류하는 것이 의미 없었던 것일지도 모른다는 것이다.

그나마도 자기반성이 없는 상태로 책상 위에 올라오는 걸 분류하다보면 상황이 더욱 악화된다. 색깔별로 계속해서 분류하다보니, 이 과일이라는 것이 거기서 거기라는 생각이 들기 시작한다. 아주 빠른 시간 안에 분류를 할 수 있고 그래서 어느 새 통찰을 얻었다고 생각하기 시작한 것이다. 이것이 가짜 통찰을 얻었다고 착각하는 첫 단계이며, 사회적으로는 꼰대의 당당한 일원이 되는 순간이라고 본다.

내가 생각하는 통찰은, 모든 과일들을 반으로 갈라보고 맛을 보았는데, 그러다가 양파를 잘랐고 눈을 부비며 괴로워했을 때 얻어진다.



그림2.png

그리고 내 경험으로는 가짜 통찰을 가졌는지 여부는 그것을 가진 사람의 태도로 쉽게 구분된다. 가짜 통찰을 가졌을 수록 과도한 확신으로 자기 주장을 내세우는 경향이 있었다. 그런 사람은 양파의 매운 맛을 본 적 없기 때문에 조심스럽지 않은 것이며, 가끔 맞닥뜨리는 날카로운 질문에 대해 자기방어기제를 가지게 마련이다.

그렇다면 우리는 어떻게 블록체인 프로토콜에 대해 통찰을 얻을 것인가?


통찰

분류와 통찰의 구분



분류보다 통찰을 먼저 찾는다는 것이 무엇을 의미할까. 디테일(detail)을 살펴보는 것을 뜻한다. 개념을 쪼개고 쪼개 어떻게 블록체인의 프로토콜이라는 것이 구성되는 지 알아보는 것이다.

하나의 개념에 대해 정확히 알기 위해 치고 들어가면 엄청나게 많은 정보가 우리를 기다리고 있음을 알 수 있다. 그리고 대체로 어렵게 느껴진다. 컴퓨터 공학의 논문을 읽어야할 수도 있고, 하버드 비즈니스 스쿨에서 쓴 블록체인 사업 관련 글들을 봐야할 수도 있다. 그것 하나를 읽는 데 하루종일로도 모잘라 사나흘 걸릴 수도 있다.

그 와중 세상은 바삐 돌아가는 것 같다. 하루가 다르게 새로운 기술이 나온다. 수많은 SNS와 블로그 형식으로 컨텐츠들이 쏟아진다. 쉽게 가짜 분류를 할 수 있는 방법들을 제시해주고 있다. 하루이틀만 읽다보면 세상에 어떤 것들이 나와있는지 알 수 있다. 심지어 각각에 대해 뭐라도 설명 할 수 있게 된다.

이렇듯 살다보면 편히 인터넷을 떠도는 게 더 매력적으로 느껴질 수 밖에 없다. 그렇지만 놓치지 말아야할 쟁점이 있다. "나는 분명 머리가 나쁜 데 왜 다 쉬워보일까?" 라는 의문을 스스로 제시 해야한다는 말이다 :)

호두껍질 속에 우주가 있고, 일상의 사소한 깨달음이 인생에 영향을 끼친다.

디테일한 것들과 그것들을 쫓는 나를 만약 놓친다면, 내놓아야할 대가가 적지 않다.

이것이 2000개가 넘는 블록체인 프로젝트들을 쳐다보며 허덕이면서도 굳이 가만히 앉아 조금은 더 이론적인 문서를 읽어볼 이유가 된다.

카르다노(Cardano)의 우로보로스(Ouroboros) 프로토콜 논문은 그런 의미에서 가뭄의 단비와도 같았다.


카르다노 - 3세대 플랫폼의 선구자



1세대 비트코인과 2세대 이더리움을 지나 제 3세대 플랫폼들이 나타나고 있다. 이들은 분명 3세대라는 평가를 받을 값어치가 있는데, 왜냐하면 이더리움이 정말 제대로된 dAPP 프로젝트를 단 한개도 보여주지 못하고 있기 때문이다. 오히려 독립 블록체인으로 기획된 스팀잇이나 리플과 같은 것이 성과를 보여왔다. 만약 수백만개의 트랜잭션을 처리하며 글로벌하게 여러 문제들을 해결해주는 진정한 의미의 dAPP 플랫폼 역할을 할 수 있다면 분명 제3세대라 불릴 가치가 있을 것이다.

3세대 플랫폼을 지향하는 것들은 아주 다양하게 있다. 퀀텀(QTUM), 네오(NEO), 리스크(LSK), 카르다노(ADA), 이오스(EOS), 아더(ARDR) 등등..

카르다노는 그 중에서도 가장 선구자임에 틀림 없다. 왜냐하면 그들은 자기들이 걷는 길을 학문적으로 정립하려고 시도하고 있기 때문이다. 초기 백서를 쓸 때부터 DPOS 방식을 수학적인 방식으로 정의하고 그 안전성에 대해 증명한 채로 시작한다고 했다.
물론 이에 대해 모든 사람이 동의하진 않는다. 이오스를 이끄는 댄 라리머가 비판적인 얘기를 시작한 것, 그리고 그에 대한 카르다노의 찰스 호스킨슨의 반박, 댄 라리머의 마지막 조롱어린 글이 이미 블록체인 사회에서는 유명하다.

그러나 내 경험상 카르다노가 성공하든 말든 아래의 이유로 학문적인 접근은 의미가 있다.

  1. 수학적인 형식으로 쓰인 알고리즘은 그냥 팀끼리 대화하며 기획하는 것보다 구현하기 훨씬 쉽다
  2. 블록체인을 운영해나갈 때 수학적인 부분과 공학적인 영역이 나뉘어 검증하고 다듬어 가기 쉽다
  3. 사고가 발생했을 경우 어느 부분까지가 문제였는지, 구현이 틀렸는지 개념 자체가 결함이 있었는지 파악할 수 있다.

3.이 특히 정말 중요하다. 만약 이오스의 거버넌스가 실패하거나 해킹 당해 무너져내렸을 때 DPOS라는 체계 자체가 부정될 수도 있다. 하지만 카르다노의 것이 실패한다면 우로보로스(Ouroboros)프로토콜의 문제였는지, 그것을 구현함에 있어서 문제였는지를 파악하고 다음 단계를 생각할 수 있다.
개발자의 입장에서는 1.도 중요한 요소인데, 개발팀에서 만약 프로토콜의 스펙에 대해 정확히 정의하지 않은 채로 출발했다면 생각보다 여러 방향으로 아이디어가 제시되어 혼란스럽기 쉽기 때문이다. 하지만 어떤 알고리즘, 모델, 그 외 추상적인 그림이 그려진 상태로 개발할 때 얼마나 내 능력 이상으로 정갈한 코드를 만들 수 있는지 개발자들은 공감할 것이다.

대부분의 새로운 블록체인들은 POS/DPOS 혹은 그와 유사한 방식을 사용하려 시도하고 있는데, 그들은 그 어떤 것들을 가지고도 우리와 대화를 나눌 수 없는 상태다. 왜냐하면 모든 개념이 코드 속에 융합되어 있어 그것들을 모두 분석해가면서 얘기해야하기 때문이다. 모든 프로젝트들이 그저 자기네가 우월하다고 떽떽 거리고 있다. 그 와중 유일하게 카르다노의 것이 추상적인 형태로 문서화 되어있으므로, 즉 대중에게 자신의 의도를 열어놨으므로 새로운 블록체인 패러다임의 리더라고 볼 수 밖에 없다.


통찰을 위한 한 걸음 - 우로보로스 (Ouroboros)의 해설



우로보로스는 카르다노의 여러 학문적인 작업 중 가장 먼저 한 것으로, 영어 이름은 provably secure proof-of-stake blockchain protocol이다. 안전성을 (수학적으로) 증명할 수 있는 POS 프로토콜이라는 뜻이다.

우로보로스 백서

수학적으로 증명한다는 게 무엇을 어떻게 한다는 것일까?

앞으로 3-5개 정도의 포스팅을 이용해 그것을 설명해보려고 한다. 설명 안에는 수학적 기호를 아예 넣지 않는 것을 목표로 하고 있다. 수학을 전혀 모르는 사람을 위해서이기도 하고, 내 스스로 정확히 이해했다는 확신을 갖기 위해서다. 그런데 읽어가면서 고민이 들기는 한다. 실제 사용되는 수학적 용어는 중학교 수준의 교육을 받는 사람이라면 누구나 이해할 수 있는 수준이며, 원래 수학 만큼 엄밀한 언어가 없는데 그것을 포기해가면서 통찰을 얻을 만한 지식을 쓴다는 것이 거만한 행동인 것 같기도 하다. 그래서 정확히 어떤 형식으로 써야 커뮤니티와 미래의 나 모두에게 도움이 될 지에 대해서는 생각 중이다.

하지만 어떤 방식으로 쓰든 그 해설을 읽는 사람이 통찰에 한 걸음 더 다가갈 수 있을 것이라고 확신하고 있다. 우리 인생을 돌아보면 어떤 행위를 하느냐보다 용기를 내 그 행위를 하는 것 자체가 중요할 때도 있고, 지금이 그래야 할 때라 생각하기 때문이다.

논문이 어려워서 시간이 꽤 걸리긴 할 것 같다 :)

Sort:  

오옷! 카르다노는 예시일 뿐, 합리적인 관점을 제시해주시는 군요. 다음 포스팅도~ 기대됩니다.

제 블로그에 왜 다운보팅을 하신건가요?

앞으로의 글 기대하겠습니다. ^^ 풀봇 리스팀 합니다~

카르다노의 방향에 대해서 설명하신 글이지만 쓰여진 단어가 블록체인

용어일 뿐이지 몇몇 단어만 사회의 용어로 바꾸면

블록체인이든 에이다든 아무 관심없는 사람들도

봐야할 좋은 글이라고 생각합니다.

분류와 통찰이 필요한 시대에 무엇을 어떻게 보고

생각해야할지 기본을 돌아보게 되네요.

감사합니다. 다만 저도 통찰보다는 가짜 분류를 하는 쪽에 가깝게 살아왔기에 앞으로라도 노력해야겠지요. 스스로 반성하게 만드시네요.

handrake라는 단어가 구글검색에 딱히 안나오는 걸 봐서, 이영도 작가의 팬이신 모양이네요. 반갑습니다

참을 수 없는 존재의 가벼움 보다 감명깊게 읽은 소설이라

그런지 모든 사이트에서 등장인물 돌려막기로

아이디를 만들고 있죠 ㅋ 작가님께 로열티를 드리는 대신 책사기로 갈음하는 중입니다-_-;;

잘읽었습니다. 감사합니다.

저도 에이다 투자중이지만 어렵네요 ㅎ
글 잘봤습니다!
보팅하고 가요~~!

잘봤습니다. 수학 때문에 접근하기 어려웠는데 관심좀 가져야 할 것 같아요. 포스팅 계속 부탁드립니다.

첫번째는 안정성이라는 것은 아직은 배우는 학생이라서 대답못하겠고 두번째는 지분생성이 자체 지분과 지분 투표로 이루어진 소수정예 증인(dpos)인가 최소 지분이라는 조건만 있는 일반 pos 인가의 차이인 것 같네요.

@홍보해

Hello @sum-park , I was designed to give advice to "steemit" users.

I recommend to increase this;

The most winning bid bot in the last 24 hours is "smartsteem"

You can enter "steembottracker.com" to find more offers.

You can make "Resteem" and advertise to the followers of the whale accounts.

"Resteem Bot" for you;

@hottopic

Coin Marketplace

STEEM 0.32
TRX 0.12
JST 0.034
BTC 64664.11
ETH 3166.18
USDT 1.00
SBD 4.11