HOME > 상세정보

상세정보

Blockchain by example : a developer's guide to creating decentralized applications using Bitcoin, Ethereum, and Hyperledger

Blockchain by example : a developer's guide to creating decentralized applications using Bitcoin, Ethereum, and Hyperledger (6회 대출)

자료유형
단행본
개인저자
Badr, Bellaj. Horrocks, Richard. Wu, Xun.
서명 / 저자사항
Blockchain by example : a developer's guide to creating decentralized applications using Bitcoin, Ethereum, and Hyperledger / Bellaj Badr, Richard Horrocks, Xun (Brian) Wu.
발행사항
Birmingham :   Packt Publishing Ltd.,   2018.  
형태사항
xi, 507 p. : ill. ; 24 cm.
ISBN
9781788475686
일반주기
Includes index.  
일반주제명
Blockchain.
000 00000nam u2200205 a 4500
001 000045985421
005 20190531175024
008 190531s2018 enka 001 0 eng d
020 ▼a 9781788475686
040 ▼a 211009 ▼c 211009 ▼d 211009
082 0 4 ▼a 332.178 ▼2 23
084 ▼a 332.178 ▼2 DDCK
090 ▼a 332.178 ▼b B138b
100 1 ▼a Badr, Bellaj.
245 1 0 ▼a Blockchain by example : ▼b a developer's guide to creating decentralized applications using Bitcoin, Ethereum, and Hyperledger / ▼c Bellaj Badr, Richard Horrocks, Xun (Brian) Wu.
260 ▼a Birmingham : ▼b Packt Publishing Ltd., ▼c 2018.
300 ▼a xi, 507 p. : ▼b ill. ; ▼c 24 cm.
500 ▼a Includes index.
650 0 ▼a Blockchain.
700 1 ▼a Horrocks, Richard.
700 1 ▼a Wu, Xun.
900 1 0 ▼a Wu, Brian.
945 ▼a KLPA

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(2층서고)/ 청구기호 332.178 B138b 등록번호 121249042 도서상태 대출가능 반납예정일 예약 서비스 B M

컨텐츠정보

저자소개

리처드 호록스(지은이)

영국에 거주하는 프리랜서 이더리움 개발자이자 풀 스택 개발자이다. 케임브리지 대학교에서 이학사 및 이학석사 학위를 받았고 여러 해 동안 Cisco System의 기술 수석 직원으로 일하면서 캐리어급 라우팅 하드웨어의 운영체제 개발에 참여했다. 이후 IT 업계를 떠나서 영어 교사로 일 했다. 암호화폐의 등장으로 다시 IT 업계에 관심을 가지게 된 2015년부터 이더리움과 다른 여러 암호화폐를 다루고 있다. 주된 관심사는 암호경제(cryptoeconomics )와 보상 계층(incentive layer)인데, 특히 메커니즘 설계와 토큰 공학에 초점을 둔다. 컴퓨터 앞에 있지 않을 때는 요가를 즐기며, 오토바이를 타다 넘어지는 것도 재미있어 한다.

벨라이 바드르(지은이)

경험 있는 보안 및 소프트웨어 공학자로, 블록체인을 열정적으로 사랑한다. 현재 기업용 블록체인 솔루션을 개발하는 블록체인 스타트업인 Mchain CTO이다. CTO 역할 외에, 전 세계 여러 기업에 전략 및 기술 자문을 제공하는 기술 자문가로도 일한다. 또한, 새로운 업무 지향적 블록체인 프로토콜의 확립과 관련된 여러 블록체인 프로젝트에도 참여한다. 개발자 콘퍼런스에서 자주 강연하는 바드르는 두 천사의 아버지다.

쉰 (브라이언) 우(지은이)

SmartChart 창립자이자 CEO이다. 16년 넘게 블록체인, 빅데이터, 클라우드, UI, 시스 템 기반구조의 설계와 개발에서 방대한 실무 경험을 쌓았다. 『Hyperledger Cookbook』(Packt, 2019), 『Seven NoSQL Databases in a Week』(Packt, 2018), 『Blockchain Quick Start Guide』(Packt, 2018)를 비롯하여 다수의 책을 공동 저술했으며, Packt에서 출간한 50권 넘는 전문서의 기술 감수를 수행했다. 여러 블록체인 스타트업에 자문을 제공하며, 블록체인에 관한 다수의 특허를 가지고 있다. 브라이언은 또한 NJIT 컴퓨터 과학 석사 학위도 가지고 있다. 현재 미국 뉴저지에서 두 명의 아름다운 딸 브리지트와 샬로트와 함께 살고 있다.

정보제공 : Aladin

목차

Cover -- Title Page -- Copyright and Credits -- About Packt -- Foreword -- Contributors -- Table of Contents -- Preface -- Chapter 1: Say Hello to Blockchain -- The emergence of blockchain and cryptocurrency -- From virtual currencies to cryptocurrency -- The invention of bitcoin -- What is blockchain? -- Blocks -- Transactions -- Smart contracts -- Interact with the blockchain -- Getting started -- Running a bitcoin client for the first time  -- Synchronizing the blockchain -- Running Bitcoin Core -- Running Electrum -- Method 1 – Building a raw transaction using Bitcoin Core -- Funding our address -- Unspent transaction output -- Creating the transaction -- Transaction structure -- Signing the transaction  -- Sending the transaction -- Retrieving your message online from the blockchain -- Using the local blockchain -- Method 2 – build a raw bitcoin transaction in JavaScript -- Preparation -- Let''s code -- Types of blockchains -- Classification of blockchains -- Summary -- Chapter 2: Building a Bitcoin Payment System -- What is Bitcoin? -- Why choose Bitcoin as a platform? -- Getting started with Bitcoin -- Setting up a Regtest environment -- First commands -- Transactions in bitcoin  -- Mining  -- Bitcoin scripting -- Building a P2PKH script using JavaScript -- Building a custom script -- Building a payment gateway -- Project description -- Bitcoin payment protocol overview -- Prerequisites -- Project setup -- Certificate management -- Merchant side -- Building a payment request URI -- Routing -- Checkout view -- Proceeding with payment -- Requesting payment details -- Receiving and acknowledging payment -- Invoicing -- Client side -- Previewing your application -- Payment protocol using BitcoinJ -- Prerequisites -- BitcoinJ installation -- BitcoinJ client -- Bitcoin wallet configuration -- Requesting payment -- Sending a payment -- Testing the code -- Bitcoin smart contracts -- What is Rootstock? -- Rootstock setup -- Interactions with RSK -- Account settings -- Writing your first bitcoin smart contract -- Deploying the contract -- Interacting  with the contract -- Summary -- Chapter 3: Building Your Own Cryptocurrency -- Compiling Bitcoin from source -- Preparing your build system -- Installing dependencies -- Bitcoin-qt - Qt5 GUI for Bitcoin -- Cloning the Bitcoin source code -- Building Bitcoin Core -- Checking your build worked -- New cryptocurrency – Readercoin -- Cloning Bitcoin -- Readercoin rebranding -- Changing the ports -- Changing pchMessageStart -- Genesis block -- New pszTimestamp -- New nonce, epoch time, and nbits -- New genesis hash -- Editing the Merkle root -- Removing the seed nodes -- Checkpoints -- ChainTxData -- Rewarding -- Halving -- Total supply -- POW parameters – target -- New block time -- Difficulty adjustment time interval -- Difficulty adjustment rate -- Time maturity -- Block size -- BIPs: Bitcoin Improvement Proposals -- Compiling and testing -- Design and graphics (Qt wallet) -- Redesign of the Bitcoin-Qt wal.
let -- Graphical interface addition -- Building a Readercoin network -- Readercoin mining -- Sending transactions -- Building a transaction and block explorer -- Iquidus setup requirements -- Creating Iquidus''s database -- Installing Iquidus -- Iquidus configuration -- Syncing databases with the blockchain -- Wallet preparation -- Starting the explorer -- Building an exchange market -- Summary -- Chapter 4: Peer-to-Peer Auctions in Ethereum -- Introduction to Ethereum -- Ethereum virtual machine and smart contracts -- Ether and gas -- Your first smart contract -- What''s a DApp? -- DApp architecture -- Building an auction DApp  -- Auction description -- Auction contract in Solidity -- Contract code analysis -- State variables -- Variable state types -- Visibility and access modifiers -- Enumerations -- Arrays -- Mappings -- Structures -- Functions -- Modifiers -- Condition and error verification -- Events -- Inheritance -- Constructors -- Time in Solidity -- Special variables and functions -- The fallback function -- Function overloading -- The bidding function -- Canceling an auction -- Withdrawing bids -- Contract destruction -- Remix IDE -- Bidding form in web3.js -- Introduction to the web3.js API -- Step 1 – talking to the blockchain -- Step 2 – interaction with the smart contract -- The ABI -- Call versus send transactions -- Invoking contract methods via a call -- Invoking contract methods via a transaction -- Callbacks -- Reading state variables -- Watching events -- Indexing events and filtering -- Numbers in Ethereum and floating point -- Transaction status receipt -- Deployment environment – multiple ways to enjoy! -- Option 1 – Ganache -- Option 2 – Testnet -- Connecting MetaMask to Testnet -- Option 3 – private network -- Geth installation --  Creating new accounts -- Genesis file -- Node initialization -- Connecting Ethereum nodes -- RPC tests -- Mining process -- Contract deployment -- Compiling and deploying contracts using solc -- Proof of authority (POA) and difficulty adjustment -- Option 1 – editing the Ethereum client code -- Option 2 – POW -- Running the auction DApp -- Contract and transaction cost -- How cost is calculated -- Deployment cost -- Function execution cost -- Contract destruction cost -- Potential optimization --  Solidity tips and tricks -- Summary -- Chapter 5: Tontine Game with Truffle and Drizzle -- Background -- Prerequisites -- Truffle quick start -- Installing Truffle -- Saying hello to Truffle -- Running Truffle for the first time -- Preparing the migration -- Configuring Truffle -- Compiling the contract -- Migrating the contract -- Setting up Ganache -- The Tontine contract -- General structure -- UML model -- Preparing the contracts -- Cplayer as a CRUD contract -- Smart contract data location -- The CRUD data repository -- CRUD – Create -- CRUD – Read -- Mapping iterations -- CRUD – Update -- Function overloading -- CRUD – Delete -- Tontine interfaces – Itontine -- Interface implementation – Ctontine.
contract -- Smart contract interaction -- Contract instantiation -- Contract creation -- Reading the storage of a remote contract -- Editing the storage of a remote contract -- Joining the game -- Calling remote functions -- Option one – using the ABI -- Option two – using low-level calls -- Using call to send ether -- The ping() method -- The eliminate() method -- The share_pension() method -- Standard integer division -- The claimReward method -- The this keyword -- Truffle unit tests -- Preparing the testing environment -- Migrating the contracts -- Running Ganache -- Preparing the tests -- Testing addPlayer() -- Testing findPlayer() -- Testing removePlayer() -- Testing Ctontine -- Testing a payable function -- Testing events -- Testing claimReward() -- Time manipulation -- Running the tests -- Testing with Solidity -- Debugging with Truffle and Remix -- Debugging with Truffle -- Spotting the error -- Breakpoints and watching values -- Debugging with Remix -- Attaching the debugger to the code -- Watching values -- Setting breakpoints -- Frontend with Drizzle -- Prerequisites -- What is the Drizzle box? -- Getting started with the Drizzle box -- Running the demo -- Starting the web UI -- Hacking the Drizzle box -- The game’s homepage -- Trying the DApp -- Connecting Ganache to MetaMask -- Running the Tontine DApp -- Showtime – ready to play? -- Getting help -- Summary -- Chapter 6: Blockchain-Based Futures System -- Project presentation -- Futures smart contract -- Blockchain oracles -- Web3j -- Prerequisites -- Setting up the Web3J Maven project -- Installing web3j -- Wallet creation -- Java client  -- The wrapper generator -- Initializing web3j -- Setting up Ethereum accounts -- Deploying the contract -- Interacting with smart contracts -- Calling a contract function --  Calling view methods -- Web3j events -- Enhancement -- Summary -- Chapter 7: Blockchains in Business -- Public versus private and permissioned versus permissionless blockchains -- Privacy and anonymity in Ethereum -- Why are privacy and anonymity important? -- The Ethereum Enterprise Alliance -- Ethereum''s licensing -- Blockchain-as-a-Service -- Quorum -- Privacy -- Higher performance and throughput -- Permission and governance -- The Quorum client -- Quorum Node -- Constellation -- Our project -- Prerequisites -- Bringing up the network -- Interacting with the network -- Testing the network -- Deploying the public contract -- Deploying the private contract -- Permissioning the network -- Summary -- Chapter 8: Creating an ICO -- What is an ICO? -- Project setup -- Token contracts -- ERC-20 token standard -- Name and symbol (optional) -- totalSupply (required) -- decimals (optional) -- Transfer event (required) -- balanceOf (required) -- transfer() (required) -- The constructor -- Delegated transfer -- allowance (required) -- approve() (required) -- Approval event (required) -- transferFrom() (required) -- The complete token contract -- ERC-223 token standard -- ERC-721 non-.

관련분야 신착자료

Kostolany, André (2023)
Kostolany, André (2023)