책소개
솔리디티 기본부터 상금 퀴즈, 주사위, 룰렛 게임 만들기까지『이더리움 블록체인 게임 개발』에서는 이더리움 스마트 컨트랙트를 활용해 실제로 게임을 개발한다. 초반부에서는 블록, 채굴, 트랜잭션 등 기초 개념을 소개하며 간단한 컨트랙트를 배포해본다. 예제에 필요한 솔리디티 언어, 컨트랙트 보안, 암호 경제학의 기본도 다룬다. 후반부에서는 폰지와 피라미드, 복권, 상금 퀴즈, 예측 시장, 주사위 게임과 룰렛 게임을 직접 구현한다. 이 책을 다 읽을 때쯤이면 기존의 솔리디티 컨트랙트를 읽고 해석하며 자신만의 솔리디티 코드를 작성할 준비를 마치게 될 것이다.
목차
CHAPTER 1 개념 소개__1.1 블록__1.2 채굴__1.3 트랜잭션__1.4 이더리움 가상 머신__1.5 상태 트리__1.6 Web3란 무엇인가?__1.7 이더리움의 최근 변경 사항__1.8 비트코인 vs 이더리움__1.9 주소와 키 쌍__1.10 컨트랙트와 외부 계정__1.11 이더리움 내의 프로그램__1.12 솔리디티 첫걸음__1.13 해킹 방지__1.14 블록 탐색기__1.15 유용한 스마트 컨트랙트__1.16 이더리움 게임의 장단점__1.17 업계 주요 인물__1.18 마치며CHAPTER 2 이더리움 개발 환경__2.1 도구 준비하기__2.2 블록체인 연결하기__2.3 마치며CHAPTER 3 이더리움 첫 단계__3.1 프로젝트 3-1: 트랜잭션 생성__3.2 프로젝트 3-2: 배포 101__3.3 마치며CHAPTER 4 스마트 컨트랙트의 개념__4.1 트러플 이론__4.2 EVM__4.3 솔리디티 이론__4.4 마치며CHAPTER 5 컨트랙트 보안__5.1 컨트랙트 데이터는 모두 공개된다__5.2 유실되는 이더__5.3 컨트랙트에 이더 담기__5.4 이더 보내기__5.5 withdraw() 함수__5.6 외부 컨트랙트 호출__5.7 중지 가능한 컨트랙트__5.8 난수 생성__5.9 정수형의 문제__5.10 함수는 기본적으로 public이다__5.11 tx.origin 대신 msg.sender 사용하기__5.12 프런트 러닝__5.13 잘 알려진 해킹 공격 사례__5.14 마치며CHAPTER 6 암호경제학과 게임 이론__6.1 블록체인 유지 메커니즘__6.2 합의의 형성__6.3 트랜잭션 수수료__6.4 보상__6.5 공격 벡터__6.6 마치며CHAPTER 7 폰지와 피라미드__7.1 폰지 vs 피라미드__7.2 검증 가능한 부패__7.3 간단한 폰지__7.4 현실적인 폰지__7.5 간단한 피라미드__7.6 거번멘털__7.7 마치며CHAPTER 8 복권__8.1 난수 생성기__8.2 간단한 복권__8.3 순환 복권__8.4 상수와 변수__8.5 게임플레이__8.6 정리 및 배포__8.7 난수 복권__8.8 파워볼__8.9 마치며CHAPTER 9 상금 퀴즈__9.1 답안의 난독화__9.2 간단한 퀴즈__9.3 제출/정답공개 퀴즈__9.4 그 외의 퀴즈 컨트랙트__9.5 마치며CHAPTER 10 예측 시장__10.1 컨트랙트 훑어보기__10.2 이벤트를 통한 상태 추적__10.3 주식 거래__10.4 예측 결과 확인__10.5 마치며CHAPTER 11 도박__11.1 게임플레이의 제약__11.2 사토시 주사위__11.3 룰렛__11.4 마치며