Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Arrow up icon
GO TO TOP
Ethereum Smart Contract Development

You're reading from   Ethereum Smart Contract Development Build blockchain-based decentralized applications using solidity

Arrow left icon
Product type Paperback
Published in Feb 2018
Publisher Packt
ISBN-13 9781788473040
Length 288 pages
Edition 1st Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Mayukh Mukhopadhyay Mayukh Mukhopadhyay
Author Profile Icon Mayukh Mukhopadhyay
Mayukh Mukhopadhyay
Arrow right icon
View More author details
Toc

Table of Contents (18) Chapters Close

Title Page
Dedication
Packt Upsell
Contributors
Preface
1. Blockchain Basics FREE CHAPTER 2. Grokking Ethereum 3. Hello World of Smart Contracts 4. A Noob's Guide to DApps and DAO 5. Deep-Diving into Smart Contracts 6. Solidity in Depth 7. Primer on Web3.js 8. Developing a Cryptocurrency from Scratch 9. Enterprise Use Cases 10. BaaS and the Dark Web Market 11. Advanced Topics and the Road Ahead 1. Other Books You May Enjoy Index

Index

A

  • access
    • restricting / Restricting access
  • access control List (ACL) / Restricting access
  • Amazon Eris / Amazon Eris
  • Anti-Money-Laundering (AML) / Consortium blockchains
  • API structure
    • of Web3.js / API structure of Web3.js
  • application-specific integrated circuit (ASIC) / Blockchain mining and forking
  • Application Binary Interface (ABI) / Remix in a nutshell, Need for solidity, API structure of Web3.js
  • application programming interface (API) / Need for solidity
  • arbitrage trading
    • for cryptocurrencies / Arbitrage trading for cryptocurrencies
  • Association of Certified Anti-Money Laundering Specialists (ACAMS) / Dark web marketplace
  • authenticity proof / Smart contract auditing and compliance

B

  • bandwidth / Swarm
  • banking
    • about / Banking and payments
    • use cases / Insurance, Supply chain management, Forecasting and prediction market, Charity, Public benefits, Energy management, Art and music, Retail, Real estate, Cyber security, Crowdfunding
  • Basic Banking Account Number (BBAN) / API structure of Web3.js
  • Big O notation O( ) / Swarm
  • bitcoin improvement proposal (BIP-0001) / Ethereum improvement proposal
  • blockchain
    • about / Understanding a blockchain–a developer and trader's perspective, Inside a block, Tangle beyond blockchain
    • mining / Blockchain mining and forking
    • forking / Blockchain mining and forking
    • evolution / Blockchains – evolution, generations, and hype
    • generations / Blockchains – evolution, generations, and hype
    • hype / Blockchains – evolution, generations, and hype
    • types / Types of blockchain
    • private blockchain / Private blockchains
    • public blockchain / Public blockchains
    • consortium blockchain / Consortium blockchains
    • shortcomings / Shortcomings of a blockchain
    • mining-pool oligopoly / Shortcomings of a blockchain
    • demystified / Tangle demystified
    • Iota GitHub analysis / Iota GitHub analysis
    • Iota, purchasing / Purchase and storage of Iota
    • Iota, storing / Purchase and storage of Iota
  • blockchain-as-a-service (BaaS)
    • about / Blockchain-as-a-service
    • enterprise platforms / Enterprise platforms for BaaS
    • IBM Hyperledger / IBM Hyperledger
    • Microsoft Azure EBaaS / Microsoft Azure EBaaS
    • Amazon Eris / Amazon Eris
    • dark web marketplace / Dark web marketplace
  • Blockchain 1.0 / Blockchains – evolution, generations, and hype
  • Blockchain 2.0 / Blockchains – evolution, generations, and hype
  • Blockchain 3.0 / Blockchains – evolution, generations, and hype
  • Byzantine Generals' Problem
    • about / The Byzantine Generals' Problem
    • strategies / Losing strategy, Winning strategy
  • bzzkey / Swarm

C

  • CAP theorem
    • about / The CAP theorem
    • consistency / The CAP theorem
    • availability / The CAP theorem
    • partition tolerance / The CAP theorem
  • chunks / Swarm
  • class properties
    • of contract / Class properties of a contract
  • cloud storage / Cloud storage
  • coin
    • versus token / Token versus coin
  • Coin Offers (ICO) / The rise and fall of DAO
  • comments
    • in solidity / Pragma, import, and comments
  • consensus
    • in distributed systems / Consensus in distributed systems
  • consortium blockchains
    • about / Consortium blockchains
    • R3 Corda, case study / Case study on R3 Corda
  • contract
    • class properties / Class properties of a contract
  • control flow graph (CFG) / Optimizer and debugging options
  • control structures / Expression and control structures
  • CorDapp
    • about / Case study on R3 Corda
    • key components / Case study on R3 Corda
  • Countering the Financing of Terrorism (CFT) / Consortium blockchains
  • Cross-Origin Resourcesharing (CORS) / Running a smart contract using Web3.js
  • Crypto2Crypto / Fiat2Crypto and Crypto2Crypto exchange
  • Crypto2Fiat / Fiat2Crypto and Crypto2Crypto exchange
  • cryptocurrencies
    • arbitrage trading / Arbitrage trading for cryptocurrencies

D

  • DApps
    • about / Understanding DApps
    • types / Understanding DApps
    • developing / Steps to develop a DApp
    • architecture / Architecture of a DApp
  • data source / Smart contract auditing and compliance
  • debugging options / Optimizer and debugging options
  • decentralization
    • about / The notion of decentralization
    • architectural axis / The notion of decentralization
    • political axis / The notion of decentralization
    • logical axis / The notion of decentralization
    • for Ethereum / The notion of decentralization
  • decentralized applications (DApps) / Decentralized applications
  • decentralized autonomous corporations (DACs) / DACs and DAS
  • Decentralized Autonomous Organisation (DAO)
    • about / Ethereum block, mining, and forking, The rise and fall of DAO, DACs and DAS
    • design / Understanding the design of DAO
  • decentralized autonomous society (DAS) / DACs and DAS
  • decrement operations
    • solidity, used / Increment and decrement operations using Solidity
  • design patterns
    • about / Common design patterns
    • structural / Common design patterns
    • creational / Common design patterns
    • behavioral / Common design patterns
  • distributed hash table (DHT) / Whisper
  • distributed systems
    • about / Understanding distributed systems
    • consensus in / Consensus in distributed systems

E

  • ERC20 / Smart contract auditing and compliance
  • ERC20 token development
    • with Truffle / ERC20 token development using Truffle
  • ethercast
    • about / What is ethercast?
    • btcrelay.org / btcrelay.org
    • oraclize.it / oraclize.it
    • the-pitts-circus.com / the-pitts-circus.com
  • Ethereum
    • about / Understanding Ethereum
    • client interface classification / The Ethereum wallet and client interface
    • wallet classification / The Ethereum wallet and client interface
  • Ethereum block / Ethereum block, mining, and forking
  • Ethereum blockchain-as-a-service (EBaaS) / Microsoft Azure EBaaS
  • Ethereum ecosystem
    • about / The Ethereum ecosystem
    • mist browser / Mist
    • decentralized applications (DApps) / Decentralized applications
    • middleware / Middleware
    • Web3.js / Web3.js in the Ethereum ecosystem
  • Ethereum improvement proposal (EIP)
    • about / Ethereum improvement proposal, Rational behind EIPs
    • types / Types of EIP
    • Standard track EIP / Types of EIP
    • Informational EIP / Types of EIP
    • Meta EIP / Types of EIP
    • life cycle / EIP life cycle
    • template / EIP template
  • Ethereum virtual machine (EVM) / Need for solidity
  • Ethereum Virtual Machine (EVM) / API structure of Web3.js
  • events / Events
  • EVM / EVM
  • expression / Expression and control structures

F

  • factory patterns / Factory pattern
  • fear-uncertainty-doubt (FUD) / Purchase and storage of Iota
  • Fiat2Crypto / Fiat2Crypto and Crypto2Crypto exchange
  • functions / Functions

G

  • Gang of Four (GoF) / Common design patterns
  • GAS-costly pattern checker (GASPER) / Smart contract auditing and compliance
  • GitHub
    • issue, raising / Raising an issue on GitHub

H

  • hardware clients / Hardware clients and internet
  • hash function / Understanding the hash function and the Merkle tree

I

  • IBM Hyperledger / IBM Hyperledger
  • import statement
    • in solidity / Pragma, import, and comments
  • increment operations
    • solidity, used / Increment and decrement operations using Solidity
  • Informational EIP / Types of EIP
  • inheritance / Inheritance
  • initial coin offering (ICO) / The ICO story
  • initial public offering (IPO) / The ICO story
  • Integrated Development Environment (IDE) / Remix in a nutshell
  • Inter-Process Communication (IPC) / Building a private blockchain
  • International Banking Account Number (IBAN) / API structure of Web3.js
  • internet / Hardware clients and internet
  • internet engineering task force (IETF) / Hardware clients and internet
  • Internet of Things (IoT)
    • about / Networking and the Internet of Things, Tangle beyond blockchain
    • use cases / Voting, Government, Private transport and ride sharing, Healthcare
  • interplanetary file system (IPFS) / Swarm
  • inter protocol communication (IPC) / Service setup on the private blockchain
  • Iota
    • scalability / Tangle demystified
    • transaction fee / Tangle demystified
    • decentralization / Tangle demystified
    • quantum-immunity / Tangle demystified
    • storing / Purchase and storage of Iota
    • purchasing / Purchase and storage of Iota
  • Iota GitHub analysis / Iota GitHub analysis
  • Iota reference implementation (IRI) / Iota GitHub analysis
  • issue
    • raising, on GitHub / Raising an issue on GitHub
    • identifying / Raising an issue on GitHub
    • logging / Raising an issue on GitHub

J

  • JavaScript Object Notation (JSON) / Writing the genesis block, Web3.js in the Ethereum ecosystem

K

  • Know-Your-Customer (KYC) / Consortium blockchains

L

  • last-in-first-out (LIFO) / EVM
  • libraries / Libraries
  • Light Ethereum mobile wallet / The Ethereum wallet and client interface
  • Limited Liability Company (LLC) / Understanding the design of DAO
  • lines of code (Loc) / A smart contract in seven lines of code
  • loop
    • coding / Coding a loop

M

  • Markov Chain Monte Carlo (MCMC) / Tangle demystified
  • merge-mining / Smart contract optimization
  • Merkle tree / Understanding the hash function and the Merkle tree
  • Meta EIP / Types of EIP
  • Microsoft Azure EBaaS / Microsoft Azure EBaaS
  • middleware, Ethereum ecosystem
    • Swarm / Middleware, Swarm
    • Whisper / Middleware, Whisper
    • EVM / Middleware, EVM
    • about / Middleware
  • miner activated hard fork (MAHF) / Ethereum block, mining, and forking
  • mining / Ethereum block, mining, and forking
  • mist browser / Mist
  • morden / Turing completeness and the magic sauce

N

  • networking
    • about / Networking and the Internet of Things
    • use cases / Voting, Government, Private transport and ride sharing, Healthcare
  • node
    • Network map / Case study on R3 Corda
    • Notary / Case study on R3 Corda
    • Oracle / Case study on R3 Corda
    • Regular mode / Case study on R3 Corda
  • nutshell
    • remix in / Remix in a nutshell

O

  • optimizer / Optimizer and debugging options
  • ownership contract
    • designing / Designing an ownership contract

P

  • Parity
    • about / Parity hack demystified
    • reference link / Parity hack demystified
  • parity hack / Parity hack returns
  • Parity wallet hack
    • flaws, analyzing / Parity hack demystified
  • Patricia tree
    • insertion demo / Ethereum block, mining, and forking
  • payments
    • about / Banking and payments
    • use cases / Insurance, Supply chain management, Forecasting and prediction market, Charity, Public benefits, Energy management, Art and music, Retail, Real estate, Cyber security, Crowdfunding
  • Practical Algorithm to Retrieve Information Coded in Alphanumeric (PATRICIA) / Ethereum block, mining, and forking
  • pragma directive
    • of solidity / Pragma, import, and comments
  • privacy / Playful privacy
  • private blockchain
    • smart contract / Smart contract on a private blockchain
    • genesis block, writing / Writing the genesis block
    • building / Building a private blockchain
    • MIST browser, connecting geth used / Connecting MIST browser using geth
    • ethers, mining / Mining ethers in a private blockchain
    • smart contract, deploying / Deploying smart contracts on our private chain
    • about / Private blockchains
  • program counter (pc) / EVM
  • public blockchain
    • limitations / Consortium blockchains
  • Python enhancement proposal (PEP-0001) / Ethereum improvement proposal

Q

  • query / Smart contract auditing and compliance

R

  • R3 Corda
    • case study / Case study on R3 Corda
  • radio frequency identification (RFID) / Supply chain management
  • random access memory (RAM) / Ethereum block, mining, and forking
  • registries / Registries
  • remix
    • in nutshell / Remix in a nutshell
  • Remote procedure calls (RPC) / Web3.js in the Ethereum ecosystem
  • remote procedure calls (rpc) / Architecture of a DApp
  • request for comments (RC) / Types of EIP
  • Request for Comments (RFC) / Web3.js in the Ethereum ecosystem
  • Ropsten / Turing completeness and the magic sauce

S

  • sharding / Smart contract optimization
  • smart contract
    • lines of code (Loc) / A smart contract in seven lines of code
    • on private blockchain / Smart contract on a private blockchain
    • about / What makes a contract "smart"?
    • definition / Definition and design
    • design / Definition and design, Basic anatomy of a smart contract design
    • code / Role of code in a smart contract
    • optimization / Smart contract optimization
    • auditing / Smart contract auditing and compliance
    • running, Web3.js used / Running a smart contract using Web3.js
    • use cases / Smart contract use cases, Insurance, Trade finance, Derivatives, Securities, Accounts, Digital identity, Record-keeping, Loans and mortgages, Legal, Supply chain, Clinical trials, Terminal disease research, Decentralized microblogging, Administrative and security constraints, Service setup on the private blockchain
  • solidity
    • used, for increment operations / Increment and decrement operations using Solidity
    • used, for decrement operations / Increment and decrement operations using Solidity
    • need for / Need for solidity
    • features / Nuances, syntax, and features of solidity
    • syntax / Nuances, syntax, and features of solidity
    • pragma directive / Pragma, import, and comments
    • import statement / Pragma, import, and comments
    • comments / Pragma, import, and comments
  • Standard track EIP
    • about / Types of EIP
    • core / Types of EIP
    • networking / Types of EIP
    • interface / Types of EIP
    • ERC / Types of EIP
  • storage / Swarm
  • Swarm / Swarm

T

  • token
    • versus coin / Token versus coin
  • token systems
    • about / Token systems
    • factory patterns / Factory pattern
    • registries / Registries
    • voting systems / Voting systems
  • trader's perspective / Understanding a blockchain–a developer and trader's perspective
  • transaction
    • public blockchain / Public blockchains
  • Truffle
    • about / ERC20 token development using Truffle
    • used, for developing ERC20 token / ERC20 token development using Truffle
  • trusted execution environment (TEE) / Smart contract auditing and compliance
  • Turing complete programming languages / Turing completeness and the magic sauce
  • tweets
    • reading / Reading tweets
  • TwtAccount.sol / TwtAccount.sol
  • TwtRegistry.sol / TwtRegistry.sol

U

  • uniform resource locator (URL) / Swarm
  • units / Units and variables
  • user defined functions (UDF) / Turing completeness and the magic sauce

V

  • variables / Units and variables
  • voting DApp
    • designing / Designing a voting DApp
    • functions / Designing a voting DApp
  • voting systems
    • about / Voting systems
    • voter / Voting systems
    • authenticator / Voting systems
    • user / Voting systems
    • election officer / Voting systems
    • administrator / Voting systems
    • researcher / Voting systems
    • database / Voting systems

W

  • web3.bzz module
    • API sub-modules / API structure of Web3.js
  • web3.eth module
    • API sub-modules / API structure of Web3.js
  • Web3.js
    • in Ethereum ecosystem / Web3.js in the Ethereum ecosystem
    • used, for running smart contract / Running a smart contract using Web3.js
    • API structure / API structure of Web3.js
  • web3.utils module
    • API sub-modules / API structure of Web3.js
  • Whisper / Whisper
lock icon The rest of the chapter is locked
arrow left Previous Section
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime
Visually different images