많은 주식 트레이더들이 암호화폐 투자에 대해 큰 선입견을 가지고 있는 사람들이 많다. 마치 주식투자 초창기 때 주식투자가 패가망신의 지름길이라니, 옵션 투자가 모든 악의 근원이라니 하는 것처럼 말이다.
하지만, 최근 트렌드는 이미 MBN, 즉 메타버스 (metaverse)-비트코인 (Bitcoin)-NFT가 대세라는 점에는 이견이 없을 것이다. 물론 최신 트렌드를 모른다해도 주식 트레이딩에 전혀 문제는 없다. 다만, 주식시장은 아는 만큼만 보이는 법이니 트렌드에 뒤쳐져서 혹시 모를 절호의 기회를 놓치는 우를 범하지 말자는 뜻에서 이 시리즈를 시작해 본다.
앞으로 몇 차례에 걸쳐 늘 그래왔듯이 가능한 한 아주 간단하게 설명할 예정이다.
뭐 그러다 보면 다소 조금은 정확하지 않은 내용도 있을 수 있지만, 이 포스팅은 어디까지나 쉽게 ‘개념만 잡고 가자’는 의미이니 단어 하나, 토씨 하나 따지는 불편러들께서는 조용히 오른 쪽 상단의 X표를 사뿐히 누르고 퇴장하시면 되시겠다.
시리즈의 큰 틀은 블록체인 (block-chain), 스마트 컨트랙트 (smart contract), NFT 세 가지로 정했는데 과연 필자의 깜냥으로 얼마만큼 커버를 할 수 있을 지 모르겠다. 자칫 수십 회에 걸친 포스팅이 될 수도, 아니면 한 두 편 쓰다가 나자빠질 수도 있으니 이 점 양해 바란다.
- 블록체인
- 스마트 컨트랙트 (smart contract)
- NFT
오늘은 먼저 블록체인.
블록체인은 이미 사람들에게 많이 알려지고 여전히 자주 입에 오르내리는 개념이긴 한데, 붙잡아 놓고 직접 설명해 달라고 해보면 그 의미를 제대로 설명할 수 있는 사람은 그닥 많지 않다.
그.뤠.써!
한 번 블록체인이 어떤 건지 함께 알아보는 시간을 갖기로 하자.
블록체인이 가장 혁신적이라고 평가 받는 점이 바로 ‘탈중앙화 (脫中央化, decentralization)’라는 개념인데, 탈중앙화란 ‘중앙집중화를 벗어나 분산된 소규모 단위로 자율적으로 운영되는 것’을 말한다.
벌써부터 가슴이 답답하고 숨이 턱 막히지?
어렵지?
우리가 흔히 알고 있는 은행을 예로 들어 보자.
“은행은 월급이 들어오고, 다른 사람에게 돈을 송금하고, 각종 공과금을 내고, 이자를 받고 하는 등의
모든 입출금 정보가 바뀔 때마다 내 은행계정의 거래내용을 은행의 중앙서버에 기록하고 모든 정보를 보관한다. “
그런데 만약 이 은행의 중앙서버에 해커가 침입해서 여러분의 통장잔고를 모두 자기에게 이체하고 사라져 버렸다면 어떤 일이 생길까? 아니면 어느 날 통장을 정리하다보니 보내지도 않은 큰 액수가 모르는 사람에게 송금된 것으로 나온다면?
물론 은행은 이곳 저곳에 백업 서버를 두었으니 결과적으로는 모든 비정상 적인 거래는 다시 되돌려지겠지만, 해결이 될 때까지 여간 불편하고 신경이 쓰이는 일이 아닐 것이다.
왜 이런 일이 생길 수 있을까?
바로 은행의 구조라는게 전통적인 ‘서버-클라이언트’의 구조이기 때문이다. 다시 말해서 은행의 모든 정보는 은행의 중앙서버로 집중되어 권한이 몰려있는 구조이기 때문에, 이 중앙서버에 문제가 생겨버린다면 모든 정보에 대한 오류는 물론이고 심지어 정보의 위변조까지도 가능하다는 것이다. 그러니 해커의 입장에서는 은행의 중앙서버 한 곳만 뚫고 들어갈 수 있다면 나머지는 자기 세상이라는 거다.
그렇다면 그 좋다는 블록체인은 어떻게 다르다는 것일까?
일단 블록체인의 운영과정을 살펴보자.
블록체인 내에서는 네트워크에 참여하는 모든 사람들에게 여러분 통장의 사본을 나누어 주고 보관하게 하는데, 여러분의 통장사본을 가지고 있는 사람들을 특별히 ‘노드 (node)’라고 부른다. 통장의 사본을 가지고 있다는 말은 바로 여러분의 계정내역을 확인할 수 있다는 말이다. 그런데 걱정할 필요는 없다. 노드들은 통장의 사본만 가지고 있을뿐 당신이 누군지 전혀 알지 못한다.
여러분이 일상생활을 하면서 마트에 가서 장을 보고, 은행 대출금도 갚고, 자동차 할부금도 내면서 금융거래를 계속하게 되면 새로운 거래기록들이 발생하겠지?
이렇게 생긴 새로운 기록들은 일정한 ‘단위’로 여러 사람들이 가지고 있는 각각의 통장사본 마지막 장에 자동적으로 기록이 된다는 거야. 이때, 이 기록이 되는 단위를 바로 ‘블록 (Block)’이라고 부르는데, 금융거래 횟수가 늘어날 수록 이 블록들은 시간의 순서에 따라 차곡차곡 추가가 된다는 거야. 마치 레고 블록처럼 말이다.
여기서 중요한 점은 블록별로 적힌 내용은 모두 암호화되어서 일단 한 번 기록이 되면 수정이나 삭제가 불가능하고 읽을 수만 있다는 것이다. 아무나 열어서 수정이 가능하다면 여러분 은행잔고가 0이 되는 건 시간문제겠지?
그러니 누군가가 만약 억지로 이 내용을 열어서 내용을 수정하거나 삭제하는 경우가 생긴다면 해당 블록의 내용은 더 이상 신뢰를 할 수 없게 되어버린다는 거다.
그럼 실수건 의도적이건 간에 적혀있던 내용이 바뀌었다면 어떻게 해야할까?
그렇지! 가지고 있는 건 통장의 사본이잖아.
그러니까 그냥 그 통장사본은 버려버리고 내용이 바뀌지 않은 새 통장의 사본으로 복사해서 받으면 되는거야.
하나만 더!!! 장부에 기록된 내용 중에서 중간 블록에 있던 내용을 바꾸면 어떻게 되지?
당연히 그 블록의 내용도 믿을 수 없게 되니 자연히 그 다음 블록들의 모든 내용을 믿을 수 없게 되어버린다.
그럼 어떻게?
마찬가지로 그냥 그 통장사본은 버리고 내용이 바뀌지 않은 새 통장의 사본으로 복사해서 받는거야.
앞에서 레고 블록이라고 했지?
만약 여러분이 레고블록을 쌓아서 10층 짜리 건물만한 태권브이를 하나씩 완성했는데, 맨 아래 블록 하나를 바꾸려고 한다고 생각해봐…쉽지 않겠지?
이것처럼 모든 블록 (block)들은 서로 맞물려 연결 (chain)되어 있기 때문에 블록체인 (block chain)이라고 부르는 거야.
자, 이름의 유래는 알겠는데…
여러 사람들이 내 통장사본을 나눠가지고 있으면서 그냥 거래기록만 추가하는 것이 블록체인이야?
아니지!, 더 중요한 게 있는데 그건 바로…
여러분의 통장사본을 가지고 있는 사람들이 가끔씩 모여 장부의 쓰여진 블록의 내용을 확인하는거야.
서로 가지고 있는 통장사본 내용을 확인하는데, 개중에는 나쁜 의도를 가지고 블록 내용을 변경한 경우도 있을 수 있고, 네트워크 오류로 훼손된 블록을 가지고 있는 사람들도 있을꺼야. 그러면 노드 들끼리 가지고 있는 통장사본을 비교해서 과반수가 넘는 사람들이 똑같이 가지고 있는 통장을 ‘옳바른’ 통장사본이라고 결정을 하는거야.
이게 바로 블록체인이 안전하다고 판단하는 근가가 되는 거야.
왜냐고?
통장사본의 내용을 지우거나 위조하기 위해서는 모든 노드들을 ‘한꺼번에’ 해킹해서 최소 과반수가 넘는 통장사본 블록의 내용을 바꿔야 하기 때문이야.
뭐 별거 아니네…
…라고 생각하는 사람도 있겠지?
그런데 노드로 임명된 사람들의 수는 100명, 1천 명의 수준이 아니라는 게 함정.
무작위로 선정된 어~~~~~엄청 많은 수의 익명의 노드를 하나 하나 찾아내는게 과연 쉬울까?
필자는 해킹에 대해 무뇌한이라 해킹에 해박한 독자가 있다면 지적해 주시기 바란다.
그리고 나서 그 많은 노드들을 모두 찾아내었다고 가정하더라도 한꺼번에 또는 새로운 블록이 생성되기 전에 과반수 이상을 해킹하기는 더더욱 쉽지 않을 것이다.
예를 들어 비트코인(bitcoin)의 경우 10분에 한 번씩 새로운 블록이 생성되는데, 과연 이 10분 안에 과반의 노드를 해킹하는 건 아마 수퍼컴퓨터를 이용하지 않고는 불가능한 것으로 알고 있다.
“노드1 해킹 성공, 노드 2 해킹 성공, 노드3 해킹 성공, …,
…노드2,987 해킹 성공, 노드 2,988 해킹 성공…
…아~ 쉬바 벌써 10분 지났다…처음부터 다시…”
흥미롭지?
그렇기 때문에 중앙에 권한이 집중되어 있는 것이 아니라 정보와 권한을 나누어 가진 형태인 ‘탈중앙화’라는 개념이 여기서 생기는 거야.
노드들의 통장사본 확인하는 반상회 때는 통장사본을 갖고 있는 사람들끼리 블록마다 돌아가면서 반장을 해서 블록 내용을 확인/검증을 하게 된다.
왜 하필 돌아가면서?
한 사람이 계속 반장을 하다보면 목에 힘도 들어갈 수도 있고, 말 안듣는 통장주인들을 이유없이 미워할 수도 있잖아? 아니면 계속 반장을 계속 하고 싶기도 하겠지?
이런 과정들이 바로 반장, 중앙의 한 사람에게 주어지는 권한이 커지는 거잖아?
그래서 매번 반장을 뽑을 때마다 아주 랜덤하게 제비뽑기를 통해 반장선거를 하는거야.
아예 장기집권의 씨를 말려버리는 거지. 탈중앙화의 개념이 어렴풋이 잡히지?
하지만 이게 좋은 건 알겠는데, 이렇게 자주 불러다 놓고 블록내용 확인해 보자고 하는 통장사본 반상회라는 게 꽤 번거롭고 귀찮다는 문제가 발생한다.
실제로 노드들도 그렇게 생각할 수도 있을꺼야.
아마, 분명히 귀찮겠지…내 것도 아닌 통장사본이 뭐라고 자꾸불러서 대조하자고 보채는 게 얼마나 싫겠어?
그러다 보면 귀찮아서 대충대충 확인하는 사람도 있을테고, 개중에는 일부러 골탕 먹이려고 틀리게 검증을 할 수도 있을꺼야.
그런데 그렇게 되면 통장사본에 적힌 거래내용이 어떤 때는 맞고, 어떤 때는 틀리고를 반복할테고 점점 더 노드들의 반상회에 신뢰도가 떨어질 수 있겠지?
그래서 검증을 제대로 해주는 대가로 보상을 주고 있어.
네네…수고하셨네요. 이거 약소하지만 그냥…
이렇게 네트워크는 노드들에게 지불하는 보상은 대부분 해당 암호화폐이고, 노드들은 이 보상을 받기 위해서 일을 제대로 한다는 거야. 다들 암호화폐 채굴(採掘) 또는 마이닝(mining)이라는 말 많이 들어봤을꺼야. 이게 바로 채굴의 개념이야.
어떤 거래내역이 들어있는 블록이 생성이 되면 누군가가 이 블록 정보에 아주 복잡한 수학공식을 적용해서 ‘해시 (hash)’라는 값으로 변경하는 거야. 여기서 해시란 “어떤 주어진 데이터에 근거해서 생성되는 정해진 길이의 독특한 무작위 문자열”인데 여기 내용에는 최신 블록에 대한 정보랑 과거 블록의 해시 등의 정보도 포함이 되는거야.
예를 들어 비트코인(bitcoin)의 경우에는 10분에 한 번씩 새로운 블록이 생성되는데, 이 블록을 16진수를 이용해서 총 64자리의 해시(hash)값을 찾아내는 사람에게 비트코인을 발행하여 지급한다는 이야기다.
이제 살짝 감이 오지?
채굴자들은 모든 거래를 확인해서 그 블록이 정상이라는 것을 검증하거나, 새로운 거래내역을 기록한 블록을 생성해서 해당 블록이 정상적으로 ‘봉인(seal-off)’될 경우에 보상을 받게 된다는 거야. 즉 앞에서 이야기한 ‘해시값’으로 설명하자면, 채굴자가 수학적 정확한 해시 순서를 계산해서 성공적으로 블록을 만들어 냈을 경우에 보상을 받는다는 이야기야.
비트코인 채굴을 위해서 엄청 좋은 사양의 컴퓨터로 며칠을 돌리고 암호화폐를 어쩌고 하는 말 들은 적 있지? 그게 이 해시값을 계산해 낸다는 거야. 원래는 암호화폐의 종류에 따라 노드랑 채굴자도 몇 가지로 구분이 되지만, 대개는 노드와 채굴자는 같은 사람이라고 봐도 무방해.
어때 이제는 상당히 쉬워졌지?
그래도 어렵다고 느끼는 사람들이 있을꺼야. 그건 아마 ‘채굴’이라는 단어 때문에 오히려 블록체인의 개념을 이해하기 어렵지는 않은가 생각이 되는데, 차라리 채굴 보다는 ‘사설 등기소 연합 (the association of private recorder’s offices)’’이 더 정확한 표현이 아닐까 싶기도 하다.
등기소에서는 소정의 수수료를 받고 기존의 기록에 대한 확인서도 발행해 주기도 하고, 소정의 수수료를 받고 새로운 기록을 기재하기도 하잖아? 하지만 등기소는 현재 정부가 주체가 되어 운영되는 중앙 시스템이지만, 무수히 많은 사설 등기소들이 네트워크 상의 노드의 역할을 하며 기록의 정확성과 신뢰성을 유지하며 수수료를 받는 형식에 가깝다고 생각하면 이해가 더 빠를꺼야.
자, 블록체인의 특징을 크게 세 가지로 정리해 보면,
- 통장사본의 내용은 수정하거나 삭제할 수 없다.
- 네트워크 참여자인 노드들은 이 통장의 사본을 가지고 있으며 확인은 언제든지 가능하다.
- 네트워크의 수 많은 노드들은 자주 모여 블록의 내용을 검증한다.
더 줄이자면, 누구도 거래내역을 조작할 수 없는데, 누구든지 참여할 수 있고, 언제든지 빠질 수 있다는 거다. 그렇게 때문에 이 통장사본에 적힌 거래내용은 투명하게 유지되고 신뢰할 수 있다는 거야.
그럼 이 좋은 블록체인을 왜 정부나 금융기관에서는 적용을 꺼리는 것일까?
블록체인은 중개기관 없이 참여자들이 직접 거래할 수 있는 시스템이기 때문에 중앙 조직이 불필요하다는 점이 장점이자 가장 치명적인 단점이 될 수도 있다. 블록체인 방식이 더 많이 응용되고 사용될 수록 기존의 중앙집중식 조직은 약화되거나 소멸될 가능성이 높아지는데, 여기서 말하는 그 전통적 중앙 집중식 조직이 바로 기존의 금융기관들과 중앙은행, 정부이기 때문이다.
예를 들어, 블록체인 기반의 암호화폐가 널리 사용될 경우, 기존의 은행권과 금융기관들은 그 권한과 역할이 축소되고 정부 역시 시장 통제력이 감소하고 시장에 대한 금융정책의 실효성 역시 떨어질 수 밖에 없어 결국은 그 역할이 대폭 축소되거나 심지어 소멸할 것이라고도 예상되고 있다는 것이다. 당연히 현재의 기득권에서 밥그릇을 순순히 내줄 리는 만무…
그 밖에는 암호화폐의 종류에 따라 채굴에 많은 비용이 들 수 있고, 거래량이 늘어날 수록 단위시간당 가능한 거래회수가 적어지고, 새로운 거래내역이 생길 때마다 새로운 블록을 만들어 붙이기 때문에 결국에는 블록체인의 길이가 한정될 수 있다는 등등의 단점이 암호화폐의 시장에 폭넓게 적용되는 것을 막는 요인이기도 하다.
도움이 되셨기를 바라며 늘 과격한 수익 내시기 바란다.
이 포스팅은 특정 종목의 매수/매도 추천의 글이 아님을 밝힌다.