채굴은 위 두가지로 이루어져 있는데 일단 전체적인 흐름을 먼저 살펴보겠다.

 

채굴이란?


블록체인 네트워크에 노드로 트랜잭션을 검증하여 분산원장을
기록하고, 보상으로 암호화폐를 얻는걸말함


노드(=채굴자 or 트랜잭션 검증 등 다양한 노드들이 존재)
네트워크에 참여한 컴퓨터

분산원장기술(=블록)


분산원장을속이려고한다면
누군가 원장을하나만 바꾼다면
뭐가맞는건지 다른사람의 원장을확인해서 검증을함

모든블록체인은 분산원장으로되어있음
근데 모든 분산원장이 블록체인으로 되어있진않음.

블록하나가 데이터베이스다
분산화된 데이터베이스원장이기때문에
분산원장이라고한다.

 

블록을 생성하는 과정

개인키를 가진 지갑에서 트랜잭션 생성(스마트컨트랙트 계정 생성)->생성된 트랜잭션을 주변노드에 전파->

노드에서 트랜잭션 유효성 검사 후 검증된 트랜잭션일경우->
맴풀(램)에 해당트랙잭션 업데이트


블록에 포함되는 다수의 거래는 채굴자(마이너)가 새로운 블록을 생성
하기 앞서, 거래 요청은 하였으나 아직 거래가 성립되지 않은,
 즉 대기중인 트랙잭션을 블록에 포함시키게 됩니다.

작업증명(pow)
채굴자는 대기중인 트랙재션(맴풀에서 대기중)을 새롭게 생성할 블록에 포함시킨 후 
임이의 nonce 값을 대입하여, 일종의 수학 문제를 풀어내고, 
수학문제의 정답을 맞추었을 경우 '검증' 및 블록체인에 새로운 블록을
 연결하기 위하여 각 노드에 해당 블록을 전파하게됩니다.

블랙헤더에 있는 논스는 어디에 쓰이는가?
특정숫자보다 작은 해시값을 찾기위해 블랙헤더에있는 논스를 기준으로 찾습니다.
검색기준이라고 생각해보자 이걸로 논스값을 검증함

고스트프로토콜(ghost protocol)
노드들은 전달 받은 블록의 유효성을 검증하고 '진짜'블록, 
즉 검증된 블록일 경우 자신의 블록체인에 해당 블록을
 업데이트하게됩니다! => 이게바로 채굴입니다!!!!

 

채굴자(마이너)는 새로운 블록의 생성의 댓가로 신규 비트코인 발행량
 + 거래 수수료를 받는다고 하였습니다
. 그렇기 때문에 채굴자(마이너)는 Mempool에 대기중인 트랜잭션 중
 수수료가 높은 거래를 우선적으로 선별하게됩니다!

 

참조

https://steemit.com/kr/@yahweh87/18-mempool

복사했습니다!