이 책은 현재 절판입니다. 그간 읽어주신 독자들께 감사드립니다.
아울러 개정판은 출간 계획이 없음을 안내해 드립니다. 《Mastering Bitcoin》과 함께 블록체인 개발자의 필독서!
이더리움 개발을 위한 최고의 리소스!
관련 사이트
관련 포스트
■ 2019/05/14 - [출간전 책소식] - 블록체인 개발자의 필독서, 《마스터링 이더리움》
관련 시리즈
■ (없음)
관련 도서
■ 코어 이더리움 프로그래밍: 블록체인, 이더리움 핵심에서 암호화폐 구축을 위한 스마트 컨트랙트 개발까지
관련 파일 다운로드
■ 부록 F 단축 URL 모음
강의보조자료 다운로드
교재로 채택하신 분들은 메일을 보내주시면 아래의 자료를 보내드리겠습니다: jeipubmarketer@gmail.com
■ 본문의 그림과 표
샘플 PDF
(차례, 감수자의 글, 옮긴이 머리말, 이 책에 대하여, 베타리더 후기, 1장 '이더리움이란 무엇인가' 전체, 4장 '암호학' 일부, 10장 '토큰' 일부)
정오표 페이지
■ https://jpub.tistory.com/983
도서 구매 사이트(가나다 순)
도서 소개
《Mastering Bitcoin》과 함께 블록체인 개발자의 필독서!
이더리움 개발을 위한 최고의 리소스!
이더리움은 전 세계 탈중앙화된 컴퓨팅 패러다임의 게이트웨이다. 이더리움 플랫폼을 사용하면 개방된 블록체인에서 작동하고, 지불 네트워크와 결합한 탈중앙화 애플리케이션(DApps)과 스마트 컨트랙트를 실행할 수 있다. 이러한 애플리케이션은 중앙 통제 없이 자율적으로 운영되고, 시스템 기능을 정지시킬 수 있는 장애 요소가 없다. 이 실용적인 안내서에는 이더리움 및 기타 가상 머신 블록체인에서 스마트 컨트랙트 및 댑을 구축하는 데 필요한 모든 정보가 담겨 있다.
아울러 IBM, Microsoft, NASDAQ을 비롯한 수백 곳의 기관에서 왜 이더리움에 관심을 가지는지 그 이유를 살펴보기 바란다. 그리고 이 필수 안내서를 통해서는 흥미진진한 블록체인 산업에서 여러분이 혁신자로서 필요한 다음의 기술을 습득하기 바란다.
이 책의 주요 내용
이더리움 클라이언트 실행, 기본 거래 생성 및 전송, 스마트 컨트랙트 프로그램 작성하기공개키 암호화, 해시, 디지털 서명의 핵심 이해하기자금 및 스마트 컨트랙트를 제어하는 지갑(Wallet)의 디지털 키 보관 방법 학습하기자바스크립트 라이브러리와 원격 프로시저 호출 인터페이스를 사용한 이더리움 클라이언트와의 상호작용 이해하기실제 사례를 통한 보안 모범 사례, 디자인 패턴, 안티패턴 학습하기자산, 공유, 투표 또는 엑세스 제어 권한을 나타내는 토큰 생성하기다중 피어투피어(P2P) 구성 요소를 이용한 탈중앙화된 애플리케이션 구축하기
추천사
나는 《마스터링 이더리움》이 다루는 범위 및 접근 가능성에 대해 매우 놀랐다. 강력히 추천한다.
_ 알렉스 반 디 산데(Alex Van de Sande), 이더리움 파운데이션 디자이너
《마스터링 이더리움》은 비트코인과 블록체인 기술을 수많은 잠재 고객이 이용할 수 있게 하는 표준 참고 자료이자, 이더리움 월드 컴퓨터에서 《Mastering Bitcoin》 책과 같은 역할을 한다.
_ 레인 레티그(Lane Rettig), 이더리움 코어 개발자
지은이 소개
안드레아스 M. 안토노풀로스(Andreas M. Antonopoulos)
베스트셀러 작가이자 연사이자 교육자이며, 세계 최고의 비트코인 및 개방형 블록체인 전문가 중 한 명이다. 그는 복잡한 주제를 매우 쉽게 이해시키는 재능을 갖고 있다.
개빈 우드(Dr. Gavin Wood)
이더리움의 공동 설립자이자 전 CTO이며, 솔리디티 계약 지향 언어의 발명가다. 또한 Web3 파운데이션(Web3 Foundation)의 설립자이며, 패리티 테크놀로지(Parity Technologies)의 설립자 겸 선임 개발자이기도 하다.
옮긴이 소개
박성훈
삼성SDS 소프트웨어 아키텍트로서 KT, 삼성전자, 한국철도공사, 삼성인력개발원 등 다양한 프로젝트에 참여하였다. 저서로는 《자바 기반의 마이크로서비스 이해와 아키텍처 구축하기》가 있다.
류길성
삼성SDS 테크니컬 아키텍트로서 삼성전자, 한국철도공사, 국세청 등 다양한 프로젝트에 참여하였다. 지금은 사내 블록체인 프로젝트를 수행 중이며, 이더리움, 하이퍼레저 패브릭 등 블록체인 시스템 아키텍처 설계 및 구축 업무를 담당하고 있다.
강동욱
삼성SDS 소프트웨어 아키텍트로서 ING생명, 삼성카드, 보험 ERP 등 주로 금융권 대형 차세대 프로젝트를 수행하였다.
감수자 소개
정우현
현재 한국 이더리움 사용자 그룹의 운영자이며, 2014년부터 서울 이더리움 밋업 운영을 비롯한 여러 블록체인 커뮤니티 활동을 활발하게 해왔다. 미국에서 20년간 이커머스 솔루션및 시스템 인테그레이션 사업을 해오다 비트코인과 이더리움을 접하면서 탈중앙화된 블록체인의 매력에 빠져들면서 2018년에 아톰릭스 컨설팅을 설립해 이더리움 생태계 확장을 위한 사업에 전념하고 있다. 서울대 언론정보학과를 졸업하였으며, 텍사스주립대(오스틴) 박사 과정을 수료하였다.
차례
CHAPTER 1 이더리움이란 무엇인가? 1
비트코인과의 비교 2
블록체인 구성요소 2
이더리움의 탄생 3
이더리움 개발의 4단계 6
이더리움: 범용 블록체인 7
이더리움의 구성요소 8
이더리움과 튜링 완전 9
범용적인 블록체인에서 탈중앙화 애플리케이션(DApp)으로 12
제3세대 인터넷 12
이더리움의 개발 문화 13
왜 이더리움을 배우나? 14
이 책을 통해 배울 수 있는 것들 15
CHAPTER 2 이더리움 기초 17
이더 화폐 단위 17
이더리움 지갑 선택하기 18
통제와 책임 20
메타마스크 설치하기 22
월드 컴퓨터 소개 31
외부 소유 계정(EOA) 및 컨트랙트 31
간단한 컨트랙트: 테스트 이더 Faucet 32
Faucet 컨트랙트 컴파일 35
블록체인에 컨트랙트 생성하기 38
컨트랙트 사용하기 40
결론 46
CHAPTER 3 이더리움 클라이언트 47
이더리움 네트워크 48
이더리움 클라이언트 실행 52
이더리움 기반 블록체인의 첫 번째 동기화 59
원격 이더리움 클라이언트 63
결론 66
CHAPTER 4 암호학 67
키와 주소 68
공개키 암호화와 암호화폐 69
개인키 71
공개키 72
암호화 해시 함수 79
이더리움 주소 82
결론 88
CHAPTER 5 지갑 89
지갑 기술의 개요 90
지갑의 모범 사례 95
결론 108
CHAPTER 6 트랜잭션 109
트랜잭션 구조 109
트랜잭션 논스 111
트랜잭션 가스 117
트랜잭션 수신자 119
트랜잭션 값과 데이터 120
특별 트랜잭션: 컨트랙트 생성 124
디지털 서명 127
서명 접두어 값(v) 및 공개키 복구 134
서명 및 전송 분리(오프라인 서명) 135
트랜잭션 전파 137
블록체인에 기록하기 137
다중 서명 트랜잭션 138
결론 139
CHAPTER 7 스마트 컨트랙트와 솔리디티 141
스마트 컨트랙트란 무엇인가? 141
스마트 컨트랙트의 생명주기 142
이더리움 고급 언어의 소개 144
솔리디티로 스마트 컨트랙트 생성 146
이더리움 컨트랙트 ABI 150
솔리디티로 프로그래밍하기 152
가스 고려사항 178
결론 181
CHAPTER 8 스마트 컨트랙트와 바이퍼 183
취약점과 바이퍼 183
솔리디티와 비교 184
장식자 190
함수와 변수 순서 190
컴파일 192
컴파일러 수준에서 오버플로 오류 방지 192
데이터 읽기 및 쓰기 193
결론 194
CHAPTER 9 스마트 컨트랙트 보안 195
보안 모범 사례 195
보안 위험 및 안티패턴 197
재진입성 197
산술 오버플로/언더플로 202
예기치 않은 이더 207
DELEGATECALL 211
디폴트 가시성 218
엔트로피 환상 221
외부 컨트랙트 참고 222
짧은 주소/파라미터 공격 229
확인되지 않은 CALL 반환 값 231
레이스 컨디션 / 프런트 러닝 233
서비스 거부(DoS) 237
블록 타임스탬프 조작 240
생성자 관리 242
초기화되지 않은 스토리지 포인터 244
부동소수점 및 정밀도 246
Tx.Origin 인증 249
컨트랙트 라이브러리 251
결론 252
CHAPTER 10 토큰 253
토큰은 어떻게 사용되는가? 254
토큰과 대체성 255
거래상대방 위험 256
토큰과 내재성 256
토큰 사용: 유틸리티 또는 지분 257
이더리움 토큰 260
토큰 표준 사용 285
토큰 인터페이스 표준 확장 287
토큰 및 ICO 289
결론 289
CHAPTER 11 오라클 291
오라클은 왜 필요한가? 291
오라클 유스케이스와 사례 292
오라클 디자인 패턴 294
데이터 인증 297
계산 오라클 299
탈중앙화 오라클 300
솔리디티에서 오라클 클라이언트 인터페이스 302
결론 305
CHAPTER 12 탈중앙화 애플리케이션(댑) 307
댑이란 무엇인가? 308
기본 댑 사례: 경매 댑 312
경매 댑을 더 탈중앙화하기 318
스웜에 경매 댑 저장하기 319
이더리움 네임 서비스(ENS) 322
앱에서부터 댑까지 336
결론 337
CHAPTER 13 이더리움 가상 머신 339
EVM이란 무엇인가? 339
튜링 완전성과 가스 357
가스 358
결론 362
CHAPTER 14 합의 363
작업증명을 통한 합의 364
지분증명(PoS)을 통한 합의 365
이대시: 이더리움의 작업증명 알고리즘 366
캐스퍼: 이더리움의 지분증명 알고리즘 367
합의의 원칙 368
논쟁과 경쟁 368
결론 369
APPENDIX A 이더리움 포크의 역사 371
이더리움 클래식(ETC) 371
탈중앙화된 자율 조직(DAO) 372
재진입 버그 372
DAO 하드 포크 373
이더리움과 이더리움 클래식 376
기타 주목할 만한 이더리움 포크 377
APPENDIX B 이더리움 표준 381
이더리움 개선 제안(EIP) 381
가장 중요한 EIP와 ERC 목록 382
APPENDIX C 이더리움 EVM 연산코드와 가스 소비량 387
APPENDIX D 개발 도구, 프레임워크, 라이브러리 395
프레임워크 395
유틸리티 411
라이브러리 413
테스트 스마트 컨트랙트 415
APPENDIX E web3.js 튜토리얼 419
설명 419
논블록(비동기) 방식에서의 web3.js 컨트랙트의 기본적인 상호작용 419
데모 스크립트 검토 421
대기 중인 비동기 작업 424
APPENDIX F 짧은 링크 참고 425
스마트 컨트랙트 보안 425
토큰 427
핵심용어 429
찾아보기 443
'도서 소개' 카테고리의 다른 글
| R로 배우는 텍스트 마이닝: tidytext 라이브러리를 활용하는 방법 (0) | 2019.06.03 |
|---|---|
| 고양이도 할 수 있는 Vue.js (0) | 2019.05.27 |
| 업무와 일상을 정리하는 새로운 방법 Notion (0) | 2019.05.15 |
| 송쌤의 엔트리 게임 코딩 학교 (1) | 2019.05.14 |
| 파이토치 첫걸음 (0) | 2019.05.09 |
부록F_짧은링크참고.pdf