장바구니 담기 close

장바구니에 상품을 담았습니다.

이더리움을 활용한 블록체인 프로젝트 구축

이더리움을 활용한 블록체인 프로젝트 구축

  • 나라얀 프루스티
  • |
  • 에이콘출판
  • |
  • 2017-11-24 출간
  • |
  • 332페이지
  • |
  • 188 X 235 X 19 mm
  • |
  • ISBN 9791161750804
★★★★★ 평점(10/10) | 리뷰(1)
판매가

30,000원

즉시할인가

27,000

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
27,000

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

★ 이 책에서 다루는 내용 ★
■ 블록체인 기술의 기본 개요
■ 블록체인 기술 및 기능 구현과 이를 통해 달성 가능한 것들
■ 솔리디티 및 Web3.js를 활용한 DApp 구축
■ geth 명령어와 암호화에 대한 이해
■ 이더리움 지갑 생성
■ 컨소시엄 블록체인에 대한 탐색

★ 이 책의 대상 독자 ★
이 책은 블록체인과 이더리움을 사용해 변조 방지 데이터(그리고 트랜잭션) 애플리케이션을 만들고자 하는 자바스크립트 개발자를 대상으로 한다. 암호 화폐 및 이를 가능케 하는 로직과 데이터베이스에 관심 있는 사람에게 매우 유용하다.

★ 이 책의 구성 ★
1장. '탈중앙화 애플리케이션의 이해'에서는 DApp의 개념을 설명하고, 동작 방식에 대한 개요를 제공한다.
2장. '이더리움 동작 방식의 이해'에서는 이더리움 동작 방식을 설명한다.
3장. 스마트 컨트랙트 작성'에서는 스마트 컨트랙트 작성 방법과 geth의 대화형 콘솔에서 web3.js를 활용한 트랜잭션 배포 및 브로드캐스팅 방법을 보여준다.
4장. 'web3.js 시작하기'에서는 web3.js에 대한 소개 및 임포트 방법, geth와 연결하는 방법, Node.js 또는 클라이언트 측 자바스크립트 내에서 사용하는 방법을 설명한다.
5장. '지갑 서비스 구축'에서는 사용자들이 오프라인 상태더라도 이더리움 지갑을 쉽게 생성하고 관리할 수 있는 지갑 서비스 구축 방법을 설명한다. 이를 위해 특별히 LightWallet 라이브러리를 사용할 것이다.
6장. '스마트 컨트랙트 배포 플랫폼 구축'에서는 web3.js를 사용한 스마트 컨트랙트 컴파일, web3.js와 EthereumJS를 사용한 배포 방법을 보여준다.
7장. '베팅 애플리케이션 구축'에서는 이더리움 스마트 컨트랙트로부터 월드 와이드 웹의 데이터에 접근하기 위해 Oraclize를 사용한 HTTP 요청 생성 방법을 설명한다. 또한 IPFS 내에 저장된 파일에 대한 접근 방법, 문자열을 다루기 위한 strings 라이브러리 사용법도 배울 것이다.
8장. '엔터프라이즈 수준의 스마트 컨트랙트 구축'에서는 엔터프라이즈 수준의 DApp 작성을 쉽게 해주는 트러플(Truffle)의 사용법을 설명한다. 알트코인(altcoin)을 구축하면서 트러플에 대해 배워볼 것이다.
9장. '컨소시엄 블록체인 구축'에서는 컨소시엄 블록체인에 대해 논의할 것이다.

★ 옮긴이의 말 ★
블록체인에 관심을 두고 자료를 확인하는 시기에 우연히 이 책을 접하게 됐다. 이 책은 딱딱한 이론만 다루기보다는 전반적인 이해를 돕는 필수적인 내용과 함께 실행 가능한 예제로 구성돼 있어 어디부터 시작해야 할지 막막한 상황에서 기초를 다지는 데 도움이 됐다. 그래서 이 책의 번역을 진행하는 데 조금의 망설임도 없었다.
한 가지 짚고 넘어가야 할 점은 나 역시도 아직 블록체인 전문가는 아니라는 것이다. 그렇기 때문에 오히려 처음 블록체인 개발을 접하는 초심자 입장에서 내용을 이해하고 번역하기 위해 노력했다는 점이 독자들에게 충분히 전해졌으면 좋겠다.
이 책의 내용만으로 블록체인을 숙달하기는 어려울 것이다. 또한 너무나 빠르게 변화하므로 일부 내용이 금세 달라질 수도 있을 것이다. 그렇다고 하더라도 이 책은 앞으로 나아갈 수 있는 기반을 다지게 해줄 뿐 아니라 방향성도 제시해줄 수 있다고 생각한다.
어서 빨리 개발자들의 기발한 아이디어가 접목된 DApp이 활성화되길 기대해본다.

목차

1장. 탈중앙화 애플리케이션의 이해
__탈중앙화 애플리케이션이란 무엇인가?
____탈중앙화 애플리케이션의 장점
____탈중앙화 애플리케이션의 단점
__탈중앙화 자율 조직
__DApp 내에서 사용자 ID
__DApp의 사용자 계정
__중앙 집중화 애플리케이션에 대한 접근
__DApp 내에서의 내부 화폐
____DApp 내부 화폐의 단점
__승인이 필요한 DApp은 무엇인가?
__대중적인 DApp
____비트코인
____이더리움
____Hyperledger 프로젝트
____IPFS
____네임코인
____대시
____BigChainDB
____OpenBazaar
____리플
__요약

2장. 이더리움 동작 방식의 이해
__이더리움의 개요
__이더리움 계정
__트랜잭션
__합의
__타임스탬프
__논스
__블록 시간
__포크
__창조 블록
__이더 액면가
__이더리움 가상 머신
__가스
__피어 검색
__위스퍼와 스웜
__geth
____geth 설치
____JSON-RPC 및 자바스크립트 콘솔
____하위 명령어 및 옵션
____계정 생성
__이더리움 지갑
__미스트
__약점
____시빌 공격
____51% 공격
__세레니티
____지불 및 상태 채널
____지분 증명 및 캐스퍼
____샤딩
__요약

3장. 스마트 컨트랙트 작성
__솔리디티 소스 파일
__스마트 컨트랙트 구조
__데이터 위치
__다른 데이터 유형은 무엇인가?
____배열
____문자열
____구조체
____열거형
____매핑
____delete 연산자
____기본 유형 간의 변환
____var 사용
__제어 구조
__new 연산자를 사용해 컨트랙트 생성
__예외
__외부 함수 호출
__컨트랙트의 특징
____가시성
____함수 변경자
____폴백 함수
____상속
__라이브러리
____for 사용
__다수의 값 리턴
__다른 솔리디티 소스 파일 가져오기
__전역적으로 사용 가능한 변수
____블록 및 트랜잭션 속성
____주소 유형 관련
____컨트랙트 관련
__이더 단위
__존재, 무결성, 소유권 증명
__컨트랙트 컴파일 및 배포
__요약

4장. web3.js 시작하기
__web3.js 소개
____web3.js 불러오기
____노드에 연결
____API 구조
____BigNumber.js
____단위 변환
____가스 가격, 잔액, 트랜잭션 상세 정보 검색
____이더 송금
____컨트랙트 작업
____컨트랙트 이벤트 검색 및 리스닝
__소유권 컨트랙트를 위한 클라이언트 구축
____프로젝트 구조
____백엔드 구축
____프론트엔드 구축
____클라이언트 테스트
__요약

5장. 지갑 서비스 구축
__온라인 지갑과 오프라인 지갑의 차이
__hooked-web3-provider 및 ethereumjs-tx 라이브러리
__계층적인 결정적 지갑은 무엇인가?
__키 유도 함수 소개
__LightWallet 소개
____HD 유도 경로
__지갑 서비스 구축
____사전 필요조건
____프로젝트 구조
____백엔드 구축
____프론트엔드 구축
____테스트
__요약

6장. 스마트 컨트랙트 배포 플랫폼 구축
__트랜잭션 논스 계산
__solcjs 소개
____solcjs 설치
____solcjs API
__컨트랙트 배포 플랫폼 구축
____프로젝트 구조
____백엔드 구축
____프론트엔드 구축
____테스트
__요약

7장. 베팅 애플리케이션 구축
__Oraclize 소개
____어떻게 동작하는가?
____데이터 원본
____진위 증명
____가격
____Oraclize API 시작하기
____쿼리 암호화
____Oraclize 웹 통합 개발 환경
__문자열 작업
__베팅 컨트랙트 구축
__베팅 컨트랙트 클라이언트 구축
____프로젝트 구조
____백엔드 구축
____프론트엔드 구축
____클라이언트 테스트
__요약

8장. 엔터프라이즈 수준의 스마트 컨트랙트 구축
__ethereumjs-testrpc 탐색
____설치 및 사용법
____사용 가능한 RPC 메소드
__이벤트 토픽은 무엇인가?
__trufflecontract 시작하기
____truffle-contract 설치 및 임포트
____테스트 환경 설정
____tffltt API
__트러플 소개
____트러플 설치
____트러플 초기화
____컨트랙트 컴파일
____설정 파일
____컨트랙트 배포
____단위 테스트 컨트랙트
____패키지 관리
____트러플 콘솔 사용
____트러플 컨텍스트 내에서 외부 스크립트 실행
____트러플 빌드 파이프라인
____트러플 서버
__요약

9장. 컨소시엄 블록체인 구축
__컨소시엄 블록체인은 무엇인가?
__진위 증명 합의 프로토콜은 무엇인가?
__패리티 소개
____Aura 동작 방식에 대한 이해
____패리티 실행
____프라이빗 네트워크 생성
____권한 및 개인정보 보호
__요약

저자소개

저자 나라얀 프루스티(Narayan Prusty)는 5년 차 풀 스택 개발자다. 블록체인 및 자바스크립트를 전문적으로 다루며, 인도, 싱가포르, 미국, 아랍에미리트의 스타트업, 정부, 기업 대상으로 확장 가능한 제품을 구축하는 데 핵심적인 역할을 했다.
탈중앙화된 애플리케이션을 구축하기 위해 이더리움, 비트코인, Hyperledger, IPFS, 리플 등을 정기적으로 사용한다. 현재 두바이 에미리트 국립 은행의 블록체인 관련 주제별 전문가(SME, Subject-Matter Expert)로 근무하고 있다.
자바스크립트에 관한 『ECMAScript 6 길들이기』(에이콘, 2016)와 『Modern JavaScript Applications』(packt, 2016)를 저술했다.
실제 업무의 문제를 해결해주는 흥미로운 일이라면 즉시 작업을 시작한다. 18세의 나이에 MP3 검색 엔진을 개발했으며, 그 이후에는 전 세계 사람들이 사용하는 다양한 애플리케이션을 개발했다. 확장 가능한 애플리케이션을 상단부터 하단까지 개발할 수 있는 능력이 그를 특별하게 만드는 요인이다.
현재 블록체인 기술을 활용해 작업을 더 쉽고, 더 빠르고, 더 적은 비용으로 수행하는 임무를 맡고 있다. 또한 블록체인 기술을 활용해 부패 방지, 사기 방지, 투명성 확보 등을 실현하는 가능성에 대해서도 검토하고 있다.

도서소개

어느새 '블록체인'이라는 용어가 낯설지 않을 정도로 점점 대중화되고 있다. 하지만 실제 블록체인을 활용해 개발 업무를 시작하려면 어디서부터 시작해야 할지 막막할 것이다. 이 책은 블록체인의 전반적인 개념을 설명하고, 그중 이더리움을 활용하여 다양한 프로젝트를 구축할 수 있도록 예시를 들어 쉽게 설명하고 있다. 이더리움을 활용한 개발업무를 고민 중인 독자에게 입문서로 추천한다.

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.