마스터링 이더리움
도서명:마스터링 이더리움
저자/출판사:안드레아스,M,안토노풀로스,개빈,우드/제이펍
쪽수:488쪽
출판일:2019-05-23
ISBN:9791188621606
목차
감수자의 글
옮긴이 머리말
이 책에 대하여
베타리더 후기
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