비트코인은 금융계에서 돌풍을 일으키고 있는 기술혁명의 하나이면서 최초의 성공적인 분산 디지털 통화이다. 이미 수십억 달러의 규모에 이르는 전 세계적 경제단위를 창출했으나 여전히 초기 단계인 비트코인을 통해 화폐의 인터넷(Internet of money) 세계에 발을 들여놓을수 있다.
이 책은 비트코인의 세계에 들어가는 데 필수적인 정보를 제공하고 있다. 킬러앱(killer app)을 개발하기 위해서이든, 신생 기업에 투자 목적이든, 아니면 단지 이 비트코인 기술에 대한 호기심 때문이든, 입문자부터 앱 개발자와 같은 전문가, 비트코인 관련 사업 투자자에 이르기까지 비트코인을 이해하고 활용하기 위한 필수적인 지침서이다.
– 기술자가 아닌 사용자들, 투자가, 기업 임원 등에게 적합한 비트코인의 개괄적 소개
– 개발자, 엔지니어, 소프트웨어 및 시스템 설계자를 위한 비트코인과 암호화폐에 대한 기술적 기반
– 비트코인 분산 네트워크, P2P 설계, 거래수명주기, 보안원리에대한 상세 설명
– 대안사슬(alternative chain), 통화, 어플리케이션 등 비트코인 및 블록체인 발명의 파생 기술들
– 주요 기술적 개념들을 설명하는 비트코인 사용자들의 일화, 명쾌한 비유, 예시, 코드조각(code snippet)의 이용
“비트코인에 대해 이야기할 때면 때때로 ‘그런데 비트코인이 실제로도 기능을 하나요?’라는 질문을 받을 때가 있어요. 이제야 그 질문에 멋지게 답할 수 있겠네요. 이 책을 읽은 독자라면 누구나 비트코인이 어떻게 작동하는지에 대해 깊이 이해하고, 놀라운 암호화 화폐 어플리케이션을 만들 준비가 되어 있을 테니까요.”[Gavin Andresen 비트코인 재단의 수석과학자]
“안드레아스의 책은 여러분이 금융계의 소프트웨어 혁명에 동참할 수 있도록 도와줄 것입 니다.” [Naval Ravikant 에인절리스트(AngelList) 공동 설립자]
옮긴이 서문 블록체인이라는 신뢰기반의 출현이 금융혁신의 출발점이 되길 희망하며
서문
용어 설명
1장 서론
비트코인이란 무엇인가?
비트코인의 역사
비트코인의 사용과 사용자들, 그들의 이야기
비트코인 시작하기
– 들어가기
– 첫 비트코인 장만
– 비트코인의 송금과 수신
2장 비트코인의 작동원리
거래, 블록, 채굴, 블록체인
– 비트코인 개요
– 커피 한 잔 구매하기
비트코인 거래
– 일반적인 거래 유형
거래의 구성
– 올바른 입력값 얻기
– 출력값 생성하기
– 거래내역을 장부에 추가하기
비트코인 채굴하기
블록에 담겨 있는 거래 채굴하기
거래 소비하기
3장 비트코인 클라이언트
비트코인 코어: 참조구현
– 비트코인 코어 입문하기
– 소스코드에서 비트코인 코어 컴파일 실행하기
명령행에서 비트코인 코어의 JSON-RPC API 사용하기79
– 비트코인 코어 클라이언트에서 정보 입수하기
– 지갑 설정 및 암호화
– 지갑 백업하기, 일반 텍스트 덤프하기, 복원하기
– 지갑 주소 생성하기와 거래 수신하기
– 거래내역 살펴보기 및 디코딩하기
– 블록 살펴보기
– 소비되지 않은 출력값을 바탕으로 거래 생성하기, 서명하기, 전송하기
그 외 선택 가능한 클라이언트, 라이브러리, 툴키트
– Libbitcoin과 sx Tools
– pycoin
– btcd
4장 키, 주소, 지갑
들어가기
– 공개키의 암호법과 암호화폐
– 개인키와 공개키
– 개인키
– 공개키
– 타원곡선 암호법
– 공개키 생성하기
비트코인 주소
– Base58과 Base58Check 인코딩
– 키 포맷
파이선에서 키와 주소 실행하기
지갑
– 비결정적(무작위) 지갑
– 결정적(종자) 지갑
– 연상기호 코드 워드
– 계층 결정적 지갑(BIP0032/BIP0044)
고급키와 주소
– 암호화된 개인키(BIP0038)
– Pay-to-Script Hash(P2SH)와 다중서명 주소
– 꾸미기 주소
– 종이지갑
5장 거래
들어가기
– 거래의 수명주기
– 거래 생성하기
– 비트코인 네트워크에 거래 전송하기
– 비트코인 네트워크로 거래 전파하기
거래 구조
거래 출력값과 입력값
– 거래 출력값
– 거래 입력값
– 거래 수수료
– 거래에 수수료 추가하기
거래 사슬과 고아거래
거래 스크립트와 스크립트 언어
– 스크립트 구성(잠금+해제)
– 스크립팅 언어
– 튜링 불완전성
– 무상태형 검증
표준 거래
– Pay-to-Public-Key-Hash(P2PKH)
– Pay-to-Public-Key
– 다중서명
– 데이터 출력(OP_RETURN)
– Pay-to-Script-Hash(P2SH)
6장 비트코인 네트워크
P2P 네트워크 아키텍처
노드의 유형 및 역할
확장 비트코인 네트워크
네트워크 검색
풀 노드
‘인벤토리’ 교환하기
단순지불검증(SPV) 노드
블룸필터
블룸필터 및 인벤토리 업데이트
거래 풀
비상 메시지
7장 블록체인
들어가기
블록 구조
블록 헤더
블록 식별자: 블록 헤더 해시와 블록 높이
최초블록
블록체인에 블록 연결하기
머클 트리
머클 트리와 단순지불검증(SPV)
8장 채굴과 합의
들어가기
– 비트코인의 경제학과 통화 발행
– 분산화된 합의
거래의 독립적 검증
채굴 노드
블록에 거래 추가하기
– 거래의 나이, 수수료, 우선순위
– 생성 거래
– 코인베이스에 대한 보상금과 수수료
– 생성 거래의 구조
– 코인베이스 데이터
블록 헤더 구성하기
블록 채굴하기
– 작업증명 알고리즘
– 난이도 표기법
– 난이도 목표 및 목표 재설정
블록을 성공적으로 채굴하기
새 블록을 검증하기
블록체인을 수집해서 선택하기
– 블록체인 분기
채굴과 해싱 레이스
– 추가 난스 솔루션
– 채굴 풀
합의 공격
9장 대안체인, 화페, 어플리케이션
대안화폐와 대안체인의 분류체계
메타코인 플랫폼
– 컬러드코인
– 마스터코인
– 카운터파티
알트코인
– 알트코인 평가하기
– 통화적 변수에 따른 대안: 라이트코인, 도기코인, 프라이코인
– 혁신적인 합의 메커니즘: 피어코인, 미리어드, 블랙코인, 베리코인, NXT
– 혁신적인 이중목적 채굴: 프라임코인, 큐어코인, 그리드코인
– 익명성 중심의 알트코인: 크립토노트, 바이트코인, 모네로, 제로캐시/제로코인, 다크코인
비통화 알트코인
– 네임코인
– 비트메시지
– 에테리움
암호화폐의 미래
10장 비트코인의 보안
보안 원리
– 비트코인 시스템을 안전하게 개발하기
– 신뢰루트(Root of Trust)
사용자 보안의 모범 사례
– 물리적 비트코인 저장
– 하드웨어 지갑
– 리스크 균형 맞추기
– 리스크 다각화하기
– 멀티시그와 거버넌스
– 생존력
결론
부록 A 거래스크립트 언어 연산자, 상수, 부호
부록 B 비트코인 개선 제안
부록 C pycoin, ku, tx
부록 D sx Tools를 이용한 명령어
찾아보기
저자 : 안드레아스 M. 안토노풀로스
저명한 과학기술학자이자 연쇄 창업가로, 비트코인 업계에서는 가장 널리 알려지고 높이 평가되는 인물 중 하나이다. 인기 있는 연설가이자 교사이고 작가이기도 한 안드레아스는 복잡한 주제에 쉽게 접근하고 이해할 수 있도록 도와준다. 그는 다수의 신생 기술 업체에게 조언을 해 주었으며 전 세계를 돌아다니며 회의 및 지역 행사에서 정기적으로 연설하고 있다.... more
역자 : 기술감수: 코인플러그
블록체인 관련 특허 보유 세계 1위 (2018.9)의 블록체인 전문기업으로 핀테크 및 B2B 플랫폼, 디지털자산 거래소(CPDAX), 아이덴티티 블록체인 Metadium의 개발 등 다양한 서비스를 제공하고있다. www.coinplug.com / www.cpdax.com... more