본문 바로가기

IT/블록체인

이더리움 - 채굴? 채굴자?

공부를 위해 정리해놓은 글입니다. 오류가 포함되어 있을 수 있으며 지적은 언제나 감사히 받겠습니다.

채굴자 : Miner. 새로운 거래내역을 가지고 새로운 블록을 생성해내는 역할을 한다.

1. 거래가 발생하면 채굴자는 자신의 transaction pool에 내역들을 보관해둔다. 이때 나열되는 순서는 거래 수수료가 얼마인지 거래가 발생한 순서 등으로 나열된다.

2. 적당한 내역들을 묶어 블록을 형성해서 이를 기준으로 해싱을 진행한 후 블록을 발행한다.

3. 블록을 P2P 네트워크로 보내어 다른 노드들로부터 검증을 받는다.

4. 과반수의 노드들에게 검증을 받으면 새 블록은 블록체인에 추가되며, 이에 대한 보상으로 코인을 받게된다.

채굴자가 채굴에 성공하고 이에 대한 보수를 얻기 위해서는 정해진 기준값보다 낮은 해쉬값을 찾고 그 중에서도 가장 복잡한 해쉬값을 찾아내야 한다. 그러한 해쉬값을 찾아내기위해 채굴자가 할 수 있는 일은 블록헤더에 포함된 nonce값을 이리저리 열심히 바꿔보는 것이다. 즉, 무작위의 nonce 값을 해시함수에 입력해서 설정된 값보다 작은 숫자를 찾고 그 중에서도 가장 복잡한 값이어야 하는 것이다. 이는 많은 에너지와 연산력을 필요로 한다.

 

 

'IT > 블록체인' 카테고리의 다른 글

이더리움 dids 구현 - nodejs  (0) 2020.12.29
이더리움 - 솔리디티란?  (0) 2020.09.08
블록체인 이더리움이란?  (0) 2020.09.07