암호화폐 채굴과 가스비 (PoW)

MINIBAIK·2022년 7월 26일
0

image ref: https://www.joongang.co.kr/article/23740994#home


앞선 포스트에서 설명하기로 트랜잭션과 블록을 검증하고, 블록 체인상에 등록하는 작업을 표현할 때 '채굴' 이라는 단어를 사용하였다. 한 때 그래픽 카드 대란과 비트코인 투자가 대중화가 되면서 이미 많은 사람들이 들어 보았을 채굴이다. 채굴에 대해서 알아보자.


Mining (채굴)


채굴은 트랜잭션이 블록 안에 쌓이고, 해당 블록 안에 트랜잭션들이 올바른지에 대하여 검증을 받고 블록체인 상에 올라가게 되는데 (트랜잭션과 블록), 이때 검증을 해주는 역할이 miner, 즉 채굴자이다. 채굴자는 블록체인 네트워크 사용자들의 트랜잭션들을 모으고, 블록 안에 쌓은 다음에, 블록이 꽉 차게 되면 블록을 닫고 블록체인의 다음 블록에 올리게 된다.


그렇다면 채굴자는 무엇을 위해서 이러한 작업을 해주고 있나 ?


블록체인 네트워크는 새로운 블록이 생성되면, 해당 네트워크의 기축 통화를 블록 생성자에게 제공한다. PoW 시절 이더리움의 경우는 2 ETH를 제공했다. 채굴자는 네트워크에서 주는 보상 뿐만 아니라 사용자들이 지불하는 수수료 또한 인센티브로 받게 된다.


Gas fee (수수료)


블록체인은 검증받지 않은 트랜잭션에 대해서는 무시하게 된다. 그렇기에 사용자들은 자신들의 트랜잭션이 올바르다는 것에 대해 검증을 꼭 받아야 하고, 이는 채굴자가 수행한다. 따라서 사용자들은 트랜잭션을 보낼 때, 채굴자에게 검증을 요구하며 수수료를 지불하여야 하는데, 이는 가스(Gas) 라고 부른다.


모든 트랜잭션에는 가스비가 따르고, 해당 가스비는 블록체인 네트워크의 기축 통화로 지불한다. 사실 모든 트랜잭션은 아니다. 단순히 블록체인 상에 저장되어 있는 데이터를 '조회' 할 때는 지불하지 않는다. 새로운 데이터의 추가, 기존 데이터의 변경 등이 가스비를 유발한다.


그렇다면 채굴은 어떻게 ?


채굴이라는 트랜잭션 및 블록 검증은 생각보다 단순하지만, 아주 아주 어렵다. 블록체인 네트워크에서 내는 문제를 맞추기만 하면 된다. 문제는 바로 Nonce 값 찾기이다. 여기서 Nonce는 하나인 숫자를 얘기한다. Nonce는 블록에서 채굴자가 유일하게 변경할 수 있는 값이다.

image ref: https://www.youtube.com/watch?v=ElGBP90XZWE


블록체인 네트워크는 이러한 문제를 낸다.

문제. (난이도 ⭐️⭐️⭐️).

'너의 데이터와, 특정 Nonce 값을 더하여 해시값을 구한것이 앞자리가 0이 3개여야 한다 !!'


채굴자는 숫자를 0부터 무작위로 대입을 하여 해시값을 찾아내면 채굴이 완료된다. 앞자리의 0이 3개라는 것은 난이도 를 뜻한다. 난이도는 블록체인 네트워크에서 임의로 조정이 가능하다. 난이도가 높을수록 앞자리 0의 개수가 많아질태니, 채굴에 대한 시간이 증가하고, 난이도가 낮을수록 채굴을 금방할태니 이러한 것을 이용하여 블록의 생성 시간을 조절할 수 있다.

image ref: https://www.youtube.com/watch?v=ElGBP90XZWE


위에 이미지에서 1번은 Nonce, 2번은 난이도, 3번은 문자열과 Nonce를 더하여 나온 해시값이다. 이와 같이 채굴자들은 숫자 무작위 대입을 하여 채굴을 하는데, 한 때 그래픽 카드의 연산 속도가 cpu 등 다른 하드웨어들 보다 월등히 빨라 구매 대란이 일어났던 것이다.


이러한 채굴로 인하여 검증을 받고, 블록체인 상에 추가가 되도록 하는 방식은 또 다른 말로는

작업증명 방식 (PoW; Proof of Work) 라고 부른다.

profile
Organize theories during development.

0개의 댓글