블록체인이란?

사토시 나카모토라는 익명의 학자가 2007~2008년 금융위기사태를 겪으면서 중앙정부가 통제하는 금융시스템의 위험성을 인지하고 개인간의 지불거래가 가능한 전자화폐시스템을 고안하면서 이중지불문제를 해결하기 위한 방안으로 고안한 기술로서, 거래내역을 블럭에 담고 이를 이전의 블럭과 체인형태로 연결하고 수많은 컴퓨터(노드)에 동시에 복제하여 저장하는 분산형 데이터 저장기술이다. 거래가 발생할 때마다 모든 노드들이 정보를 공유하고 이를 자신이 갖고 있는 블록체인정보와 대조하여 데이터 위.변조를 방지하는 기술이다. 

대개 블록은 Version, 이전블록의 hash값, Merkle Hash, Time stamp, Bits(난이도 설정값), Nonce값으로 된 Head와 거래내역(transaction)을 저장하는 body로 구성되어져 있다. 
모든 node들은 거래내역들을 묶어서 블록은 만들고 난이도에 따른 해쉬함수의 Nonce값을 찾는 작업(채굴:mining)을 하게되고 가장 먼저 성공한 노드가 자신의 블록과 작업증명을 네트워크에 전송하고, 다른 노드들은 이 블록의 적합성을 검증. 참여 노드의 51%이상이 적합한 블록이라고 찬성하여 검증된 신규블록은 기존 블록체인에 추가된다. 

이 과정에 수많은 컴퓨터들이 자신들의 리소스를 동원하여 참여하게 되므로 그에 대한 보상으로 비트코인과 거래 수수료를 지급받게 된다. 

블록체인은 참여하고 자하는 누구나 채굴과정에 참여할 수 있는 Public blockchain과 특정 노드만 참여할 수 있는 Private blockchain으로 구분된다.