brunch

매거진 Crypto 101

You can make anything
by writing

C.S.Lewis

by Writing Tree Oct 21. 2022

블록체인이란 무엇인가?

암호화폐의 기반 기술, 블록체인의 기본 개념을 알아보자

Disclaimer: 이 글은 크립토 입문자를 위한 해외 사이트 LearnCrypto의 아티클 <Crypto Basics: What is a Blockchain>을 번역한 글입니다. 대부분의 정보의 출처는 해당 아티클에 있으며, 이해를 돕기 위해 약간의 정보가 추가되거나 생략되었을 수 있습니다. 또한, 이 글은 투자 추천이나 보증 글이 아닙니다. 모든 투자판단은 본인의 책임 하에 있습니다.

블록체인이란 데이터를 저장하는 새로운 방식이다. 정보를 중앙 화하고 한 곳에 저장하여 통제하는 데이터베이스와 달리, 블록체인은 네트워크 전반에 데이터를 저장하게 된다. 이때 중요한 점은 그 어떤 네트워크도 기록을 변경할 수 있는 권력을 갖지 않게 된다는 것이다. 이 특징이 바로 탈중앙화(decentralization)이다.


블록체인이라는 이름은 매우 단순하게 탄생했다. 블록체인은 데이터를 블록(block)에 기록하게 되고 이 블록들을 암호화를 통해 묶어 데이터를 저장한다. 이 모습이 마치 블록들을 엮은 사슬(chain)처럼 생겼다고 해서 블록체인이라는 이름이 붙게 되었다.


비트코인의 창시자인 사토시 나카모토는 2008년 백서에서 블록체인의 개념을 처음 제시하였다. 거래 내역의 탈중앙화 된 장부를 만들 수 있는 능력은 비트코인의 생존과 이중 지불 문제(double-spend problem) 해결에 있어 기반이 되었다. 다시 말해, 이중 지불이 불가능하며 금융 기관을 통하지 않고, 분산된 네트워크를 통해 개인대 개인(peer-to-peer)으로 사용될 수 있는, 온전한 디지털 화폐의 기반 기술이 블록체인이다.


신뢰와 대행의 문제

화폐는 물건의 교환을 위해 생성되었다 (출처: 스냅타임)

우리는 화폐가 물건의 교환을 위해 처음 생성되었다는 사실을 알고 있다. 서로를 모르거나 서로에 대한 신뢰가 없는 두 사람이 물건을 문제없이 교환할 수 있게 만든 매개체인 것이다. 그러나 문명과 상업이 발전할수록 신뢰의 문제를 해결하기 위한 유일한 방법은 중앙화 된 권력기관이 화폐를 보증해주는 것이었다. 이를 보장해주는 기관은 왕국, 영주, 정부, 혹은 다국적 기관들이었다. 이들은 무엇이 정당한지(법), 누가 어떤 자산을 소유하고 있는지, 그리고 그 자산이 얼마나 가치가 있는지(중앙은행) 등에 있어 절대적인 권력을 가지고 있었다.


이 방식은 매우 실용적이었다. 그러나 최적의 방식은 아니었다. 2008년 금융 위기는 중앙 권력을 신뢰하는 것이 얼마나 위험할 수 있는가를 여실히 보여주었다. 이는 보통 주인-대리인 문제(Principal-Agent Problem)로 알려져 있다. 주인-대리인 문제란, 자산의 소유자와 자산의 통제를 대리인 사이의 우선순위가 달라지며 생기는 문제를 이야기한다 (그러나 여기서 주인-대리인 문제를 깊게 이해할 필요는 없다).


그렇다면 블록체인은 이 문제를 어떻게 해결할 수 있다는 것일까? 이를 답하기 위해 이번 글을 작성한다고 보아도 과언이 아니다.


우선 블록체인의 특징에 대해 이해를 해보고 데이터의 타당성에 어떻게 합의하는지에 대해 알아볼 것이다. 합의 메커니즘(consensus mechanism)은 블록체인에서 매우 중요한 부분이다. 이를 통해 권력기관을 제거할 수 있기 때문이다. 그리고 블록체인의 단점을 알아볼 것이다.


블록체인의 특징

블록체인을 간단하게 이해해보면, 모두가 개인 대개인으로 이어져 있는 네트워크이다 (출처:삼성반도체이야기)

제네시스 블록(genesis block; 모든 블록체인의 첫 블록)을 제외한 모든 블록은 3가지를 포함하고 있다.


1. 암호 해쉬(cryptographic hash)로 보이는 기록될만한 데이터

2. 코드로 표시되는 지난 블록 데이터 (혹은 암호 해쉬)

3. 블록이 체인에 더해진 시간


이렇게만 보면 무슨 소리인가 싶을 것이다. 이들을 조금 더 자세히 알아보자.


데이터: 블록체인에 기록되는 데이터는 무엇이 블록체인을 사용하느냐에 따라 달라질 수 있다. 예를 들어, 화폐로서 비트코인은 거래 데이터를 기록하기 위해 블록체인을 사용한다. 그렇기 때문에 비트코인의 데이터는 장부(ledger)라고도 불리는 것이다.
혹은 물류 체인 데이터 관리나 헬스케어 데이터, 그리고 신원 정보 등을 기록할 수도 있다. 즉, 블록체인은 디지털화될 수 있는 어떠한 데이터도 기록할 수 있다. 

암호 해쉬: 간단히 말해 암호 해쉬란 코드로 표기된 정보이다. 수학적인 함수를 통해 해쉬와 의미 있는 정보를 연결하는 코드를 생성한다. 따라서 블록체인에 기록된 정보를 바꾸기 위해서는 해당 정보와 상응하는 해쉬도 변하게 된다.


이를 조금 더 단순하게 설명하면 아래와 같이 볼 수 있다.


Y=1이라는 데이터에 암호화된 해쉬 함수를 적용하면 Hash Y1이라는 결괏값이 생성된다. 이때, 기존의 데이터를 Y=2로 변경하여 해쉬 함수를 적용하면 해쉬 결과도 Y2로 변화하게 된다. Hash Y1이라는 결괏값 대신 "강아지", Hash Y2라는 결괏값 대신 "나무"와 같이 데이터를 유추할 수 없는 결괏값이 나온다고 생각하면 이해에 도움이 될 수 있다. 중요한 점은 해쉬의 결괏값이 Y2가 맞다는 것을 검증하는 것은 쉽지만 이를 통해 기존의 입력값을 찾아내는 것은 거의 불가능하다는 것이다.


해쉬를 이해하는 것이 어렵겠지만, 우리가 매일 사용하는 로그인 정보를 생각하면 간단하다. 우리가 웹사이트에 로그인을 하기 위해 패스워드를 입력하는데, 웹사이트는 이 정보의 입력값이 타당한지만 확인할 수 있고 입력값을 알 수는 없다. 이때 사용되는 기술이 해쉬이다.


이해를 위해 강아지와 나무 같은 단어들을 이용하여 설명했지만, 실제 암호 해쉬는 숫자와 알파벳의 조합이다. 따라서 위의 예시와 달리 어떠한 단어나 의미를 내포하지 않고 있다. 


체인은 부서지지 않는다

블록체인의 사슬은 사실상 끊어지기 불가능한 구조로 이루어져 있다 (출처: Forbes Adivsor)

블록체인의 혁신은 크게 두 가지로 볼 수 있다. 우선 한 번 생성된 블록을 임의로 수정할 수 없고, 중앙화 된 권력 기관 없이 안전하게 데이터를 보관할 수 있다는 것이다. 


이 절차는 암호화 해시 함수로 시작한다. 각 블록은 해당 블록과 바로 전 블록의 데이터 해쉬 함수를 가지고 있다. 지난 블록의 데이터를 새로운 블록에 암호화함으로써 해시는 성장할수록 부패가 어려워지는 체인을 만들게 된다. 블록의 특정 부분을 수정하기 위해서는 이후 모든 블록의 데이터를 수정해야 하기 때문이다.


예를 들어 우리가 특정 블록의 데이터를 바꾼다면 이에 상응하는 해시가 바뀌게 된다. 그리고 그 이후 블록의 해시가 전부 바뀌게 되어 체인이 무효화되게 된다. 그러나 현재는 컴퓨터의 성능이 너무 좋아져 해시만으로는 블록체인을 보호할 수 없다. 그래서 사토시는 해시와 함께 컨센서스 메커니즘을 만들어 블록체인의 보안성을 높였다. 


작업 증명 방식

비트코인 채굴에 많은 컴퓨터가 동원되는 이유는 작업 증명 방식 때문이다 (출처:bankrate.com)

작업 증명 방식(Proof-of-Work; PoW)란 해시와 결합하여 비트코인 블록체인의 보안성을 높이기 위한 기술이다. 기본적으로 작업 증명 방식은 블록이 생성되기 전 작업을 요구하여 새로운 블록의 생성을 늦추는 기술이다. 작업 증명 방식은 체인에 새로운 블록이 더해지기 전 풀어야 하는 수학적 퍼즐을 만드는 것이다.


퍼즐을 풀기 위해 필요한 전력을 소모하게끔 만드는 것은 블록체인을 공격하려는 사람들의 사기를 꺾기 위한 장치이다. 블록체인을 공격해서 얻을 수 있는 이익보다 손해를 크게 만드는 것이다.


이런 PoW 과정은 블록 타임이라고 불리는 속도에 맞춰 블록이 생성되고 있는지를 확인하여 조절된다. 비트코인의 블록 타임은 약 10분 정도로, 비트코인의 블록이 10분에 한 번씩 생성된다고 이해하면 된다. 


블록체인에 악의적인 공격을 하는 노드는 손해를 보는 반면, 정직한 블록을 생성하여 블록체인 네트워크에 기여한 노드에게는 경제적 보상이 주어진다. 비트코인이란 무엇인가에서 살펴보았듯, 현재 노드가 받는 보상은 블록 당 6.25 비트코인이며, 2024년에는 보상이 3.125, 즉 반으로 줄어들 예정이다 (이를 반감기라고 부른다).


비트코인은 PoW를 합의 메커니즘으로 사용하고 있지만, 지분 증명 방식(Proof of Stake; PoS)나 위임 지분 증명 방식(Delegated Proof of Stake; DPoS) 등 다양한 합의 메커니즘이 존재한다. PoS는 참여하기 위해 직접적인 투자를 하면서 승부의 책임(skin in the game)을 가져가는 것이라고 보면 된다. DPoS도 유사한 방식이지만, 다른 노드에게 당신의 지분에 있는 블록체인 합의 권한을 위임하는 것이라고 생각하면 된다.


이러한 합의 메커니즘들은 조금 더 복잡하며, 더 효율적으로 보안성이 높은 블록체인을 만든다. 또한 컴퓨팅 파워와 전력 낭비로 이어지는 작업이 불필요하다. 사실 이러한 합의 메커니즘은 전에 설명한 블록체인 트릴레마를 해결하기 위한 시도이기도 하다. 


합의는 어떻게 도출되는가? 

합의는 블록체인의 핵심이다 (출처: 사이다톡)

마지막으로 블록체인이 안정성을 보장하는 방식은 분산화이다.


블록체인은 개인 대개인(P2P) 네트워크에서 운영된다. P2P 네트워크는 정부와 같이 중앙화 된 하나의 기관이 운영하는 것이 아니라, 모두 같은 법칙(protocol)을 따르는 컴퓨터의 분산화된 네트워크로 이루어져 있다. 이를 통해 블록체인에 연결된 모든 컴퓨터는 블록체인의 전체 기록에 접근을 할 수 있으면서도 예상 가능한 방향으로 작동한다.


새로운 블록이 체인에 더해질 때마다 누구나 이 블록의 데이터가 정확한지 검증할 기회가 있다. 그리고 블록체인에 연결되어있고 블록체인을 운영하는 모든 컴퓨터는 노드라 불린다.


블록이 체인에 더해지기 위해서는 최소 51%(과반)의 노드가 데이터의 정확성에 대해 동의를 해야 한다. 다시 말해, 작업 증명이 되었고 해시 함수가 모두 일치한다는 것을 확인하는 것이다. 이를 합의에 도달한다고 표현한다. 중앙 기관이 없이 진실에 대한 전체적인 동의가 일어나는 마법 같은 방법이다.


블록체인을 성공적으로 위변조 하는 것은 매우 까다롭다. 아래의 과정을 모두 거쳐야 하기 때문이다.

1. 블록체인에 있는 모든 블록에 간섭해야 한다

2. 모든 블록의 작업 증명을 다시 해야 한다

3. P2P 네트워크의 50% 이상을 제어해야 한다


이 과정을 하기 위한 난이도는 노드의 수가 늘어나며 기하급수적으로 올라가며, 경제적으로도 전혀 이득이 되지 않는다. 따라서 블록체인은 데이터를 저장하는 안전하고 탈중앙화 된 방식이며, 블록체인이 성장할수록 안전성도 함께 성장한다는 특징이 있다.


블록체인 사용 사례

블록체인은 현재 수많은 섹터에서 사용되고 있다 (출처: Kalyanicynixit Medium)

그럼 블록체인 기술이 어디서 활용되고 있는지 한번 알아보자.


가장 먼저 비트코인으로 대표되는 암호화폐이다. 중앙 제어가 필요 없는 돈의 새로운 형식을 만든 것이다.


비트코인의 모든 거래 데이터를 블록체인에 저장하며 사토시 나카모토는 세계 최초로 건전 화폐를 디지털 및 탈중앙화 버전으로 만들었다. 이에 대해선 지난 글에 자세히 나와있으니 기억이 안 난다면 다시 한번 보고 오기를 권장한다.


이 이후로 블록체인은 화폐 이외의 영역에서 적용되기 시작했다. 가장 유명한 예시는 이더리움이다.


2013년 비탈릭 부테린이라는 프로그래머는 스마트 컨트랙트라는 개념을 제시하며 블록체인 기술이 화폐 의외로 사용될 수 있다고 이야기했다. 2015년, 이더리움 블록체인이 세상에 공개되었다. 이더리움은 스마트 컨트랙트를 프로그래밍 언어(솔리디티)와 네이티브 화폐(이더) 위에 구축하는 것을 가능하게 만들었다. 비트코인이 탈중앙화 된 돈의 시초였다면, 이더리움은 탈중앙화 된 계약의 시초였던 것이다.


이를 기점으로 많은 애플리케이션들이 블록체인 위에 생성되고 있고, 새로운 산업이 탄생하고 있다. 현재로서 가장 눈에 띄는 신사업은 탈중앙화 된 금융, 혹은 디파이(Decentralized Finance; DeFi)이다. 디파이는 스마트 컨트랙트와 블록체인가 거래소나 은행, 증권사 등을 대신하여 중개자 역할을 하는 금융이라 생각하면 된다.


아직은 조심하라

블록체인이라는 이름으로 유혹하는 쥐덫에 걸리면 안 된다 (출처: 서울경제신문)

우리가 '건전 화폐' 논의에서 보았듯, 비트코인 블록체인은 안전성과 탈중앙화를 위해 확장성을 포기한다. 반면, 중앙화 되고 안전한 시스템은 초당 수만 개의 거래를 처리할 수 있지만, 신뢰와 이중 지불에 대한 부담을 가지고 있다. 작업 증명 방식은 신뢰 문제를 해결하지만 비자와 같은 거래량을 처리할 수는 없다. 비트코인은 현재 초당 약 5개의 거래 내역을 처리하고, 이더리움은 약 15개의 거래 내역을 처리한다.


이더리움 커뮤니티는 이 문제를 해결하기 위해 이더리움 2.0으로의 업데이트를 준비하고 있다. 이 개발의 목적은 샤딩으로 알려진 기술을 통해 15에 머물고 있는 TPS를 수만으로 개선시키는 것이다. 샤딩에 관한 것은 추후 다룰 예정이다.


현재로서 블록체인은 매우 유망한 기술이지만, 아직까지 활용 방식에 대한 논의가 진행되고 있는 상황이다. 많은 프로젝트가 스스로를 블록체인이라고 설명하지만, 앞서 언급된 특징을 보여주지 못하고 있다. 왜냐하면 이런 특징은 달성하기 쉽지 않기 때문이다. 통제를 할 수 있는 권한이 있는 존재가 있는 한, 매우 높은 확률로 통제권을 발휘할 것이기 때문이다. 그리고 이 권한의 결과는 꼭 사용자의 이익으로 연결되지 않는다.




                    

매거진의 이전글 스테이블코인이란 무엇인가?
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari