품목정보
출간일 | 2019년 05월 23일 |
---|---|
쪽수, 무게, 크기 | 488쪽 | 188*245*22mm |
ISBN13 | 9791188621606 |
ISBN10 | 1188621602 |
출간일 | 2019년 05월 23일 |
---|---|
쪽수, 무게, 크기 | 488쪽 | 188*245*22mm |
ISBN13 | 9791188621606 |
ISBN10 | 1188621602 |
『Mastering Bitcoin』과 함께 블록체인 개발자의 필독서! 『비트코인, 공개 블록체인 프로그래밍(Mastering Bitcoin)』을 집필한 세계 최고의 블록체인 전문가인 안르레아스 안토노풀로스와 이더리움의 공동 설립자이자 솔리티디 언어를 발명한 개빈 우드가 공동 집필한 이 책은 이더리움 클라이언드, 스마트 컨트랙트, 지갑, 토큰, 핵심 프로토콜, 보안, 오라클, 솔리디티, 트랜잭션, DApp 등 이더리움의 거의 모든 것을 다루고 있다. |
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 |
마스터링 이라는 책제목에서 알수 있듯이 블록체인 개발자를 위한 바이블같은 참고서입니다
많은 내용을 골고루 다루지만 저처럼 DApp개발에만 관심있는 개발자에게는 너무 많은 범위를 다루어서 어렵게 느껴지는 장도 있습니다
1장
짧은 소개입니다
중요한 내용은 아니고 많이 사용되는 용어에 익숙해지는 준비운동 정도로 생각하면 됩니다
2장
지갑 사용법 위주의 기초입니다
일반적인 사용자가 알아야 할 내용들과 메타마스크 사용법 위주인데 상당히 압축한 내용이라서 아쉽지만 어차피 이책을 보는 분이라면 이정도는 쉽게 이해할 수 있을겁니다
3장
대표적인 이더리움 클라이언트를 다운로드 하고 설치하는 법을 배웁니다
책에서 풀노드 설치도 설명하는데 상당한 시간이 소요되므로 처음부터 따라할 필요는 없다고 생각합니다
가나슈나 사설블록체인으로 학습하다가 꼭 필요한 시기가 오면 하시기 바랍니다
4장
이더리움에 사용된 암호학에 대한 설명인데 어렵고 짧은 내용이라 대충 읽고 넘어 갔습니다
사실 이책이 많은 내용을 다루면서 몇몇장은 쉽게 설명하지는 않는거 같습니다
5장
지갑 사용법 같은건 아니고 이더리움에서 지갑에 사용된 기술에 대한 짧은 설명입니다
용어 해설 같은 내용이라서 이런게 있나보다 하고 읽고 지나치면 될거같습니다
6장
이더리움 블록체인에 기록되는 트랜잭션의 작동 방식에 대한 설명입니다
지갑 애플리케이션을 개발하는 수준의 사람에게 필요한 내용인데 web3를 이용한 간단한 실습은 후반부에 나오는 내용이라서 처음 접하는 분은 나중에 보셔도 됩니다
댑개발에만 관심있어도 이해하면 좋을 내용이라 생각합니다
7장
드디어 스마트 컨트랙트와 솔리디티가 나옵니다
문법 설명위주이고 트러플 프레임워크가 맛보기로 나오는데 나중에 좀더 나옵니다
완성도 높은 예제가 없어서 아쉽지만 나중에 DApp개발에 별도 장이 있습니다
8장
이더리움에서 스마트 컨트랙트를 개발하는 언어가 몇가지 있는데 대표적인 것이 솔리디티와 바이퍼입니다
이장에서 바이퍼를 설명하는데 아직은 솔리디티가 많이 사용되는지라 대충 읽고 넘어갔습니다
짧은 내용의 문법 맛보기 정도입니다
9장
보안에 관한 장인데 다양한 솔리디티 코드 사례를 통해서 취약점을 분석 설명합니다
댑개발 예제 위주의 다른 서적에서 보기 힘든 내용입니다
개인적으로 가장 도움이 된 장입니다
10장
토큰 표준과 구현하는 간단한 솔리디티 코드를 설명합니다
11장
이더리움 스마트 컨트랙트에 외부 데이터를 이용하는 기술인 오라클에 대한 장입니다
다양한 사용예와 약간의 소스를 보여주는데 너무 짧아서 뭔가 보여주는 듯하다가 끝나서 아쉽습니다
12장
DApp 개발 실습인데 모든 코드를 보여주고 설명하는 방식은 아닙니다
그래도 스웜에 파일 업로드하는 예제가 짧게나마 나옵니다
13, 14장
EVM과 합의에 관한 이론적인 장입니다
이 책은 부제는 '스마트 컨트랙트 및 댑 구축하기'입니다
사실 제가 관심있는 분야인데 이 책에서 집중적으로 다루는 내용은 아닙니다
블록체인과 이더리움에 관한 전반적인 기술을 골고루 설명하고 있어서 댑개발에 생각만큼 많은 비중을 할애하지는 않았습니다
마스터링이라는 타이틀을 고려하시고 구매하시면 좋을거 같습니다
번역은 이해하는데 큰 지장은 없지만 딱딱하고 가끔은 어색합니다
제이펍의 마스터링 이더리움 서평 이벤트에 당첨되어 작성한 리뷰입니다.
[한줄평]
블록체인 개발자라면 마스터링 비트코인과 함께 꼭 읽어야 하는 필독서이다.
[목차구성]
이책은 총 CHAPTER 14로 구성되어 있습니다.
CHAPTER 1 이더리움이란 무엇인가?
CHAPTER 2 이더리움 기초
CHAPTER 3 이더리움 클라이언트
CHAPTER 4 암호학
CHAPTER 5 지갑
CHAPTER 6 트랜잭션
CHAPTER 7 스마트 컨트랙트와 솔리디티
CHAPTER 8 스마트 컨트랙트와 바이퍼
CHAPTER 9 스마트 컨트랙트 보안
CHAPTER 10 토큰
CHAPTER 11 오라클
CHAPTER 12 탈중앙화 애플리케이션(댑)
CHAPTER 13 이더리움 가상 머신
CHAPTER 14 합의
[주요 내용]
· 이더리움 클라이언트 실행, 기본 거래 생성 및 전송, 스마트 컨트랙트 프로그램 작성하기
· 공개키 암호화, 해시, 디지털 서명의 핵심 이해하기
· 자금 및 스마트 컨트랙트를 제어하는 지갑(Wallet)의 디지털 키 보관 방법 학습하기
· 자바스크립트 라이브러리와 원격 프로시저 호출 인터페이스를 사용한 이더리움 클라이언트와의 상호작용 이해하기
· 실제 사례를 통한 보안 모범 사례, 디자인 패턴, 안티패턴 학습하기
· 자산, 공유, 투표 또는 엑세스 제어 권한을 나타내는 토큰 생성하기
· 다중 피어투피어(P2P) 구성 요소를 이용한 탈중앙화된 애플리케이션 구축하기
[서평]
블록체인 개발자라면 마스터링 비트코인을 대부분 알것입니다. 마스터링 비트코인은 블록체인을 깊이 이해하려는 사람들을 위한 책입니다. 그 책을 저자인 안드레아스 M. 안토노풀로스, 그리고 이더리움의 공동 설립자 개빈 우드 이름 만으로고 꼭 봐야 할 책입니다.
마스터링 이더리움은 가상화폐의 핵심 기술인 블록체인과 이더리움을 개념과 기초를 잘 설명하고 이해 할수 있는 책이라고 생각합니다. 이더리움 클라이언트, 스마트 컨트랙트, 지갑, 토큰, 핵심 프로토콜, 보안, 오라클, 솔리디티, 트랜잭션, 분산애플리케이션(dApp) 등 이더리움 블록체인을 이루고 있는 거의 모든 기술을 다루고 있습니다.. 이를 통해 이더리움 및 기타 가상 머신 블록체인에서 스마트 컨트랙트 및 댑을 구축하는 데 필요한 정보를 제공하고 있습니다.
블록체인 개발자 혹은 이더리움을 입문하고 싶은 사람은 꼭 읽어봐야 할 책입니다. 이더리움의 기초부터 응용까지 하나하나 자세히 잘 알려주고 있습니다. 이더리움 프로젝트를 하다가 만날 문제를 대부분 해결할수 있게 많은 사례로 취약점과 예방 방법을 제시하고 있습니다.
이책은 블록체인으로서의 이더리움에 대한 기초부터 코어부분까지 종합적으로 사용 할수 있도록 이더리움 클라이언트 설치와, 네트워크 구축, 블록체인 애플리케이션 제작 까지 직접 구축하고 운영 할수 있도록 되어 있어 블록체인 개발에 큰 도움이 될것이라 생각합니다.