블록체인 공부 - 비트코인의 구조와 기본 개념
지난주에 정리한 블록체인 기술을 바탕으로 구현된 가장 잘 알려진 1세대 코인인 비트코인에 대해 알아보았다. 비트코인은 몇 개의 거래(트랜젝션)들을 블록에 담고, 그 장부의 안전성을 블록체인 기술을 통해 확립한다. 트랜젝션은 코인 이동의 최소 단위(화폐의 개념, 고정된 값은 아니다)인 utxo들로 이루어져있다. 거래를 위해서는 본래 검증을 위해 모든 거래내역을 가지고 있어야 하는데, 이렇게 모든 거래내역을 가지고 네트워크상의 사용자들의 지갑을 관리하는 방식을 풀 클라이언트(풀 노드)방식이라고 한다. 하지만 풀 노드의 경우 큰 저장 공간이 필요하고, 로컬에 저장하기 때문에 보안성의 문제도 생길 수 있다. (현재 풀 노드는 150GB이상이라고 한다) 다른 방법으로는 라이트웨이트 클라이언트방식, 웹 클라이언트 방식 등 거래 장부를 서버에 두고 서버에 접속해서 거래하는 방식도 있다. 대부분의 코인 거래소, 지갑 앱에서 쓰는 방식이다. 이 방식들의 경우 가볍기는 하나 결국 거래소 서버라는 중개자가 존재해서 진정한 의미에서의 P2P가 아니라는 단점이 있다.
그렇다면 채굴이란 무엇이고, 어디서 돈이 나오는 것일까. 블록을 하나 형성할 때마다 가장 먼저 블록 형성에 성공한(모든 거래의 검증에 성공한) 채굴자는 그에 대한 보상으로 거래당사자에게서 받는 수수료와 비트코인 프로토콜 내에서 블록 형성에 대한 대가로 일정량의 코인을 준다. 액수는 최대 발행량에 점근하며 점점 줄어들지만 수수료는 계속 주어지므로 코인 채굴에의 유인책으로는 충분하므로 채굴이 끊길 걱정은 없다. 이렇게 만들어진 거래내역과 블록을 블록을 생성한 채굴자는 네트워크 내 모든 노드에게 전달하여 풀 노드 거래 장부를 유지하게 한다.


댓글
댓글 쓰기