본문 바로가기
알쓸신잡 경제 이야기

[알쓸신잡] 암호화폐 이야기

by 꿈꾸는 피터팬 2024. 10. 9.
반응형

  (본 포스팅은 해당 블로그의 "[알쓸신잡] 블록체인(Block-chain) 이야기"와 이어지는 내용을 포함하고 있습니다.)

 

[알쓸신잡] 블록체인(Block-chain) 이야기 (1)

지난 2024년 01월 11일 미국 증권거래위원회(S.E.C: US Securities and Exchange Commission)에서 비트코인(Bitcoin) ETF에 대한 승인을 내며 세상은 다시 한번 가상화폐 열풍으로 뜨겁게 달아올랐다. 2024년 01월 11

dreamingpeter.tistory.com

 

  블록체인의 기본적인 개념과 비트코인의 탄생에 대한 이해를 하였다면 자연스럽게 현재 암호화폐(코인) 시장에 대한 의문점이 하나 생길 수 있다. 사실 '탈중앙화 된 화폐' 자체에 대한 수요로 인하여 암호화폐(Crypto Currency)가 생겨났다면 비트코인 하나로도 충분했을 것이다. 그러나 현재 코인 시장에는 약 22,000개에 달하는 코인과 토큰이 존재한다. 블록체인(Block-chain) 기술이 대부분 오픈 소스(open source)로 구성되어 있다고 하더라도 비트코인이라는 무소불위의 강력한 시장 선도자가 있다면 코인 시장 특성 상 가지는 규모의 경제 측면으로도 다른 알트 코인들이 현재와 같이 우후죽순 생겨나기는 쉽지 않을 것이다.

 

  그럼에도 불구하고 이더리움이나 솔라나 등 현재 각광 받는 코인들의 경우 그들만의 탄탄한 지지층을 바탕으로 빠르게 성장하고 있다. 이러한 코인들이 성장할 수 있는 배경에는 비트코인이 해결하지 못하는 한계점들을 해당 코인들이 독자적인 방법으로 돌파했다는 사실과 암호화폐 시장이 커지면서 그 목적, 즉 활용성이 코인 별로 천차만별로 분화되었다는 특징이 있다. 본 포스팅에서는 비트코인의 한계와 이더리움, 솔라나가 각각 어떠한 방식으로 그 한계를 극복하였는지, 그리고 그로 인해 각 코인이 어떠한 역할을 하는지에 대하여 다루고자 한다.


1. 비트코인의 한계와 작업 증명(Proof of Work; PoW)

  비트코인의 한계에 대하여 이해하기 위해서는 암호화폐 시장의 목적에 대하여 다시 한번 주목할 필요가 있다. 물론 초기 목적은 2008년 경제 위기를 경험하며 중앙집권화 된 기존의 통화 시장이 가지는 문제점들에 대한 해결과 파놉티콘처럼 현금을 제외한 모든 결제 수단에 대하여 추적 가능한 현대 사회에서 스스로를 보호하기 위한 익명성의 획득이었다. 이는 블록체인 기술이 가지는 특징과 결합하여 비트코인이 가치 저장 수단으로 기능하게 되며 달성되었다. 그러나 암호화폐의 특성 상 전자적인 결제 수단으로의 활용 가능성이 무궁무진한데다가 NFT(Non-Fungible Token; 대체 불가능 토큰) 등 블록체인과 그 관련 시장이 폭발적인 성장세를 타고 있음에 따라 기존 목적을 넘어 범용적인 목적성을 가지게 된다.

 

  결국 암호화폐 시장에서는 단순히 가치 저장 수단을 너머 거래 수단의 일환으로써의 코인에 대한 수요가 발생하기 시작하였다. 그러나 비트코인에는 치명적인 한계가 존재한다. 하나의 화폐가 거래의 수단으로 사용되기 위해서는 몇 가지 전제가 있어야 한다. 주요 전제 중 하나는 거래 비용이 충분히 낮아야 한다는 것이고 또 다른 하나는 거래의 처리가 적시에 이루어져야 한다는 것이다. 비트코인은 이 두 주요 전제 모두를 만족시키는 데 실패하였다. 그 원인을 분석하려면 이전 포스팅에서 언급한 비트코인의 검증 처리 방식인 "작업 증명(Proof of Work; PoW)"에 대하여 이해할 필요가 있다.

 

  작업 증명(PoW)에 대해서 간단하게 다시 설명하자면 '거래 내역, 이전 블록의 해시 등 블록 안의 데이터와 임의의 값인 nonce가 결합된 해시 값을 찾는 수학적 퍼즐을 가장 먼저 해결한 사람이 생성한 블록에 대하여 다른 노드들이 검증하는 방식'을 의미한다. 이러한 방식으로 비트코인은 네트워크 내 모든 거래(트랜잭션; Transaction)를 검토하고 올바른지 검증하게 된다. 그러나 이러한 방식에는 복잡한 수학 문제를 풀기 위한 많은 연산력을 필요로 하고 이에 따라 채굴 과정 자체에 많은 시간이 소요되기 마련이다. 네트워크가 1초 동안 처리할 수 있는 거래량을 TPS(Transactions per Second)라고 하는데 작업증명(PoW) 방식을 채택하는 비트코인의 경우 이 TPS 값이 약 7건이다.

 

  (참고) TPS는 블록 당 트랜잭션 수와 블록 생성 시간에 따라 결정되는데 비트코인의 경우 블록 당 1MB로 약 4,000개의 트랜잭션이 담길 수 있는 크기이고 약 10분, 즉 600초에 1개 꼴로 블록이 생성된다. 따라서 TPS 값은 4,000(개)/600(초)=6.67개로 산출된다.

 

  블록체인은 허위 거래나 오류를 원천적으로 차단하기 위하여 이렇게 처리된 트랜잭션이 완전히 확정되어 블록체인에 기록이 되기 위해서는 총 6개의 블록을 추가로 요한다. 6개의 추가적인 블록이 쌓이는 과정에서 해당 트랜잭션에 대한 오류가 발견되지 않는다면 비로소 거래가 확인된다. 그러나 위에서 언급한 바와 같이 하나의 블록이 생성되기 위해서는 약 10분의 시간이 소요된다. 다시 말해, 거래 하나가 확정되기 위해서는 6개의 블록이 생성되는 시간, 약 60분이 걸리게 된다. 이는 중요하고 큰 규모의 금액을 처리하는데에 있어서는 충분히 투자할 가치가 있는 시간이지만 일상에서의 소규모 거래에서는 적합하지 않다.

 

  비트코인을 일상 결제 등과 같이 거래의 수단으로 사용되기에 거래의 비용 역시 큰 문제점으로 작용한다. 비트코인 네트워크에서 수수료는 보통 두가지 기준, 거래 크기네트워크 혼잡도로 책정된다. 거래의 크기는 간단하게 표현하자면 거래의 양과 복잡성을 의미한다. 여러 사람에게 비트코인을 보내거나 소액 비트코인을 하나의 거래에서 처리하고자 하는 등 거래가 양이 많고 복잡해질수록 거래의 크기도 증가한다. 네트워크 혼잡도는 말 그대로 네트워크에서 거래를 블록에 포함시키고자 하는 네트워크 이용자 수를 의미한다. 만약 많은 사람들이 네트워크에 자신의 거래를 기록하고자 경쟁한다면 높은 거래 수수료를 부담할 수 밖에 없다.

 

2. 이더리움 2.0과 지분증명(Proof of Stake; PoS)

  거래수단으로써 암호화폐의 측면에서 발생하는 비트코인의 한계점을 극복한 가장 대표적인 코인이 이더리움 2.0이다. 애초에 이더리움 1.0이 개발될 때부터 비트코인의 안전성과 단순성만을 추구하는 네트워크라는 한계를 넘어서서 분산된 어플리케이션(DApp)을 적극적으로 실행할 수 있는 환경을 구축하는 것을 목표로 삼아왔다. 이를 가능하게 했던 개념 중 하나가 스마트 컨트랙트(Smart Contracts)이다. 스마트 컨트랙트는 말 그대로 자동화 된 계약을 의미하는데 쉽게 표현 하면 "IF 함수"라고 볼 수 있다.

 

  먼저 당사자들 간에 계약 조건이 합의가 된다면 이를 코드로 작성한다. 이렇게 작성된 스마트 컨트랙트는 블록체인 네트워크에 베포되어 일종의 '트랜잭션'으로 기록된다. 스마트 컨트랙트는 해당 조건이 충족되었는지 네트워크를 지속적으로 감시하다가 조건이 충족되는 것을 확인한다면 계약을 자동적으로 실행한다. 이렇게 실행된 결과는 블록체인에 기록되고 이는 네트워크 이용자 누구나 확인할 수 있다. 이러한 스마트 컨트랙트 방식을 통하게 된다면 블록체인의 보안성과 투명성이라는 장점을 극대화하는 동시에 사람의 개입없이 자동적으로 시스템이 계약을 이루어줌으로 인하여 효율성까지 확보하게 된다. 이 효율성에는 복잡한 서류 작업이나 비싼 중개 수수료 등에 대한 부담으로부터 벗어난다는 사실 역시 포함된다.

 

  그러나 이러한 스마트 컨트랙트도 작업증명을 이용하는 비트코인의 실질적인 한계점을 해결하지는 못한다. 비트코인이 트랜잭션 처리가 느리고 수수료가 비싼 근본적인 원인이 퍼즐을 풀기 위한 많은 연산력을 요구하기 때문인 점을 고려한다면 이를 실질적으로 해결하는 방법은 퍼즐을 풀지 않는 것이다! 그러나 퍼즐의 목적이 물론 1차적으로는 블록 생성 및 데어터 검증이라고 볼 수 있지만 그 이외에도 채굴자(miner)들에게 공정하고 객관적인 경쟁을 할 수 있도록 함과 동시에 서로가 서로를 견제하여 부정을 방지할 수 있다는 점 등이 있다.

 

  따라서 퍼즐을 풀지 않는 동시에 퍼즐이 가지던 장점들을 포함하기 위해서 이더리움 2.0은 "지분 증명(Proof of Stake; PoS)"이라는 방식을 이용하였다. 지분 증명이란 네트워크가 무작위(Randomly)의 검증자를 설정하여 해당 검증자가 블록을 생성하고 다른 검증자들에게 검증을 받아 블록이 추가되는 방식을 의미한다. 그러나 이렇게 무작위로 검증자를 설정한다면 자연스럽게 해당 검증자가 정말 신뢰할 수 있는 자인지에 대한 의구심이 생길 수 있다. 악의적으로 허위의 블록을 생성한 뒤 보상을 수령하는 행위는 네트워크 전체의 신뢰성을 떨어뜨리기 때문에 이를 예방하는 것은 매우 중요하다.

 

  지분 증명 방식은 이에 검증자 추첨에 참여하고자 하는 이용자에게 자신이 가지고 있는 지분(Stake)을 담보로 맡길 것을 요구한다. 이렇게 지분을 네트워크에 잠그는 행위를 스테이킹(Staking)이라고 하는데 더 많은 지분을 스테이킹 할수록, 더 오랜 기간 스테이킹 할수록 검증자로 선정될 가능성은 높아진다. 만일 검증자가 부정 행위를 저지르거나 네트워크 규칙을 위반한 사실이 적발된다면 스테이킹 된 지분의 일부를 잃게된다. 이러한 슬래싱(Slashing)이라 불리는 방식을 통하여 이더리움 네트워크는 보안을 유지하고 신뢰성을 확보하게 된다.

 

  비트코인의 작업증명(PoW)과는 달리 이더리움 2.0은 지분증명(PoS) 방식을 채택함으로 인하여 복잡한 수학 문제를 풀어야 할 필요가 없기에 높은 전력 효율성과 빠른 거래 처리, 그리고 고성능의 채굴 장비가 필요하지 않기 때문에 비교적 많은 사람들이 참여할 수 있는 높은 접근성이라는 장점을 자랑한다. 이더리움 2.0은 PoS를 채택하며 기존 이더리움 1.0에서 15~30 정도 수준이던 TPS가 수천 건까지 증가할 수 있을 것으로 예상한다.

 

3. 솔라나와 지연증명(Proof of History; PoH)

  이더리움 1.0의 스마트 컨트랙트 개념을 통해 비트코인의 거래 수단으로써의 화폐의 한계점을 돌파했다고 하더라도 여전히 TPS 값은 15~30 정도로, 일상적인 결제 시스템(예를 들어, 신용카드나 체크카드 결제 등)이 1초에 수천건 이상의 거래를 처리할 수 있다는 점을 고려한다면 상당히 낮은 수치에 머물러 있었다. 2020년 등장한 솔라나는 비트코인과 이더리움이 가지던 확장성 문제를 해결하기 위해 지연증명(Proof of History; PoH) 메커니즘을 도입하였다. 지연증명이란 간단하게 표현하자면 트랜잭션이 발생한 정확한 시간을 계산하여 트랜잭션들의 순서를 결정하는 과정이다.

 

  블록체인 네트워크 상에서 발생하는 모든 트랜잭션이 완전하게 장부에 작성되기 위해서는 각 트랜잭션들의 순서를 파악하고 이를 검증하는 작업이 필요하다. 먼저 비트코인이 이용하는 작업증명(PoW)에서는 다음과 같은 과정으로 트랜잭션들의 순서가 결정된다.

  1. 트랜잭션의 전송: 사용자가 네트워크에 ' 보내는 주소, 받는 주소, 송금할 암호화폐 금액, 그리고 거래 수수료 등의 정보'가 포함된 거래 요청(트랜잭션; Transaction)을 보낸다.
  2. 메모리 풀에 저장: 전송된 트랜잭션들은 메모리 풀(Mempool)에 임시로 저장된다. 메모리 풀에 있는 트랜잭션들은 아직 블록체인 네트워크에 기록되지 않고 대기 중인 트랜잭션이다.
  3. 트랜잭션의 선택: 채굴자들은 위의 메모리 풀에서 자신들이 생성할 블록에 포함될 트랜잭션들을 선별한다. 하나의 블록에 포함될 수 있는 트랜잭션의 양에는 한계가 있기 때문에 채굴자들은 거래 수수료, 트랜잭션의 크기 그리고 메모리 풀에서의 대기 기간 등을 종합적으로 고려하여 트랜잭션을 선택한다. 보통 하나의 블록에는 약 4천개의 트랜잭션이 포함된다.
  4. 수학 문제의 해결: 채굴자들이 블록을 생성하기 위해서는 복잡한 수학 문제(해쉬 함수)를 해결하여야 한다. 수학 문제는 이전 해쉬 값, Nonce(임의의 수) 값, 난이도 목표와 새로 추가할 트랜잭션들의 정보를 기반으로 생성된다.
  5. 블록 생성: 채굴자들 중 수학문제를 가장 빨리 해결한 채굴자의 블록이 생성되고 다른 노드들은 이에 대한 검증을 진행한다. 블록이 올바르다면 이는 블록체인에 새롭게 영구히 추가되고 위 과정이 반복된다.

  그러나 이러한 작업증명 방식의 경우, 트랜잭션의 순서를 메모리 풀 안에서 채굴자가 어느정도 임의로 정하기 때문에 합의 메커니즘으로 간접적으로 결정할 수 밖에 없다. 여기에는 작업증명 방식의 또 다른 단점이 작용을 하는데 이는 각 노드 별로 트랜잭션이 메모리 풀에 도달하는 시간이 다를 수 있다는 점이다. 네트워크의 지연(latency)이나 노드들 간의 거리의 차이로 인하여 거의 동시에 전송된 A 거래와 B 거래가 채굴자 갑의 메모리 풀에서는 A - B의 순서로, 채굴자 을의 메모리 풀에서는 B - A의 순서로 도달할 수 있다. 따라서 작업증명 방식은 메모리 풀 내에 저장되는 순서를 기준으로 트랜잭션들의 순서를 결정할 수도 없다.

 

  따라서 비트코인이나 이더리움은 트랜잭션 순서를 합의 메커니즘을 통하여 결정하게 되는데 이는 시간이 오래 걸릴 뿐만 아니라 확장성의 문제도 발생하게 된다. 이런 문제를 극복한 것이 솔라나의 지연증명(PoH) 방식이다. 지연증명에서는 트랜잭션의 "발생" 시간을 정확하게 산출할 수 있는 메커니즘을 이용하여 각 트랜잭션에 타임스탬프(Time Stamp)를 부여하고 이를 기반으로 트랜잭션들의 순서를 결정한다. 솔라나의 TPS(초당 트랜잭션 처리 건수)는 최대 65,000건으로 기록될만큼 혁신적인 처리 속도와 확장성에 대한 개선을 보였다.

 

반응형