여전히 블록체인과 암호화폐를 뗄 수 있나 궁금하세요?

정승원의 '울룩불룩 블록체인' #2

등록 : 2018년 9월 18일 10:38 | 수정 : 2018년 12월 3일 15:54

 

이번편에서는 블록체인이란 용어 자체에 대해 설명하고 다음편에서는 경제학적 관점에서 본 블록체인의 안정성에 대해 이어 쓸 계획이다.

 

블록체인: 거래 내역을 담은 블록을 체인 형태로 연결하여 분산 저장한

블록체인. 영어로는 blockchain이라고 쓴다. 아마 블록체인을 전혀 모르는 사람이 필자에게 블록체인이 뭔지 한 문장으로 설명해달라고 한다면 이렇게 답할 것이다. “거래 내역을 담은 블록을 체인 형태로 연결하여 이를 분산 저장한 것”이라고. 실제 필자의 초보자용 유튜브 강의도 이렇게 설명하고 있다. 물론 여기에 하나씩 살을 붙여나갈 수 있지만 사실 이것만으로도 이미 블록체인의 꽤 괜찮은 정의 중 하나이다. 즉 블록에 들어가는 것은 거래 내역이고 이것을 체인으로 즉 일렬로 연결한 것이 블록체인이다.

거래내역이라 함은 아주 단순하게는 송금내역 즉 A가 B에게 비트코인 1개를 보냈다부터, 복잡하게는 스마트 컨트랙트나 기타 분산어플리케이션(DApp) 구동을 위한 프로그래밍 코드가 들어갈 수도 있다. 예를 들자면 블록체인 기반 SNS인 스팀잇(Steemit)의 경우 글을 쓰거나 추천을 하는 행위 역시도 거래 내역이다.

물론 블록체인이란 단어 그 자체만 놓고 보면 분산저장하지 않았다고 해서 블록체인이 아니라고 말할 수 없을지도 모른다. 하지만 분산저장을 하지 않는다면 안정성과 효율성면에서 굳이 블록체인을 쓰는 의미가 없기에 분산저장은 사실상 필수라고 볼 수 있다. 즉 흔히 말하는 풀 노드(full node)들은 블록체인에 담긴 모든 정보의 사본을 각자 보관하고 업데이트해 나간다.

gettyimages

 

블록체인 vs 분산원장

이렇게 거래내역을 분산저장한다고 하면 나오는 또다른 용어가 바로 “분산원장”(Distributed Ledger)이다.

흔히 블록체인과 분산원장을 동일시해서 말하기도 한다. 하지만 엄밀히 말하면 블록체인은 분산원장의 한 형태라고 할 수 있다. 블록체인의 글자 그대로의 의미로는 앞서 말한 것처럼 일렬로 즉, 체인 형태로 연결된 구조를 지닌다. 하지만 분산원장이 꼭 체인 형태만 있는 것은 아니다. 예를 들어 암호화폐를 어느 정도 아는 사람이면 익히 들어본 IOTA같은 경우 chain의 형태가 아닌 DAG(Directed Acyclic Graph) 형태를 지니고 있다. 심지어 흔히 블록체인에서 말하는 블록이란 개념자체가 IOTA에선 존재하지 않는다.

하지만 언어는 변하기 마련이다. “blockchain”이란 단어 역시 처음에는 “block chain” 두 단어였다. 하지만 시간이 흐르면서워낙 이 단어가 많이 쓰이자 결국 한 단어로 붙여서 쓰게 되었다. 어떤 용어가 많이 쓰이게 되면 원래의 의미보다 포괄적인 의미로 변화하게 되는 경우가 많다. 즉 블록체인이란 표현자체도 경우에 따라서는 보다 일반적인 분산원장 기술을 말하는데에도 쓰이고 있는 것이 현실이다. 즉 둘을 엄밀히 구분해야하는 경우가 아니면 사실상 그 둘을 교환해서 써도 무방하다 할 수 있다.

참고로 비트코인 블록체인의 경우 그 크기가 현재 180기가바이트정도 된다. 물론 비트코인을 단순히 사용하기 위해서 이런 풀 노드가 될 필요는 없다. 하지만 누군가는 이 비트코인 블록체인 P2P (peer-to-peer) 네트워크를 유지해줘야 한다. 왜 이들은 전기비와 컴퓨팅 자원을 들여 이런 일을 할까?

보통 경제학에선 모두가 자신의 이익을 위해 행동한다고 가정한다. 즉 비용이 발생하는 일에 보상이 없다면 그 일을 할 유인(incentive)가 존재하지 않는다. 이 때문에 일상적으로 보상과 인센티브를 거의 동일시해서 말하기도 한다.

 

채굴(mining)이란

채굴이란 거래내역이 담긴 블록을 만드는 과정, 즉 해당 블록에 담긴 거래의 유효성을 입증하는 과정이며, 매번 신규 블록을 처음 만든 사람에게 신규로 생성된 암호화폐가 보상으로써 주어진다.  실제 채굴이 하는 작업은, 쉽게 말해 어려운 계산문제를 푸는 것이라고 생각하면 된다. 당연히 그만큼 좋은 컴퓨팅 하드웨어를 필요로 하고 전기비 역시 많이 든다.

실제 비트코인 백서에서도 mining이란 표현을 쓰며 금광채굴과 많은 유사성을 가진다. 금광채굴의 경우 많은 비용이 드는 일이고 매장량이 한정되어 있으며 따라서 갈수록 채굴이 힘들어 진다. 비트코인 역시 마찬가지이다. 좋은 컴퓨팅 하드웨어와 전기비, 또한 총 발행가능한 비트코인 개수가 한정되어 있으며 채굴 보상으로 주어지는 비트코인 역시 주기적으로 감소한다

 

블록체인과 암호화폐는 분리할 있나?

한때 시끄러웠던 TV 토론회에서도 나온 주제 중 하나가 블록체인과 암호화폐를 분리할 수 있느냐 없느냐 였다. 누구나 원한다면 full node가 될 수 있는 퍼블릭(public) 블록체인의 경우 블록체인을 유지하는 비용에 대한 보상, 즉 incentive가 주어져야 하는데 이를 바로 암호화폐로 지급하는 것이다. 흔히 말하는 퍼블릭 블록체인에서 블록체인과 암호화폐를 분리하는 것이 현실적으로 불가능하다는 이야기가 바로 여기서 나오는 것이다. 물론 엄밀히 말하면 암호화폐로써 그 보상을 지급하는 것이 상당히 편리한 방법이라는 표현이 더 맞을 것이다. (또한 많은 사람들이 이 방법을 상당히 획기적인 발상이라 평가 한다.)

암호화폐에서 “화폐”라는 부분때문에 생기는 여러 제도적인 규제와 한정되어 보이는 용도 때문에 암호자산(crypto asset)이란 표현을 쓰기 시작하는 요즈음, 블록체인을 어떤 저장소, 즉 분산원장 그자체의 개념으로 본다면 그 사용료를 법정화폐로 지불받고 그 사용료를 분배하는 것이 원천적으로 불가능한 것이 아니니까 말이다. 비록 탈중앙화라는 정신에는 어긋날지언정 기술적으로 불가능한 것은 아니다. 하지만 현재의 많은 블록체인 프로젝트가 암호화폐 그 자체가 주된 용도로 쓰이는 환경에서는 이 방법이 사실상 불가능한 것이 현실이다.

이렇게 퍼블릭 블록체인에서는 현실적으로 암호화폐를 분리해서 생각하기 힘든 반면 관리주체가 있는 프라이빗(private) 블록체인의 경우 해당주체가 비용을 부담하면 되기 때문에 암호화폐를 사용하지 않아도 된다.

쉽게 생각해서 내가 내 가계부(프라이빗 블록체인)를 적는데 그걸 거래내역 몇개씩 모아 한 페이지(블록)에 적고 그걸 순서대로 이어서 책처럼 만들어 보관하는데 시간을 쓴다고 해서 금전적인 보상이 주어지진 않는다.

하지만 그게 내 가계부가 아니라 남들이 쓴 지출내역을 누구나 확인할 수 있게 내가 공정하게 적어주고 보관(퍼블릭 블록체인)해주는 역할을 한다면 당연히 무료로 해줄 사람은 없을 것이다. 같은 원리인 것이다.

 

블록체인에서 체인이 가지는 진정한 의미

마지막으로 블록체인에서 “체인”이 의미하는 바에 대한 추가 설명으로 글을 마무리하려 한다. 물론 “체인”이 “일렬로 연결된 것”이란 글자 그대로의 의미도 있지만 암호화 hash를 통해 이전블록의 유효성을 강화(reinforcement)해나가는 체인이란 점이 더 중요하다. 블록에는 거래 내역 이외에도 여러가지가 들어가는데 이 중에서 가장 중요한 것 중 하나가 이전 블록에 대한 암호화된 요약정보, 즉 “암호화 해시(cryptographic hash)”이다. 이 암호화 해시라는 것은 쉽게 말해 암호화된 요약본인데 입력값, 즉 데이터가 조금만 바뀌어도 해시값 역시 달라지는 성질을 지닌다.

블록체인에서는 블록이 B0->B1->B2->B3->…와 같이 체인으로 즉 일렬로 연결되어 있기 때문에 만약 블록 B1을 위조하려면 해당블록에 대한 해시값이 다음블록인 B2가  이미 계산해서 가지고 있는 B1에 대한 해시값과 틀려지게 된다. 즉 B2까지 위조를 해야하는 것이다. 그럼 B2의 해시는B3이 가진 B2에 대한 해시값과 또 틀려지게 된다. 즉 한 거래내역을 위조하려면 그 거래내역이 포함된 블록부터 시작해서 그 이후의 모든 블록을 위조해야하는 것이다. 바로 이 부분에서 블록체인이 해킹이 불가능하다던지 매우 안전하다는 말이 나오곤 하는 것이다. 이 블록체인에 대한 안정성은 다음 글에서 보다 자세히 다룰 예정이다.

 

<지난글 보기>

암호화폐 vs 가상화폐: 그 해묵은 논쟁에 대하여

 


정승원 브리스톨 대학 경제학과 조교수는 포스텍에서 전자전기공학, 컴퓨터공학, 수학과를 복수전공했고 스탠포드에서 경영공학 박사학위를 받았다. 안랩에서 소프트웨어 엔지니어, Facebook 본사 new faculty fellow economist로 일하기도 했다. 유튜브에서 직접 번역한 비트코인 백서 등을 가지고 블록체인 강의를 하고 있으며 스팀잇에 다양한 블록체인 관련 글들을 게재하고 있다.