[Bitcoin] - ch1. 비트코인 시작하기

‍허진·2023년 2월 21일
0

Blockchain

목록 보기
1/19
post-thumbnail

본 글은 '비트코인, 공개 블록체인 프로그래밍(Andreas M. Antonopoulos 저, 최은실, 김도훈, 송주한 옮김, 2018)'을 바탕으로 작성되었습니다.

> 비트코인이란?

비트코인은 디지털 통화 생태계의 근간을 이루는 개념 및 기술을 아우르는 용어다.
전적으로 가상화폐이며, 송신자가 수신자에게 가치를 전송하는 거래 내에 존재한다.

분산화된 P2P 시스템으로, '중앙' 서버나 통제소가 없다.
'채굴(mining)'이라는 과정을 통해 생성된다. 채굴 과정이란 비트코인 거래가 진행되는 동안 수학 문제에 대한 해답을 찾기 위해 서로 경쟁하는 작업이다.
비트코인 프로토콜에는 전 네트워크에 걸쳐 채굴 작업 기능을 규정하는 내장 알고리즘이 포함되어 있다. 총 비트코인 공급량은 2,100만 코인으로 정해져 있고, 결국 2140년에 도달된다.

비트코인의 구성요소는 다음과 같다.

  • 분산화된 P2P 네트워크(비트코인 프로토콜)
  • 공개거래장부(블록체인)
  • 분산화된 수학적 결정론적 통화 발행(분산 채굴)
  • 분산화된 거래 검증 시스템(거래 스크립트)

> 비트코인 시작하기

> 비트코인 지갑

비트코인은 해당 프로토콜을 구현할 수 있는 클라이언트 어플리케이션을 이용해 접근 가능한 프로토콜의 일종이다.
쉽게 이해하자면 '웹 브라우저 - HTTP 프로토콜'의 관계가 '비트코인 지갑 - 비트코인'의 관계와 같다고 보면 된다.
웹 브라우저에 크롬, 사파리, 파이어폭스 등 다양한 것들이 있듯이, 비트코인 지갑 역시 여러 종류가 활발하게 개발되고 있다. 어떤 지갑을 선택하느냐 하는 문제는 지극히 주관적이고 사용자 혹은 사용자가 보유한 전문 지식에 따라 달라진다.

비트코인 지갑의 종류에는 다음과 같은 것들이 있다.

1) 플랫폼에 따른 분류

  • 데스크톱 지갑
  • 모바일 지갑
  • 웹 지갑
  • 하드웨어 지갑
  • 종이 지갑

2) 자율성 정도 및 비트코인 네트워크와 상호작용하는 방법에 따른 분류

  • 풀 노드 클라이언트(Full-node Client)
  • 라이트웨이트 클라이언트(Lightweight Client)
  • 제3자 API 클라이언트

위와 같은 분류법을 결합해 보면, 가장 일반적으로

  • 데스크톱 풀 클라이언트 지갑
  • 모바일 라이트웨이트 지갑
  • 웹 제3자 지갑

의 세 대표적인 유형으로 나눌 수 있다.

휴대폰에 비트코인 지갑 앱을 설치하면 자동으로 지갑이 생성된다.

[그림 - 비트코인 지갑 예시]

여기서 가장 중요한 정보는 사용자의 비트코인 주소이다. 비트코인 주소는 숫자 1이나 3으로 시작되며 송금을 위해 사용된다. 그리고 이는 돈에 대한 접근 권한을 통제하기 위해 사용자가 사용하는 키에 대응하는 숫자에 불과하다. 대부분의 지갑에서 비트코인 주소와 사용자 신분 등의 외부에서 인식 가능한 정보 사이에 어떠한 연관겅도 없다.

> 첫 비트코인 장만

비트코인을 습득하는 과정은 쉽지만은 않다. 비트코인은 은행이나 환전소에서 구할 수 없다. 또한, 비트코인 거래는 철회할 수 없기에 비트코인을 판매하는 회사는 신분 및 신용도 확인을 요구하는데, 이 과정이 꽤나 오래 걸린다. 따라서 비트코인을 얻기 위해서 다음과 같은 방법들이 이용된다.

  • 비트코인을 보유하고 있는 사람을 찾아 직접 구매하기(Meetup.com의 비트코인 지역 모임 등)
  • localbitcoins.com 등의 안내 서비스를 이용해 지역의 판매업자를 통한 현금 직거래
  • 비트코인을 받고 재화와 용역을 판매
  • 비트코인 ATM기 이용(Coin ATM Rader 지도)
  • 은행 계좌와 연계되어 있는 비트코인 환전소 이용

> 비트코인 송금/수신

비트코인의 송금, 수신 과정은 다음과 같다.

1) 송신자가 수신자의 비트코인 주소를 입력하거나 QR코드를 스캔한다.
2) 보내려는 금액을 입력하고 전송버튼을 누른다. 그 후 개인키로 해당 거래에 서명한다.
3) 수신자의 새 비트코인 주소로 송금이 허가되었다는 사실을 비트코인 네트워크에 알린다. 거래가 P2P 프로토콜을 통해 이루어졌으므로 해당 거래는 신속하게 비트코인 네트워크에 전송된다. 네트워크에 연결되어 있는 노드 대부분이 거래내역을 받기까지 1초가 안 걸린다.
4) 수신자의 지갑에서는 비트코인 네트워크상에 공개된 거래들을 계속 '탐색'해서 지갑 속 주소와 짝을 이루는 거래를 찾는다. 때문에 몇 초 후에 수신자의 지갑에서 비트코인을 수신했다고 표시된다.

  • 승인 과정 : 처음에는 송신자와 수신자의 거래가 '미승인(Unconfirmed)'라고 나온다. 이는 해당 거래가 네트워크에는 전송되었지만 블록체인이라는 비트코인 거래 장부에는 기록되지 않았음을 의미한다. 거래가 승인되기 위해서는 블록 내에 포함되어 블록 체인에 추가되어야 하며, 이 과정은 평균적으로 매 10분마다 일어난다. 전통적인 금융 용어로 이를 청산(clearing)이라고 한다.

지금까지 블록체인 기술을 사용하는 대표적인 예시인 비트코인에 대해 서론 정도로 살펴보았다. 다음 장부터는 비트코인의 작동원리부터 해서 더 구체적으로 알아보도록 하자.

profile
매일 공부하기 목표 👨‍💻 

0개의 댓글