블록체인vs비트코인
보통 비트코인과 블록체인의 개념을 헷갈린다.
- 블록체인 : 특정한 제3자의 개입(ex.은행) 없이 공개된 네트워크를 구현하는 기술
- 비트코인 : 특정 네트워크에서 유통되는 화폐
- 블록체인 네트워크 : 블록체인 기술을 이용한 네트워크
- 비트코인 네트워크 : 블록체인 기술을 이용하여 구현한 특정 네트워크
비트코인의 창시자는 사토시 나카모토이며 현재 깃허브 오픈 소스로 개발되고 있다.
- 퍼블릭 블록체인 : 개방적 네트워크로 누구나 자유롭게 참가(비트코인)
- 프라이빗 블록체인 : 참가하기 위해서 허락이 필요
블록체인 네트워크(비트코인 네트워크 중심)
P2P(Peer to Peer)
인터넷에 연결된 PC나 서버 등의 '노드'(사용자)가 서로 통신을 주고 받는 네트워크 형태
클라이언트-서버 방식과 P2P 방식의 차이점
- 클라이언트-서버 : 사용자(클라이언트)가 특정한 서버에서 파일을 받아오는 방식
- P2P : 네트워크에 참여하는 노드가 각각 파일을 갖는 방식
클라이언트-서버 방식
P2P 방식
참여자
- 사용자 : 비트코인을 송금하는 것이 목적
- 채굴자 : 블록을 생성해서 그 대가로 비트코인을 받는 목적
거래
- 트랙잭션(transaction) : 비트코인을 송금하기 위해 발행하는 명령
- 거래 정보 : 보내는사람,받는사람,송금액 등
블록
- 여러개의 거래가 담긴 것
- 채굴자에 의해서 생성
분산장부
- 전파된 모든 블록이 각 노드(사용자)의 장부(데이터베이스)에 저장된다.
만약 은행에서 데이터베이스 서버가 동작하지 않는다면 그 어떤 송금 이력도 확인을 할 수 없다. 그러나 비트코인 네트워크 에서는 과거의 송금 거래 각각의 노드의 분산 장부에 들어 있어서 한 두개가 동작하지 않아도 다른 노드의 분산장부에서 거래를 확인할 수 있다.
- 노드가 새로운 블록을 전달 받으면 분산장부에 저장한다.
- 각 블록은 바로 앞 블록에 대한 정보(해시값)를 갖고있다.
- 연결된 구조를 갖는다( = 블록체인의 유래)
마이닝
- 채굴자가 서로 경쟁적으로 블록을 새로 생성하는일 -> 보수를 받기 위함
- 과정
- 사용자 A가 거래(트랙잭션)를 발행한다.
- 거래가 각 노드(사용자)를 거치며 비트코인 네트워크에 전파 된다.
- 채굴자 A가 보수를 받기 위한 마이닝 경쟁에서 이기고 거래를 담은 새로운 블록을 만든다.
- 블록이 비트코인 네트워크에 전파되면서 각 노드에 위치한 분산장부 맨 끝 블록에 연결된다.