이 상품은 구매 후 지원 기기에서 예스24 eBook앱 설치 후 바로 이용 가능한 상품입니다.
|
PART 1 블록체인과 관련 기술CHAPTER 1 블록체인의 큰 그림1.1 블록체인 __1.1.1 블록체인이란 __1.1.2 비트코인이란 1.2 비트코인 네트워크 1.3 이더리움 1.4 블록체인 네트워크의 구성 요소 __1.4.1 P2P __1.4.2 참여자 __1.4.3 거래 __1.4.4 블록 __1.4.5 분산장부 __1.4.6 마이닝 CHAPTER 2 블록체인을 이해하는 암호기술2.1 해시 함수 __2.1.1 SHA-256 __2.1.2 RIPEMD-160 __2.1.3 HASH160 2.2 공개키 암호 2.3 타원곡선 암호 __2.3.1 타원곡선 __2.3.2 덧셈 __2.3.3 곱셈 __2.3.4 비밀키와 공개키 생성 방법 2.4 디지털 서명 __2.4.1 디지털 서명과 검증 과정 PART 2 비트코인 네트워크CHAPTER 3 화폐로 사용이 가능한 이유3.1 소유자를 특정하는 열쇠와 자물쇠 3.2 송금 대상은 ‘어드레스’ __3.2.1 Base58Check 인코딩 __3.2.2 어드레스를 생성하는 과정 3.3 키를 관리하는 ‘전자 지갑’ 3.4 전자 지갑의 종류 __3.4.1 PC에 존재하는 전자 지갑 __3.4.2 모바일 전자 지갑 __3.4.3 거래소 전자 지갑 __3.4.4 페이퍼 월릿 __3.4.5 하드웨어 월릿 CHAPTER 4 거래4.1 거래의 생애주기 4.2 거래의 개요 __4.2.1 송금이 이루어지는 과정 사례 4.3 거래의 구조 __4.3.1 Locktime 필드 4.4 UTXO와 잔액 4.5 Locking Script와 Unlocking Script __4.5.1 스크립트의 검증 과정 __4.5.2 거래 일부에 대한 서명 __4.5.3 Pay to Pubkey __4.5.4 Pay to MultiSig __4.5.5 Pay to Script Hash __4.5.6 OP_RETURN CHAPTER 5 블록과 블록체인5.1 블록의 구조와 식별자 5.2 블록 안의 거래 검색하기 __5.2.1 머클 트리 CHAPTER 6 마이닝과 합의 알고리즘6.1 비잔티움 장군 문제와 분산형 합의 6.2 작업증명 __6.2.1 문제 풀기 = 논스 찾기 __6.2.2 무작위 대입으로 논스 찾기 __6.2.3 검증하기 __6.2.4 변조가 불가능한 이유 6.3 누적되는 거래 6.4 코인베이스 거래 6.5 체인 분기 __6.5.1 거래가 동시에 발행된 경우 6.6 51% 공격 PART 3 이더리움과 스마트 계약 개발CHAPTER 7 이더리움과 비트코인 네트워크의 주된 차이점7.1 이더리움의 특징 __7.1.1 유통되는 통화 __7.1.2 스마트 계약 __7.1.3 계정 __7.1.4 블록의 데이터 구조 __7.1.5 상태 변화 __7.1.6 계정과 연결된 정보 __7.1.7 거래, 메시지, 콜 __7.1.8 가스 7.2 네트워크의 종류 __7.2.1 퍼블릭 네트워크 __7.2.2 프라이빗 네트워크 __7.2.3 테스트 네트워크 CHAPTER 8 스마트 계약 개발 준비 및 솔리디티의 기본 문법8.1 개발환경 구축 __8.1.1 게스 설치하기 __8.1.2 Genesis 블록 생성과 게스 실행하기 __8.1.3 계정 만들기 __8.1.4 게스 콘솔에서 많이 사용되는 명령어 8.2 미스트 월릿 __8.2.1 설치 및 실행하기(윈도우) __8.2.2 설치 및 실행하기(macOS) __8.2.3 미스트 월릿 애플리케이션 8.3 Remix-Solidity IDE 8.4 솔리디티의 언어 사양 __8.4.1 접근제어자 CHAPTER 9 용도별로 본 스마트 계약 예제9.1 예제 1 - HelloEthereum __9.1.1 새로운 계약 배포 __9.1.2 소스 코드 작성하고 생성자 정의하기 __9.1.3 계약 생성하기 __9.1.4 Provide maximum fee와 비밀번호 설정하기 __9.1.5 CONTRACTS 화면에서 다른 화면으로 이동하기 __9.1.6 거래 발행하기 __9.1.7 계약 정보 확인하기 __9.1.8 거래 실행하기 __9.1.9 미스트 월릿을 사용하여 거래 변경 내용 확인하기 9.2 예제 2 - 크라우드펀딩을 위한 계약 __9.2.1 계약 생성하기 __9.2.2 모금이 성공한 경우 __9.2.3 모금이 실패한 경우 9.3 예제 3 - 이름과 어드레스를 관리하는 계약 __9.3.1 동작 여부 확인 9.4 예제 4 - IoT 스위치를 제어하는 계약 __9.4.1 계약을 이용하는 과정 __9.4.2 동작 확인하기 9.5 예제 5 - 전자상거래 사이트를 위한 계약 9.6 예제 6 - 경매 서비스를 위한 계약 9.7 예제 7 - 추첨을 위한 계약 PART 4 스마트 계약의 보안CHAPTER 10 스마트 계약 개발의 보안 실무10.1 Condition-Effects-Interaction 패턴 10.2 Withdraw 패턴 __10.2.1 push형 송금 패턴 __10.2.2 pull형 송금 패턴 10.3 Access Restriction 패턴 __10.3.1 사례 10.4 Mortal 패턴 10.5 Circuit Breaker 패턴 CHAPTER 11 스마트 계약의 취약점과 공격 원리11.1 재진입성 문제 __11.1.1 공격 대상 계약 __11.1.2 공격 계약 __11.1.3 전체 흐름 __11.1.4 각 어드레스의 역할 __11.1.5 재진입성 문제 실습하기 __11.1.6 이벤트 확인하기 __11.1.7 수정 후의 결과 11.2 TOD 11.3 Timestamp Dependence 11.4 중요 정보 취급 11.5 오버플로 CHAPTER 12 사례에서 배우는 블록체인 보안12.1 솔리디티의 취약점 12.2 클라이언트 애플리케이션의 취약점과 키 관리 __12.2.1 주의할 점
|
田? 照博
심효섭의 다른 상품
|
블록체인의 구조와 신뢰성 높은 스마트 계약 개발, 이더리움 보안 대책까지 한 권에이 책은 최근 주목받는 기술인 블록체인을 활용하여 새로운 애플리케이션을 처음 개발해보려는 엔지니어를 위한 책이다. 이더리움 네트워크를 기반으로 스마트 계약을 개발할 때 당장 써먹을 수 있는 기본 개념과 활용법부터 보안 대책까지 차근히 짚어주는 실무 지침서다. 이 책은 블록체인의 각 요소기술을 직접 체험해보며 이해할 수 있는 전반부와 본격적인 보안 실무를 다루는 후반부로 구성된다. 특히 후반부는 이더리움 네트워크 기반의 스마트 계약 개발에 필요한 보안상 주의사항이나 취약점 공격 사례 연구, 대책 등 보안 관련 주제를 상당한 분량을 할애해 다룬다. 이 후반부를 통해 블록체인의 가능성을 좇는 엔지니어가 시행착오를 조금이라도 더 줄일 수 있도록 구성했다.이 책만으로 스마트 계약 개발 실무에 완전히 숙달할 수는 없겠지만, 엔지니어 여러분의 스마트 계약에 관한 이해 기반을 단단히 해줄 것이다. 당장 현장에서 관련 개발 업무를 수행해야 하는 개발자에게 추천한다.· 지은이의 말 중에서“블록체인의 구조는 다양한 암호기술을 기반으로 하다 보니 기존 애플리케이션보다 보안 수준이 높다는 장점이 있다. 그러나 블록체인을 실제로 활용하려면 블록체인에서 작동하는 독자적인 애플리케이션을 개발해야 하므로, 보안 대책을 충분히 갖추지 않고 출시를 서두르면 자칫 취약점을 공격받아 큰 피해를 볼 수 있다. 이 책은 블록체인을 안심하고 이용할 수 있는 보안 대책을 주로 다룬다. 특히 스마트 계약은 블록체인에서 실행할 수 있는 프로그램을 누구나 자유롭게 개발할 수 있다는 점에서 한층 보안 우려가 큰 분야다. 이 책이 여러분의 블록체인에 대한 이해와 안전한 블록체인 애플리케이션 개발에 조금이라도 도움이 되기를 바란다.”· 주요 내용블록체인 구조와 이론비트코인 네트워크의 이해이더리움과 스마트 계약 개발솔리디티 기본 문법거래 형태별 예제 코드보안 취약점 공격 사례
|