Post

블록체인의 채굴

블록체인의 채굴

블록체인에서의 '채굴' 이라는 단어는 사실 우리 사회적으로 통용되는 귀금속의 '채굴'과 비슷한 부분이 있지만, 엄연히 따지면 다르다.
블록체인의 채굴의 주된 목적은 보상금이나 새로운 코인의 생성이 아니다.

코인은 그저 블록체인에서 채굴 프로세스에 대한 인센티브일 뿐이다. 블록 생성의 보상으로 채굴자에게 주는 코인은 채굴자들이 네트워크 보안을 지켜주고, 동시에 통화 공급을 실행하게 하는 동기를 부여한다. 하지만, 오늘 날 많은 사람들이 블록체인 채굴의 목적 자체가 코인을 목적으로 잘못 판단하고 있다.

채굴은 분산화된 클리어링 하우스의 주요 프로세스로, 채굴에 의해 거래를 검증 및 승인한다.
채굴은 비트코인 체제의 보안을 강화시켜 주고 중앙 권력기관 없이도 네트워크 전역에서 합의가 이루어질 수 있도록 해준다.

짧게 말한다면 비트코인의 보안이 분산화 되는 매커니즘라고 정리할 수 있다.

채굴일어나고 블록체인에 적용되는 과정은 아래와 같다.

  1. 검증된 비트코인 거래들이 거래풀에 쌓이게 된다.
  2. 채굴자들이 경쟁하여 가장먼저 Pow을 성공한 사람이 블록 생성자가 된다.
  3. 블록이 생성되고 거래풀에 쌓인 거래들이 추가(승인)되어 블록체인 내에 추가된다.
  4. 채굴자는 블록을 생성하면서 블록 내에 포함되는 거래들에 대한 수수료와 새로운 코인을 생성하며 코인에 대한 인센티브를 받게된다.

거래 풀 (Memory pool)

비트코인 네트워크 상에 있는 거의 대부분의 노드들이 거래 풀이라 불리는 미승인 거래로 이루어진 임시 목록을 보관하고 있다. 노드들은 이풀을 이용해서 네트워크에는 알려졌지만, 블록체인에 아직 포함되지 않은 거래들을 추적할 수 있게 된다. 새로운 블록이 생성될 시에 수수료가 많은 것으로 우선순위를 정해 블록체인 내에 포함되게 된다.

작업증명 (Pow, Proof of Work)

pow

채굴을 하기 위해서는 암호화 해시 알고리즘을 기반으로 하는 어려운 수학 문제를 풀어야 된다.
이 수학 문제에 대한 해답을 작업증명 이라고 한다.

암호 해시 알고리즘은 입력값으로 출력값을 유추하는 것이 사실상 불가능하기 때문에 특정 목표에 일치하는 해시결과를 얻기 위해서는 무작위로 해싱하여 결과가 우연히 나타날 때까지 입력값을 임의로 수정해 가는 수 밖에 없다. 이 임의로 수정하는 변수로 사용되는 숫자 값을 난스(nonce)라고 한다.

목표값이 0으로 시작되는 해시라고 가정해보자 16진수(0부터 F)까지 16개의 진수 중 하나로 가능성으로 얘기한다면, 한다면 평균 16회 정도의 해싱으로 결과를 만들어 낼 수 있다고 볼 수 있다.

이렇게 목표값이 부여한 난이도로부터 성공하기 위해 필요한 작업량을 추정할 수 있다. 입력값 자체는 목표값 아래의 결과를 내기 위해서 행해져야 하는 작업의 특정량에 대한 증명이 된다. 그래서 작업증명이라는 것이다.

비트코인의 공급량

비트코인의 통화 공급은 채굴을 통해서 이루어지며, 약 4년마다(정확히 210,000 블록)마다 절반으로 줄어든다. 2009년 50비트코인으로 시작됐으며, 2022년 현재로선 6.25 비트코인으로 줄어들었다. 이 계산으론 2140년이 되면 비트코인의 총량인 2099만 9999.98 비트코인이 발행된다.

한정된 양을 한도로 통화가 점점 줄어들면서 발행되게 되면 자연스럽게 통화를 발행하면서 생기는 인플레이션은 방지가 된다.
하지만, 해당 통화는 디플레이션을 야기할 수 도 있다. 하지만, 일반 통화는 수요의 붕괴로 인해 디플레이션이 이러나게 되지만, 비트코인은 예상 가능한 제공 공급량에 의해 발생하는 디플레이션이기 때문에 비트코인 전문가들은 디플레이션 자체가 나쁜 것은 아니라 평 하고있다.

This post is licensed under CC BY 4.0 by the author.