블록체인 채굴
채굴 ( Mining )
채굴이란, 블록체인 네트워크에서 노드로 트랜잭션을 검증하며 분산원장에 기록하고 보상으로 암호화폐를 얻는 것
즉, 새로운 블록을 만드는 것이 채굴의 핵심이며 블록을 생성하여 체인에 연결한 노드는 행위에 대해 보상을 받는다.
비트코인은 블록이 생성될 때마다 다음 블록 생성을 위한 해시 퍼즐 문제가 함께 주어진다.
이 문제를 가장 먼저 해결한 작업자가 블록을 생성하는 권한을 갖고 생성한 블록을 체인에 올림과 동시에 채굴 보상을 받는다.
해시 퍼즐을 푼다는 것은 특정한 조건을 갖춘 해시를 찾아내는 일련의 과정이다.
비트코인은 난이도(Nonce)를 조정하여 약 10분 주기로 채굴이 가능하도록 프로그래밍 되어 있다.
암호화폐를 지급받는 노드들이 채굴자 ( Miner ) 이다.
비트코인 같은 과정을 작업증명 ( PoW ) 라고 한다.
채굴자가 하는 일
노드(Node)가 비트코인 네트워크에 접속하면, 채굴자는 다음과 같은 작업들을 수행한다
- 네트워크 동기화 : 새 노드가 합류하면 다른 노드에게 과거의 블록들을 요청해 블록체인을 다운로드 함
- 트랜잭션 검증 : 올바른 트랜잭션인지 검증한다
1. 원본 데이터를 자신의 개인키로 암호화하여 디지털 서명 진행
2. 원본 데이터와 1번에서 디지털 서명된 데이터를 노드에 전파
3. 트랜잭션을 받은 노드는 해당 트랜잭션이 진짜인지 검증을 위해 송신한 노드의 공개키를 이용하여 복호화 진행
4. 복호화 한 거래 데이터와 원본 데이터를 비교하여 수정된 데이터가 있는지 데이터의 무결성 검증
5. 수신받은 트랜잭션이 진짜 거래로 판단되면 블록체인에 해당 트랜잭션을 업데이트하고 블록체인 네트워크에 연결된 노드들에게 해당 트랜잭션을 다시 전파
- 블록 유효성 검사 : 채굴자와 풀 노드는 특정 규칙에 따라 수신한 블록을 평가하여 유효성 검사 시작
- 새로운 블록 생성 : 네트워크에 브로드캐스팅된 트랜잭션의 유효성을 검사
- 작업 증명 ( PoW ) 수행 : 해시 퍼즐을 풀어 유효한 블록을 찾는다
- 보상 수령 : 해시퍼즐 해를 구한 노드가 브로드캐스팅한 블록을 검증하여 승인한다
거래(Transaction) 수수료
블록 보상 난이도(Nonce) 가 어려워지고 반감기로 인해 수령하는 코인의 개수도 줄어들고 있어서 채굴자의 메리트가 적어지는 것 같지만 채굴자는 거래 수수료를 지급 받는다.
거래 수수료란?
>> 채굴자들이 특정 거래 기록들을 블록에 포함시키고, 이를 체인에 추구한 대가로 받는 인센티브 이다
거래 수수료는 채굴자와 검증자에게 보상을 지급하는 것에 의미가 있다.
채굴자와 검증자는 트랜잭션을 승인하는데 도움을 제공하고 스팸 공격으로부터 네트워크를 보호하도록 자신의 자원을 소모했기 때문에 거래 수수료를 함께 제공하는 것이다.
블록체인에서 트랜잭션 수수료는 합리적인 수준으로 저렴하지만, 네트워크 트래픽에 따라 비싸질 수도 있음
더 많은 수수료를 지불할수록 확인 과정이 빨라진다.
TPS ( Transaction per Second )
TPS란 1초당 처리할 수 있는 트랜잭션의 개수를 의미한다.
실제로 이더리움이나 비트코인을 전송하면 몇 시간이 걸리기도 하고 높은 수수료를 지불해야 한다.
확장성 문제를 해결하기 위해 많은 프로젝트가 도입중...