000 | 00000nam c2200205 c 4500 | |
001 | 000046009429 | |
005 | 20191216165623 | |
007 | ta | |
008 | 191216s2019 ulka 001c kor | |
020 | ▼a 9791161752846 ▼g 94000 | |
020 | 1 | ▼a 9788960772106 (Set) |
040 | ▼a 211009 ▼c 211009 ▼d 211009 | |
041 | 1 | ▼a kor ▼h eng |
082 | 0 4 | ▼a 005.758 ▼a 332.178 ▼2 23 |
085 | ▼a 005.758 ▼2 DDCK | |
090 | ▼a 005.758 ▼b 2019z2 | |
100 | 1 | ▼a R, Manoj P |
245 | 1 0 | ▼a 이더리움 쿡북 : ▼b 실전 예제와 함께 배우는 이더리움 기반 토큰, 게임, 스마트 계약, 댑 구현 방법 / ▼d 마노지 P R 지음 ; ▼e 남기혁, ▼e 최현영 옮김 |
246 | 1 9 | ▼a Ethereum cookbook : ▼b over 100 recipes covering Ethereum-based tokens, games, wallets, smart contracts, protocols, and Dapps |
260 | ▼a 서울 : ▼b 에이콘, ▼c 2019 | |
300 | ▼a 486 p. : ▼b 삽화 ; ▼c 24 cm | |
440 | 0 0 | ▼a acorn + PACKT technical book 시리즈 |
500 | ▼a 색인수록 | |
650 | 0 | ▼a Electronic data processing ▼x Distributed processing |
650 | 0 | ▼a Blockchains (Databases) |
650 | 0 | ▼a Distributed databases |
700 | 1 | ▼a 남기혁, ▼e 역 |
700 | 1 | ▼a 최현영, ▼e 역 |
900 | 1 0 | ▼a R, 마노지 P, ▼e 저 |
945 | ▼a KLPA |
소장정보
No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
---|---|---|---|---|---|---|---|
No. 1 | 소장처 과학도서관/Sci-Info(1층서고)/ | 청구기호 005.758 2019z2 | 등록번호 121251479 | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
이더리움 개발 환경 설정 방법, 스마트 컨트랙트 작성 방법, 토큰 생성 방법을 비롯한 기본 개념을 소개하고, 보안 취약점, 이더리움 관련 프로토콜도 소개하는 책이다. 이를 바탕으로 애플리케이션의 확장성과 보안을 높이기 위한 설계 고려 사항과 구현 기법을 소개한다. 트러플(Truffle), 웹3(Web3), 가나슈(Ganache)와 같은 이더리움 관련 패키지를 사용하는 방법도 소개한다.
★ 이 책에서 다루는 내용 ★
이더리움에서 스마트 컨트랙트를 효율적으로 작성하는 방법
■ 확장성 있는 분산 애플리케이션을 개발, 배치하는 방법
■ 애플리케이션 개발, 배치, 테스트와 관련된 여러 가지 도구와 프레임워크 사용법
■ Etherscan을 비롯한 블록 탐색기로 트랜잭션을 검색하는 방법
■ 토큰, ICO, 게임 제작 방법
■ 스마트 컨트랙트에서 발생할 수 있는 보안 허점과 대응 방법
★ 이 책의 대상 독자 ★
이더리움 블록체인 네트워크를 구축하고, 스마트 컨트랙트를 개발해서 배치하고, 탈중앙화 애플리케이션, 댑(DApp)을 만들거나 P2P 트랜잭션을 수행하는 방법을 알고 싶은 이들을 대상으로 하는 책이다. 이 책을 제대로 이해하기 위해서는 블록체인의 기본 개념과 자바스크립트 및 노드JS의 기초 지식이 도움이 된다.
★ 이 책의 구성 ★
1장, '이더리움 시작하기'에서는 이더리움의 기초와 관련 도구를 소개한다. 이더리움 설치하고 설정하는 방법과 네트워크에 연결해서 실행하는 방법을 알아볼 수 있는 예제를 실습해본다.
2장, '스마트 컨트랙트 작성하기'에서는 스마트 컨트랙트를 작성하는 요령을 소개하는 다양한 예제를 제공한다. 또한 작성한 컨트랙트를 컴파일, 배치, 테스트하는 방법도 소개한다.
3장, '스마트 컨트랙트 다루기'에서는 블록체인과 스마트 컨트랙트와 상호작용하는 탈중앙화 애플리케이션(댑) 개발에 관련된 핵심 주제를 소개한다.
4장, '트러플'에서는 이더리움 생태계에서 인기 있는 도구인 트러플 프레임워크를 소개한다. 워크플로우와 댑의 품질을 향상시키기 위한 몇 가지 활용 사례도 소개한다.
5장, '토큰과 ICO'에서는 이더리움 기반 토큰을 직접 만들고 ICO를 통해 배포하는 데 필요한 핵심 사항을 소개한다.
6장, '게임과 DAO'에서는 탈중앙화 게임이나 조직(DAO)을 구축하는 방법을 소개하고 직접 따라해볼 수 있는 예제를 제공한다.
7장, '솔리디티의 고급 기능'에서는 블록체인에서 좀 더 복잡한 작업을 효율적으로 처리하는 데 도움이 되는 솔리디티의 고급 기능을 소개한다.
8장, '스마트 컨트랙트 보안'에서는 널리 알려진 보안 취약점에 대응하는 기법을 소개한다. 또한 코드를 분석하는 데 활용할 수 있는 다양한 도구도 알아본다.
9장, '설계 고려 사항'에서는 풍부한 기능을 갖춘 댑을 개발하는 과정에서 흔히 고민하는 주제를 여러 가지 예제와 함께 살펴본다.
10장, '다양한 프로토콜과 애플리케이션'에서는 댑 개발에 도움될 만한 이더리움 관련 프로토콜과 애플리케이션을 소개한다.
11장, '스마트 컨트랙트 개발 관련 기법'에서는 더 높은 수준의 댑을 개발하는 데 필요한 여러 가지 주제를 소개한다.
정보제공 :

저자소개
마노지 P R(지은이)
분산 원장 기술 분야에서 3년 이상의 경력을 보유한 IT 기술에 능통한 개발자다. 인기 있는 최신 기술에 관심과 열정을 갖고 있어 적극적으로 학습하고 공헌한다. 전문 분야는 이더리움, 자바스크립트, Go 언어이며, 프로그래밍을 독학으로 익혀서 학창 시절부터 프리랜서 개발자로 경력을 쌓았다. 전 세계 다양한 고객을 대상으로 확장성 있는 엔터프라이즈 블록체인 솔루션을 여러 차례 개발했으며, 현재 콘듀언트 랩스(Conduent Labs)에서 블록체인 SME주제 전문가, Subject Matter Expert로 근무하고 있다. 현실 문제를 기술로 해결하는 데 관심이 많고, 오픈 소스 프로젝트에 활발하게 참여한다. 본업 외에도 여행과 글쓰기를 즐긴다.
남기혁(옮긴이)
고려대학교 컴퓨터학과에서 학부와 석사 과정을 마친 후 한국전자통신연구원에서 선임 연구원으로 재직하고 있다. 한빛미디어에서 『Make: 센서』(2015), 『메이커 매뉴얼』(2016), 『이펙티브 디버깅』(2017), 『리팩터링 2판』(2020), 『전문가를 위한 C++(4판)』(2019)을, 길벗에서 『핵심 C++ 표준 라이브러리(2판)』(2021), 『모던 C』(2022)를, 에이콘출판사에서 『Go 마스터하기』(2018), 『자율주행 자동차 만들기』(2019, 2022), 『스콧 애론슨의 양자 컴퓨팅 강의』(2021) 등을 번역했다.
최현영(옮긴이)
고려대학교 컴퓨터학과에서 학사, 석사, 박사를 마치고, 고려대학교 융합소프트웨어 대학원에서 연구교수를 거쳐, 현재 미국 펜실베니아 대학, PRECISE 센터에서 연구교수로 재직 중이다.

목차
지은이 소개 기술 감수자 소개 옮긴이 소개 옮긴이의 말 들어가며 1장. 이더리움 시작하기 __들어가며 __이더리움 클라이언트 고르기 __노드 설정하고 네트워크에 참여하기 __자바스크립트 콘솔에서 작업하기 __인퓨라로 시간과 비용 절약하기 __사설 이더리움 네트워크 직접 만들기 __개발용 블록체인 네트워크 생성하기 __애저 이더리움 서비스 사용하기 __메타마스크를 비롯한 다양한 지갑 사용하기 __블록 탐색기 사용하기 __계정에 대해 완벽히 이해하기 __솔리디티 컴파일러 설치하기 2장. 스마트 계약 작성법 __들어가며 __IDE 잘 고르는 방법 __스마트 계약 직접 작성해보기 __리믹스로 계약 테스트하기 __솔리디티의 정적 및 동적 타입 __생성자와 폴백 함수 __구조체와 열거형 사용법 __솔리디티에서 제공하는 제어 구문 __솔리디티에서 함수 작성하는 방법 __배열과 매핑 __함수 제한자 사용법 __접근 제한자를 효율적으로 활용하는 방법 __핵심 이벤트 - EVM 로거 __스토리지와 메모리의 효율적인 사용법 __solc 컴파일러로 계약 컴파일하기 __geth로 계약 배치하기 3장. 계약 다루기 __들어가며 __web3.js 설치하고 설정하기 __메타마스크를 인젝티드 프로바이더로 사용하기 __계정을 관리하고 트랜잭션을 보내는 방법 __작성한 스마트 계약을 컴파일해서 배치하기 __스마트 계약에서 데이터 읽기 __스마트 계약에 데이터 쓰기 __DApp에서 발생하는 이벤트 감시하기 __로 트랜잭션 보내기 __web3.js로 배치 요청하기 __JSON-RPC로 이더리움 다루기 __계약을 다루는 다른 방법 4장. 트러플 스위트 __들어가며 __트러플 프레임워크 설치 및 설정하기 __트러플 박스 활용하기 __스마트 계약 컴파일하기 __트러플 고급 설정 방법 __트러플에서 마이그레이션과 배치하기 __계약 다루기 __트러플로 스마트 컨트랙트 디버깅하기 __스마트 계약에 대한 테스트 작성하기 __트러플로 DApp과 API 작성하기 __트러플에서 패키지 관리하기 __드리즐 소개 __트러플에서 HD 지갑 사용하기 5장. 토큰과 ICO __들어가며 __이더리움에서 기본 ERC20 토큰 생성하기 __계정끼리 토큰 주고받기 __다른 계정에 위임해서 토큰 사용하기 __발행 가능한 토큰 생성하기 __폐기 가능한 토큰 생성하기 __ERC223 토큰 생성하기 __직접 ICO 추진하기 __ICO 계약에 기능 추가하기 __투자자에게 보너스 토큰 제공하기 __크라우드세일 사용자에 대한 화이트리스트 작성하기 __크라우드세일에 암호화페 지불 허용하기 __ERC20 토큰을 모두 지원하는 지갑 생성하기 6장. 게임과 DAO __들어가며 __대체 불가능 토큰 생성 방법 __자산 추적 및 이전 __이더리움에서 간단한 게임 만들기 __이더리움에서 탈중앙화 복권 만들기 __티켓 번호로 당첨자 선정하기 __투자자에게 배당금 나누기 __더 많은 사용자를 끌어들이기 위한 제휴 프로그램 운영하기 7장. 솔리디티의 고급 기능 __들어가며 __솔리디티에서 에러 잘 처리하는 방법 __추상 계약과 인터페이스 계약 __다른 계약에서 계약 관리하기 __솔리디티의 계약 상속 기능 __솔리디티에서 라이브러리 만드는 방법 __솔리디티에서 제공하는 수학 및 암호화 함수 __업그레이드 가능한 스마트 계약 작성법 __솔리디티에서 API로 데이터 가져오기 __솔리디티에서 함수를 타입으로 사용하는 방법 __솔리디티 어셈블리 __솔리디티에서 멀티시그 지갑 구현하기 8장. 스마트 계약 보안 __들어가며 __정수 오버플로우와 언더플로우 __재진입 공격 __패리티 해킹 __계약에 강제로 이더 전달하기 __사설 변수 사용하기 __TOD __모르는 대상 호출하기 __루프를 이용한 DoS __솔리디티용 보안 분석 도구 __솔리디티에서 초기화하지 않은 스토리지 포인터 __솔리디티 코드의 올바른 작성 방법 9장. 설계 고려사항 __들어가며 __댑을 위한 서버리스 아키텍처 __애플리케이션에 특화된 지갑 구현하기 __배치 후 발견된 버그에 대처하는 방법 __솔리디티로 무작위수 생성하기 __계약을 간결하고, 모듈화된 형태로, 최신 상태로 유지하기 __이더리움에 사용자 인증 구현하기 10장. 다양한 프로토콜과 애플리케이션 __들어가며 __이더리움 네임 서비스에 등록하기 __댑용 통신 프로토콜, 위스퍼 __분산 스토리지 플랫폼, 스웜 __BTCRelay로 비트코인 트랜잭션 모니터링하기 __알람 클록으로 이더리움 트랜잭션 스케줄링하기 __오픈제플린 라이브러리 사용하기 11장. 스마트 계약 작성 관련 기법 __들어가며 __바이퍼로 스마트 계약 작성하기 __리믹스로 스마트 계약 디버깅하기 __리믹스로 계약 배치하기 __솔리디티 코드에 대한 문서 생성하기 __린터를 이용해 코드 향상시키기 __다른 이와 솔리디티 코드 공유하기 찾아보기