메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

밑바닥부터 시작하는 비트코인

한빛미디어

번역서

판매중

  • 저자 : 송재준(Jimmy Song)
  • 번역 : 류정필
  • 출간 : 2019-11-01
  • 페이지 : 408 쪽
  • ISBN : 9791162242230
  • 물류코드 :10223
  • 초급 초중급 중급 중고급 고급
5점 (5명)
좋아요 : 13

비트코인 코어를 구현하면서 배우는 비트코인 이론과 실제

 

비트코인은 블록체인 기술의 집약체입니다. 이더리움, 이오스 같은 2, 3세대 블록체인은 비트코인을 바탕으로 확장, 발전한 개념입니다. 디앱 개발에서 머무르지 않고 블록체인 개발자로 성장하기 위해서는 ‘비트코인 코어’를 가장 먼저 배워야 합니다. 무한한 상상력을 블록체인 기술로 실현하려면 비트코인 코어의 구성 요소와 작동 원리를 이해하고 구현할 수 있어야 합니다.

 

이 책은 비트코인 코어의 구성요소를 파이썬으로 직접 구현하면서 비트코인 핵심을 깊이 이해할 수 있습니다. 유한체 기본부터 암호화폐를 이루는 수학과 암호학, 블록, 트랜잭션을 파헤치고 블록체인 결제 시스템까지 확장합니다. 이 책을 마치면 비트코인 코어에 필요한 핵심 요소를 직접 코딩하면서 암호화폐라는 무대 뒤에서 무엇이 어떻게 돌아가는지 알게 됩니다. 트랜잭션을 생성하고 P2P 네트워크에서 데이터를 가져와 네트워크 프로토콜에 따라 트랜잭션을 전파시킬 수 있습니다. 블록체인으로 응용프로그램이나 서비스를 개발하거나 이 분야에 처음 뛰어든 사람은 반드시 읽어야 하는 책입니다.

 

 

주요 내용

  • 비트코인 트랜잭션의 파싱, 검증, 생성
  • 비트코인 스마트 계약 언어인 스크립트 학습
  • 비트코인 라이브러리 구축 실습
  • 작업증명을 이용한 블록체인 보안 메커니즘 이해
  • 비트코인 지갑의 단순 지급 검증 이해
  • 공개키 암호와 기본 암호 알고리즘 활용

 

 

밑바닥비트코인_상세이미지_700.jpg

 

송재준(Jimmy Song) 저자

송재준(Jimmy Song)

20년 경력 프로그래머로 지난 5년간 비트코인 프로그래머로 지냈다. 비트코인테크토크 편집자이며 『비트코인 매거진』에 기고하고 있다. 블록체인 캐피털의 벤처 파트너이면서 텍사스 대학교에서 이 책을 주제로 강의하고 있다. 비트코인 코어를 포함한 여러 비트코인 프로젝트에 기여했으며 비트코인 지갑으로 유명한 아머리 사 기술담당 부사장을 역임했다.

류정필 역자

류정필

한양대학교 학사, KAIST 석사(신경망 및 기계지능 연구실)를 마치고 프랑스의 텔레콤 파리에서 공학박사를 받았다. 이후 프랑스 CNES 우주센터에서 인공위성 통신 알고리즘을 연구했다. 귀국 후 삼성전자에서 방송/통신 알고리즘을 제품에 구현하는 업무를 수행했다. 2016년 말 연구 아이템을 검토하다가 비트코인을 알게 되었고 이 기술에 매료됐다. 최근 1년간 사내 자유 연구 제도 C랩을 통해 사물인터넷용 경량 블록체인 코어를 개발했다.

CHAPTER 1 유한체

1.1 현대대수 학습

1.2 유한체 정의

1.3 유한집합 정의하기

1.4 나머지연산

1.5 유한체 덧셈과 뺄셈

1.6 유한체 곱셈과 거듭제곱

1.7 유한체 나눗셈

1.8 거듭제곱 메서드 수정

1.9 마치며

 

CHAPTER 2 타원곡선

2.1 정의

2.2 파이썬으로 타원곡선 코딩하기

2.3 두 점의 덧셈

2.4 점 덧셈 성질

2.5 점 덧셈 코딩하기

2.6 x1≠x2인 경우의 점 덧셈

2.7 x1≠x2인 경우의 점 덧셈 코딩하기

2.8 P1 = P2인 경우의 점 덧셈

2.9 P1 = P2인 경우의 점 덧셈 코딩하기

2.10 마지막 예외 처리 코딩하기

2.11 마치며

 

CHAPTER 3 타원곡선 암호

3.1 실수체에서 정의된 타원곡선

3.2 유한체에서 정의된 타원곡선

3.3 유한체에서 정의된 타원곡선 코딩하기

3.4 유한체에서 정의된 타원곡선 위 두 점의 덧셈

3.5 유한체에서 정의된 점 덧셈 코딩하기

3.6. 타원곡선 위 점의 스칼라 곱셈

3.7 스칼라 곱셈 특징

3.8 스칼라 곱셈으로 생성된 군의 성질

3.9 스칼라 곱셈 코딩하기

3.10 비트코인에서 사용하는 타원곡선

3.11 공개키 암호

3.12 서명 생성과 서명 검증

3.13 마치며

 

CHAPTER 4 직렬화

4.1 비압축 SEC 형식

4.2 압축 SEC 형식

4.3 DER 서명 형식

4.4 비트코인 주소 및 WIF 형식

4.5 비트코인에서 빅엔디언/리틀엔디언 변환

4.6 마치며

 

CHAPTER 5 트랜잭션

5.1 트랜잭션 구성요소

5.2 버전

5.3 입력

5.4 출력

5.5 록타임

5.6 트랜잭션 직렬화 코딩하기

5.7 트랜잭션 수수료

5.8 마치며

 

CHAPTER 6 스크립트

6.1 스크립트 기법

6.2 스크립트 실행

6.3 주요 연산자

6.4 스크립트 파싱

6.5 잠금/해제 스크립트의 결합

6.6 표준 스크립트

6.7 p2pk 스크립트

6.8 p2pk 스크립트의 문제점

6.9 p2pk 스크립트의 문제 해결

6.10 비표준 스크립트

6.11 마치며

 

CHAPTER 7 트랜잭션 검증과 생성

7.1 트랜잭션 검증

7.2 트랜잭션 생성

7.3 테스트넷 트랜잭션 생성과 전파

7.4 마치며

 

CHAPTER 8 p2sh 스크립트

8.1 다중서명

8.2 OP_CHECKMULTISIG 함수

8.3 다중서명의 문제점

8.4 p2sh 스크립트

8.5 p2sh 스크립트 코딩하기

8.6 마치며

 

CHAPTER 9 블록

9.1 코인베이스 트랜잭션

9.2 블록 헤더

9.3 작업증명

9.4 마치며

 

CHAPTER 10 네트워킹

10.1 네트워크 메시지

10.2 페이로드 파싱

10.3 네트워크 핸드셰이크

10.4 네트워크 접속

10.5 블록 헤더 요청

10.6 블록 헤더 응답

10.7 마치며

 

CHAPTER 11 단순 지급 검증

11.1 단순 지급 검증의 필요성

11.2 머클트리

11.3 머클부모

11.4 머클부모 레벨

11.5 머클루트

11.6 블록에서 머클루트 계산

11.7 머클트리 활용하기

11.8 머클블록

11.9 마치며

 

CHAPTER 12 블룸 필터

12.1 블룸 필터의 정의

12.2 BIP0037 블룸 필터

12.3 블룸 필터 설정

12.4 머클블록 입수

12.5 관심 트랜잭션 입수

12.6 마치며

 

CHAPTER 13 세그윗

13.1 p2wpkh 스크립트

13.2 p2wpkh 트랜잭션

13.3 p2sh-p2wpkh 스크립트

13.4 p2wpkh와 p2sh-p2wpkh 코딩하기

13.5 p2wsh 스크립트

13.6 p2sh-p2wsh 스크립트

13.7 p2wsh와 p2sh-p2wsh 코딩하기

13.8 기타 개선 사항

13.9 마치며

 

CHAPTER 14 고급 주제 및 다음 단계

14.1 주제 제안

14.2 오픈소스 기여

14.3 프로젝트 제안

14.4 마치며

 

부록

연습문제 해답

이 책은 저자가 비트코인 개발자를 대상으로 진행한 강의를 바탕으로 완성됐습니다. 

이 책으로 학습하면 저자의 비트코인 개발 강의를 간접적으로 듣는 셈입니다. 개발 환경은 주피터 노트북에서 파이썬으로 구현하므로 파이썬에 대한 이해가 선행돼야 합니다. 전체 14장 중 전반부는 비트코인을 이해하는 데 필요한 수학 개념을 설명하고, 중반부는 트랜잭션, 후반부는 블록과 네트워킹을 다룹니다. 

 

유한체와 타원곡선을 설명하는 3장까지는 비트코인의 핵심인 트랜잭션 서명과 검증에 필요한 이론적 바탕을 제공합니다. 비트코인 구성 원리를 이해하는 데 꼭 필요한 만큼의 수학 개념을 설명하고 파이썬으로 풀어보는 연습문제로 비트코인 개발을 경험하는 것이 이 책의 가장 큰 장점입니다. 연습문제를 완벽히 소화할 수 있다면 독자 여러분도 비트코인 개발자로 들어가는 첫 관문을 통과하게 됩니다. 비트코인(블록체인)을 개발하는 개발자라면 누구나 읽어야 할 필독서입니다.

 

 

추천사

 

연습문제를 풀다 보면 블록체인 작동 방식을 이해할 수 있을 뿐만 아니라 비트코인 기술의 우아함과 아름다움도 느낄 수 있다.

_켄 리우, 네뷸러상, 휴고상, 세계 판타지 어워드 수상 SF 소설가

 

책은 직접 소스 코드를 확인하고 코딩하면서 기초를 다질 수 있도록 친절한 길잡이를 자처합니다. 수십 차례 교육으로 수백 명의 개발자에게 가르친 내용을 바탕으로 이론과 실습을 충실히 경험할 수 있도록 꼼꼼하게 구성되어 있습니다. 

_김현남, 뉴테크프라임 

 

비트코인 코드를 손수 작성하면서 얻는 경험이 이 책의 핵심입니다. 비트코인은 코드입니다. 코드를 이해할 수 있다면 글과 그림으로 보는 것보다 빠르고 정확하게 이해할 수 있습니다. 

_정종화, 삼성SDS

 

웰스 파고 은행은 스테이블코인을 발행 예정이라 발표하고, 가트너는 5-10년 안에 블록체인이 산업을 재편한다고 전망했습니다. 이 책은 격랑의 시대를 준비하기 위한 필수 내용을 담았습니다. 블록체인 맏형 격인 비트코인에서 트랜잭션 생성과 검증 과정을 하나하나 코드로 살펴보면서 전체 흐름을 한 번에 파악할 수 있는 소중한 시간이었습니다. 비트코인은 블록체인 시대의 필수 과정이 될 것입니다.

_곽노산, 『꿈을 사고 파는 DreamChain Dapp 개발기』 저자

 

현재 가장 강력한 보안과 접근성을 제공하는 비트코인 블록체인의 원리와 구현을 제목처럼 ‘밑바닥’부터 배울 수 있습니다. 수학, 암호학, 네트워킹, 분산 컴퓨팅, 게임 이론 등 다양한 분야에서 얻은 성과를 종합한 비트코인의 창조 과정을 이 책으로 되짚어 볼 수 있습니다. 파이썬으로 예제를 구성한 것은 요즘 독자를 배려한 부분입니다. 초심자에겐 다소 어려울 수 있으나 비트코인 관련 응용프로그램을 개발하거나 비트코인을 참조하여 블록체인을 개발하려는 분에게 큰 도움이 될 것입니다.

_박승훈, 분산 컴퓨팅 엔지니어

 

블록체인 기술은 스마트 계약의 등장과 함께 급속도로 성장했고 지금은 4차 산업혁명을 상징하는 대명사로 일컬어지고 있습니다. 블록체인은 최근 등장한 하이퍼레저와 리브라에 이르기까지 다양한 개념과 기술, 비전으로 모든 분야에서 반향을 일으키고 있지만 아직 많은 이들이 블록체인 기술 분석에는 생소합니다. 이 책은 비트코인에 대한 궁금증에 명확하고 심도 있는 인사이트를 줍니다. 개발자부터 애널리스트에 이르기까지 블록체인과 비트코인에 관심 있는 모든 사람에게 훌륭한 정석이 될 것입니다.

_백상빈, 보안 S/W 엔지니어

 

이 책을 처음 본 순간 블록체인 기술을 체계적이고 정교하게 분석한 교과서라는 느낌이 들었습니다. 의사가 청진기로 진찰하듯 그 내부를 하나하나 파헤쳐볼 수 있는 좋은 기회였습니다. 저자의 톡톡 쏘는 아이디어를 엿보면서 앞으로 이 분야의 흐름이 어떻게 전개될 것인지 예측해볼 수 있었습니다.

_윤재무, 삼성전자 블록체인 연구회

 

이 책은 제가 본 책 중에 도식화가 가장 잘 되어 있고 구성이 탄탄합니다. 비트코인이 무엇이고 어떤 원리로 돌아가는지 전반적인 흐름을 쉽게 알 수 있습니다. 예제 소스도 많아서 하나씩 따라 하다 보면 비트코인 원리를 빠르게 이해할 수 있습니다. 비트코인은 블록체인 기술의 기초 지식입니다. 책 제목처럼 비트코인의 밑바닥, 기초 지식을 습득하는 데 큰 도움이 될 것입니다.

_김지환, 블록체인 S/W 엔지니어

 

기존 블록체인 개발서들은 수학적 원리에 대한 설명을 지나치게 생략하고 단순히 코드만 나열하는 수준에 그치거나 반대로 불필요할 정도로 많은 지면을 수학에 할애하고 있었습니다. 이 책의 저자는 개발자가 블록체인에 대해 알아야 할 최소한의 수학 지식만을 쉽게 설명하면서도 비트코인 기술을 체계적으로 이해할 수 있도록 균형을 갖추려 노력했습니다. 여기에 원문의 의미를 정확히 전달하면서도 이해하기 쉬운 문장을 만들기 위해 많은 시간을 들였을 역자의 노력도 짐작할 수 있었습니다. 이 책으로 비트코인 기본기를 충실히 다져 고급 블록체인 개발자로 성장하는 계기로 삼기를 바랍니다.

_조진수, 블록체인 S/W 엔지니어

 

이 책 원서가 출간됐을 때 구매하여 수일에 걸쳐 탐독했던 기억이 납니다. 간단한 파이썬 코드 예제로 암호학을 쉽게 설명하려던 점이 인상 깊었습니다. 원서로는 이해하는 데 어려움이 있었는데 이렇게 번역본이 출간되어 정말 기쁩니다. 베타리딩을 하면서 전체적인 번역 품질이 훌륭하다고 느꼈습니다. 이 책으로 블록체인의 피상적인 개념을 넘어 수학적 원리까지 이해할 수 있는 좋은 계기가 될 것이라고 확신합니다.

_김다운, 현대모비스

실용적인 크립토 입문서를 원하는 독자라면 이 책과 맞지 않을 수 있다. 하지만 크립토의 이론적 토대에 호기심이 있는 사람들이라면 이 책만큼 재미있는 책은 없을 것. 수학 개념을 구현한 클래스부터 하나씩 따라 하면서 완성되는 모습을 보면 소름이 돋는다.

 

수학적 개념들을 소개하면서 진행하는데 계산을 손으로 하지 않고 파이썬으로 한다는 게 인상적이다. 저자가 의존성을 제거하려고 의도적으로 수학 라이브러리 같은 것들은 안 쓰고, 파이썬 클래스부터 말 그대로 밑바닥부터 구현한다. 그래서 쥬피터 노트북 하나랑 연필 하나만 딸랑 들고 따라가면 된다. 수학이 나온다고 해서 겁먹지 않아도 괜찮은데, 머신러닝처럼 수학적 개념의 의존도가 그렇게 높지 않으니까 추상대수학 개념들을 하나씩 주워들으면서 진행하면 충분히 따라 할 수 있다.

 

이미 구현된 것들에 대한 응용만 가르치거나, 겉핥기식으로 에둘러 설명하는 크립토 입문서들을 볼 바에야 차라리 이 책으로 공부하는 게 시간 낭비를 덜 하고 좋을 듯.

 

 



이젠 대부분의 사람들에게서 비트코인이라는 단어가 더 이상 생소하지 않다. 그것이 암호화폐, 가상화폐라고 불리는 정도는 누구나 알고 있을 것이다. 

현재 우리의 경우 정책자들의 무지로 인해 암호화폐를 긍정적 방향으로 이끌지 못하고, 고사 정책을 하는 바람에 그 부작용으로 어두운 곳으로 숨어 각종 사기 사건이 판을 치고 있으나, 세계적으로는 암호화폐와 함께 그것이 낳은 블록체인과 같은 각종 기술들은 IT와 핀테크 시장에서 중요한 미래로 여겨지고 있다.

그렇기 때문에 고사 정책을 취하는 우리나라에도 비트코인을 연구하는 이들이 많고, 시중 서점에도 비트코인이니 이더리움이니 하는 암호화폐에 대한 책들이 무척 많이 나오고 있다. 

 

그러나 프로그래머로서 전부터 아쉬웠던 점은 대부분의 책들이 투자와 미래 전망에 치중되고 있다는 것이다. 그래도 그나마 다행인 것은 요즘 들어서는 블록체인, 이더리움에 대한 프로그래밍에 관련된 책들이 여럿 나오고 있다는 것이다. 이더리움 경우, 솔리디티 라는 자체 언어를 가지고 있고, 개발을 좀 쉽게 할 수 있게 되어 있지만, 전반적으로 암호화폐 프로그래밍은 쉽지 않다. 그 이유로 일단 수학적 지식 바탕이 필요하고, 암호화폐 메커니즘에 대한 이해는 필수다. 특히 수학 파트가 문제다. 여러 분야의 지식이 필요하므로 이해가 쉽지 않다. 

 

그런데 이번에 소개하는 '밑바닥부터 시작하는 비트코인'은 이름처럼 비트코인의 근간이 되는 수학적 기초부터 비트코인의 작동 기본 원리를 누구나 이해하기 쉽게 밑바닥부터 하나하나 그림과 그래픽으로 설명하고 있는 책이라, 비트코인을 좀 더 깊게 알고자 하는 분들에게 큰 도움이 되는 책이다. 여기에 올 컬러 편집으로 그래프와 코드 보기 편하다.

 

 


 

다만 이 책이 비트코인의 원리를 이해하기 쉽게 되어 있지만, 그렇다고 이것이 누구나 쉽게 볼 수 있다는 의미는 아니다. 프로그래밍 완전 초보를 대상으로 하는 책이 아니라는 것이다. 일단 책에 나와 있는 코드가 파이썬으로 되어 있으므로 적어도 파이썬에 대한 지식이 있어야 한다. 내용 테스트도 파이썬 코드로 하고 있고, 책 진도에 따라 점진적으로 비트코인 라이브러리를 만들고 있으며, 각 장마다 내용을 제대로 이해했는지 그때그때 연습문제가 나오고 있기 때문에 파이썬 지식은 필수다. 그래도 코드와 함께 자세한 설명이 밑에 나오고, 연습문제도 뒤에 어느 정도 답이 나오므로 지나치게 걱정할 필요는 없다. 어디까지나 이해만 할 수 있으면 된다.

 

 

 

 

앞에 수학에 대해 강조했는데, 비트코인에 관련된 수학은 주로 1장 유한체부터 4장 직렬화까지 나온다. 중고등학교 때 배운 내용이 아니다 보니, 기호도 생소하고, 용어도 새로울 것이다. 그러나 이 역시도 걱정할 필요 없다. 나눗셈 과정과 시계를 보여주며 설명할 정도로 아주 친절히 설명을 해주고 있어서, 차분히 한 줄 한 줄 읽어 주면 대부분 어렵지 않게 이해할 수 있다.



 

수학을 보다, 재미있게 느껴졌던 것은 문어처럼 생긴 타원곡선을 배운다는 것이다. 이걸 왜 배우나 했는데, 뒤에 타원곡선 암호를 익히게 되고, 유한체와 타원곡선을 통해 공개키 암호에 쓰이는 유한순환군이 무엇인지 이해하게 된다. 이처럼 '밑바닥부터 시작하는 비트코인'은 비트코인 관련 수학의 개념 이해부터 철저히 하고 있다. 

 

그리고 읽다 보니, 왜 비트코인을 암호화폐라고 부르는지 제대로 이해할 수 있었다. 비트코인 채굴과 거래, 인증, 모든 것들이 보안을 위해 암호 이론을 토대로 만들어졌던 것이다. 그만큼 이 책 내용에 암호 이론은 중요한 부분이며, 다양한 내용이 나오고 있어서, 암호학에 관심 있는 분들에게도 충분히 도움이 될만한 책이다.


 

 

책에는 박스로 되어 있는 주의사항이나 추가 설명들도 많이 보이는데, 짧은 내용이긴 하지만, 비트코인에 관련된 여러 배경을 폭넓게 알 수 있어서 재미있었다.

 

송재준 저자는 비트코인 프로그래머로 잡지 기고 및 텍사스 대학 강의, 비트코인 지갑으로 유명한 아머리사의 기술 담당 부사장을 역임한 자타가 공인하는 비트코인 전문가이다. 그런데 왜 역자가 있나 했는데, 알고 보니 그는 어릴 적 미국으로 간 재미교포로 한글로 써진 책이 아니었던 것이다. 그런데 읽어보면 알겠지만, 내용이 번역한 티가 안 나고, 전혀 어색하지 않은데, 그만큼 류정필 역자가 용어나 주석 하나까지 애를 쓰고 공들였다는 의미일 것이다.

 

기초가 약하면, 그 위에 건물을 높게 세울 수 없다. 그런 면에서 '밑바닥부터 시작하는 비트코인'은 비트코인에 관련된 수학과 원리를 기초부터 탄탄히 익힐 수 있는 토대가 되는 책이 되어줄 것이다. 비트코인이 암호화폐의 시조인 만큼 다른 암호화폐 기술을 이해하는데도 큰 도움이 될 것이며, 핀테크 개발자에게도 여러모로 도움이 될만한 책이라 생각한다.

이 책의 리뷰는 한빛미디어 ‘나는 리뷰어다’로 부터 책을 지원받아 작성된 글입니다.

 

 

programming-bitcoin-01.jpeg

 

또 한번 역대급 책이 출간되었다는 소식을 듣고 이 책을 꼭 읽고 싶어서 지원하게 되었다. 비트코인 코어 개발자 Jimmy Song 님의 책이었다. 기대를 많이 해서 그런지 정말 책을 받자마자 바로 정독을 시작했었다.

역시 책 내용은 최고라고 할 수 있을 것 같다. 일반적인 비트코인 책처럼 붕 뜬 느낌의 책이 아니라 개발 을 하는 입장에서는 내부까지 이해할 수 있도록 쉽게 설명한 책이었다. 개인적으로 시중에 있는 비트코인 책 중에서는 마스터링 비트코인 이후로 맘에 드는 책이 정말 하나도 없었는데, 이제 이 책을 하나 추가하고 싶다. 참고로 이 두 책을 비교하자면, 마스터링 비트코인 은 비트코인의 일반적인 개념들을 설명하고, 비트코인 클라이언트 사용법을 알려주어 실제 서비스에서 사용할 수 있는 방법을 알려주는 책이라면, 밑바닥부터 시작하는 비트코인 은 비트코인 그 자체에 대해서 세세하게 알려주는 책이라고 할 수 있을 것 같다. 만약 두 책을 모두 읽고 싶다면 마스터링 비트코인을 읽은 후에 이 책을 읽는게 어떨까 한다.

하지만 이 책의 경우 코어 개발 책 답게 수학적인 내용이 은근히 많이 들어가 있기 때문에, 비전공자(?) 입장에서는 이해하기 조금 어려울 수도 있다는 생각이 들었다. 그래도 비트코인을 활용한 서비스를 개발하는 사람이라면 이 책을 반드시 이해할 수 있어야만 한다는 생각이 든다. 그렇기 때문에 오늘 이후로 우리 회사 개발자의 필독서 중 하나로 추가할 생각이다.

위와 같은 점을 고려할 때 총 평은 비트코인 개념을 가장 잘 알려주는 책 라고 말하고 싶다.

 

programming-bitcoin-02.jpeg

 

책은 비트코인, 블록체인 등에 입문 할 때 가장 힘들어하는 부분 중 하나인 PKI 개념을 잡는 것부터 시작한다. 그런데 단순히 개념 설명만 하고 pki 라이브러리를 사용해서 개발하는 것이 아니라 정말로 secp256k1 으로 시작해서 비트코인 트랜잭션 서명 까지 직접 라이브러리 없이 개발해 나간다.그 이후 Scipt, 블록, 머클트리 등에 대해서 설명해 나간다. 마지막 장에는 최근(?) 진행한 segwit 에 대해서도 설명해 준다.

위 사진과 아래 사진을 보면 알 수 있지만 어려운 개념에 대해서는 그림(그래프) 와 함께 보여주고 코드도 깔끔하게 잘 정리되어 있어 보기도 편하다. 특히, 개념 설명을 해주고 이 개념이 어느 코드에 있는지 설명해주는 부분 때문에 처음 실습없이 읽어나갈 때에도 무리없이 진행 할 수 있었던 것 같다.

그래도 개발자라면 코드는 한번 돌려보는 것을 꼭 추천하고 싶다. 코드를 돌리면서 비트코인이 이런식으로 작동하는 구나를 간단하게 나마 느낄 수 있었기 때문이다.

 

programming-bitcoin-03.jpeg

 

작성자의 경우 현재 블록체인 업계에 종사하기 때문에 더 관심이 있었을 지도 모른다. 하지만 그렇다고 하더라도 최근 읽은 블록체인 관련 책 중에 가장 흥미롭게 읽었던 것 같다. 한빝미디어의 베스트 셀러인 밑바닥 부터 시작하는 딥러닝 1,2 의 이름을 가히 이을만 한 책이라는 생각이 들었다.(작성자의 경우 저 두책도 모두 읽었었다.)

또한 개인적인 생각에는 블록체인(비트코인) 업계 종사자가 아니라 일반 개발자들도 한번 사서 읽어보면 평상시 사용하는 Key 관련 내용네트워크 등을 직접 코딩하면서 배울 수 있는 기회가 될 수도 있겠다는 생각이 들었다.

그렇기 때문에 결론적으로 이 책을

  • 1 비트코인 관련 종사자
  • 2 신입 개발자

등에게 추천하고 싶다.

 

coin.jpeg

 

 

비트코인은 블록체인 기술 기반으로 만들어졌습니다.

 

2, 3세대 블록체인으로 이더리움과 이오스가 있는데요.

비트코인 개념이 확장한 개념입니다.

 

블록체인도 AI처럼 떠오르는 기술입니다.

 

상용화가 되려면 얼마나 걸릴지는 모르지만 계속 연구되고 있습니다.

 

블록체인 개발에 관심이 있는 분들에게 좋은 책이 나와 소개하려 합니다.

 

바로 ‘밑바닥부터 시작하는 비트코인'입니다.

 

밑바닥 시리즈는 개발도서로 인기가 많습니다.

 

블록체인 개발자로 성장하려면 비트코인 코어 학습이 선행이 필요한데요.

비트코인 코어를 이해하려면 동작 원리와 구성요소를 아는 것이 중요합니다.

 

programer.jpg

 

 

◆ 비트코인 프로그래머

저자는 근 5년 동안은 비트코인 프로그래머로 지냈습니다.

 

비트코인에 관심을 갖게 되고부터 5년간 비트코인을 연구하며 살 게 됐습니다.

 

현재까지 총 개발 20년 경력의 프로그래머인데요.

비트코인 개발 노하우를 알려줍니다.

 

또한 연습문제를 풀어 볼 수 있는 필요한 정도의 수학을 다룹니다.

 

이 책은 각 장의 라이브러리로 학습하며 비트코인 코어의 구조 이해를 돕습니다.

 

비트코인 학습은 수학 이론, 자료구조, 네트워크 프로토콜 순으로 단계별로 진행하는 구성입니다.

 

bitcoin.jpg

 

 

◆ 파이썬으로 직접 구현하며 배우는 비트코인

비트코인을 배울 때 파이썬으로 직접 구현하면서 배울 수 있는 책입니다.

 

파이썬은 개발자와 비개발자도 분석을 위해 많이 사용합니다.

 

다른 프로그래밍 언어보다 파이썬은 학습하기 쉬운 언어입니다.

 

파이썬을 한 번이라도 배워보고 써보셨다면 실습하는데 어려움이 덜할 것입니다.

 

어려움이 덜하다고 한 번에 보고 이해하긴 어려울 텐데요.

수학, 암호학, 블록, 트랜잭션 등 비트코인에 대한 이론도 알아야 이해할 수 있으실 겁니다.

 

이론도 같이 공부하며 파이썬으로 비트코인의 핵심을 직접 구현해본다면 암호화폐가 어떻게 돌아가는지 알 수 있습니다.

 

책에서 사용하는 툴은 주피터 노트북입니다.

 

파이썬 코드를 실행하기 위해 사용하는 툴입니다.

 

주피터 노트북으로 한 줄씩 코드를 쳐가며 책의 소스들을 쳐보시면 코드의 결과를 볼 수 있습니다.

 

끝으로 ‘밑바닥부터 시작하는 비트코인' 책의 연습문제로 실습하실 것을 추천합니다.

 

연습문제를 풀어보며 책의 장별 내용을 이해했는지 점검할 수 있습니다.

 

저자는 비트코인 코어 개발자로 모르는 사람보다 코어에 대한 이해가 많습니다.

 

원문을 잘 이해한 사람이 번역을 제대로 할 수 있지 않습니까?

 

번역 원문을 잘 이해한 저자의 해석이 비트코인 코어 학습에 큰 도움이 될 것입니다.

 

시중에는 비트코인이나 블록체인을 주제로한 많은 책들이 나와있는데, 개인적으로는 크게 두가지 유형이라고 생각한다.

 

첫번째는 암호화폐와 블록체인에 대한 이론과 활용 등 지식에 대한 내용이 주가 되는 책들이다.

두번째는 이미 발표된 블록체인 구현체를 활용하여 실제 응용 프로그램을 만들어가는데 목적이 있는 책이다.

이 책은 굳이 나누자면 실제 비트코인 클라이언트를 구성해 나가는 두번째 실전형유형에 가깝다.

다만, 비트코인의 바탕이 되는 수학적 이론부터 시작해서 비트코인 구현체(비트코인 코어)를 만들어 간다는 점이 이책의 특징이다. (DAPP을 만드는게 아니다.)

 

서문1
서문2

저자의 오프라인 세미나를 바탕으로 만들어서인지 책의 진행이 매끄럽게 흘러간다.

그리고, 도식과 색상을 최대한 활용하여 설명하고 있다.

특히, 1~3장과 6장이 인상깊었다.

1,2장에서는 수학적 기본지식을 설명해 주고 이를 코드로 구현한다.

3장에서 앞에서 배운 이론을 바탕으로 공개키 암호와 전자서명을 구현한다.

6장에서 비트코인 전송의 핵심인 스크립트에 대해 정말 차근차근 설명해주고 있다.

6장-1 6장-2

 

비트코인의 핵심이라고 할수있는 코드덩어리(블록)가 자주 등장하는데, 이를 색상으로 구분하여 이해를 돕고있다.

 

 

번역도 매우 잘 되어서 전체적으로 어려운 내용임에도 잘 읽히고 이해하기도 쉬운편이다.

 

직접 블록체인을 만들어 보고자 하는 개발자에게 정말 큰 도움이 될 것 같다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 상품명 :
밑바닥부터 시작하는 비트코인
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
밑바닥부터 시작하는 비트코인
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
밑바닥부터 시작하는 비트코인
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실

최근 본 상품1