0%

Book Description

Get up and running with Oracle’s premium cloud blockchain services and build distributed blockchain apps with ease

Key Features

  • Discover Hyperledger Fabric and its components, features, qualifiers, and architecture
  • Get familiar with the Oracle Blockchain Platform and its unique features
  • Build Hyperledger Fabric-based business networks with Oracle’s premium blockchain cloud service

Book Description

Hyperledger Fabric empowers enterprises to scale out in an unprecedented way, allowing organizations to build and manage blockchain business networks. This quick start guide systematically takes you through distributed ledger technology, blockchain, and Hyperledger Fabric while also helping you understand the significance of Blockchain-as-a-Service (BaaS).

The book starts by explaining the blockchain and Hyperledger Fabric architectures. You'll then get to grips with the comprehensive five-step design strategy - explore, engage, experiment, experience, and influence. Next, you'll cover permissioned distributed autonomous organizations (pDAOs), along with the equation to quantify a blockchain solution for a given use case. As you progress, you'll learn how to model your blockchain business network by defining its assets, participants, transactions, and permissions with the help of examples. In the concluding chapters, you'll build on your knowledge as you explore Oracle Blockchain Platform (OBP) in depth and learn how to translate network topology on OBP.

By the end of this book, you will be well-versed with OBP and have developed the skills required for infrastructure setup, access control, adding chaincode to a business network, and exposing chaincode to a DApp using REST configuration.

What you will learn

  • Model your blockchain-based business network by defining its components, transactions, integrations, and infrastructure through use cases
  • Develop, deploy, and test chaincode using shim and REST, and integrate it with client apps using SDK, REST, and events
  • Explore accounting, blockchain, hyperledger fabric, and its components, features, qualifiers, architecture and structure
  • Understand the importance of Blockchain-as-a-Service (BaaS)
  • Experiment Hyperledger Fabric and delve into the underlying technology
  • Set up a consortium network, nodes, channels, and privacy, and learn how to translate network topology on OBP

Who this book is for

If you are a blockchain developer, blockchain architect or just a cloud developer looking to get hands-on with Oracle Blockchain Cloud Service, then this book is for you. Some familiarity with the basic concepts of blockchain will be helpful to get the most out of this book

Table of Contents

  1. Title Page
  2. Copyright and Credits
    1. Oracle Blockchain Quick Start Guide
  3. Dedication
  4. About Packt
    1. Why subscribe?
  5. Foreword
  6. Contributors
    1. About the authors
    2. About the reviewers
    3. Packt is searching for authors like you
  7. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
      1. Download the example code files
      2. Download the color images
      3. Conventions used
    4. Get in touch
      1. Reviews
  8. Exploring Blockchain and BaaS
    1. Accounting system – single and double–entry
      1. Accounting system – single–entry
      2. Accounting system – double–entry
    2. Centralized versus distributed ledgers
      1. Centralized ledgers
      2. Distributed ledgers
    3. DLT and blockchain
      1. Comparing blockchain and DAG:
    4. Accounting system – triple–entry or distributed double–entry
    5. Blockchain definition and analogy
      1. Analogy
      2. Blockchain components
      3. P2P network
      4. Network of equity or the peer-to-peer network
    6. Layered structure of the blockchain architecture
      1. Hardware and infrastructure layer
        1. Ethereum - Infrastructure layer
        2. Hyperledger Fabric – Infrastructure Layer
      2. Data layer
      3. Network layer
        1. Transaction flow
      4. Consensus layer
      5. Application layer
    7. Structure of the blockchain
      1. Transaction state machine
      2. Types of accounts
      3. Delving into Block Structure
      4. Transactions
      5. Adding transactions to a block
      6. Appending blocks to blockchain
      7. Consensus algorithm
    8. Types of blockchain networks
    9. Blockchain platform
    10. Blockchain actors
    11. BaaS 
      1. BaaS qualifiers
      2. BaaS use cases
      3. Key advantages of BaaS
      4. Oracle's BaaS – OBP
      5. Pre–built blockchain applications
    12. Summary
  9. Construing Distributed Ledger Tech and Blockchain
    1. Challenges and opportunities of DLT
      1. Challenges associated with DLT
        1. Perception
        2. Consensus
        3. Facts
        4. The unknowns 
      2. Opportunities offered by DLT and blockchain
        1. Gain in efficiency and novel revenue streams
        2. Business models and enhanced resilience 
        3. Inheritance of trust
        4. Immutability and a smarter world
    2. Challenges of traditional technologies and solutions
    3. Design strategy
      1. Explore
        1. Identifying and justifying use cases
          1. What is the algorithm to quantify the need for blockchain?
          2. Building the equation
        2. Types of blockchain
        3. Structure of the business network
          1. pDAOs
        4. Business network goals and governance
        5. Dispute resolution and arbitrators
      2. Engage, experiment, experience, and influence
    4. Blockchain properties and use cases
      1. Blockchain properties
      2. Properties and use cases
    5. Types of use cases
      1. Digital assets
      2. Digital analytics
      3. Digital platform
    6. Exploring use cases
      1. Government – real property registry and transfer of ownership
        1. Challenges with the current process
        2. Blockchain, the savior
        3. Advantages of blockchain solutions
        4. Social factor
        5. Crowd funding of real estate properties
      2. FinTech – know your customer
        1. Present
        2. Future
        3. KYC/on–boarding processes on blockchain
        4. Process on the blockchain
      3. FinTech – invoice factoring
        1. Consortium–based solutions
        2. Marketplace solution
        3. Tokenized marketplace
    7. Engaging with a use case
      1. Defining the flow
        1. As-is flow
        2. To-be flow
      2. Identifying and defining business network components
        1. Defining assets
        2. Defining participants
        3. Detailed flow with transactions and events
      3. Integration architecture
      4. Infrastructure of the business network
    8. Summary
  10. Delving into Hyperledger Fabric
    1. A glance at the Hyperledger project
      1. Frameworks hosted by Hyperledger
      2. Tools hosted by Hyperledger
    2. HLF – features and qualifiers
      1. Why Hyperledger?
      2. Go/No–Go for a blockchain solution
    3. Architecture – conceptual view
      1. Building the blockchain network
        1. Chaincode and its stages
        2. Types of peers
      2. Evolving the network
        1. Physical realization of network configuration and channel configuration
        2. Ordering service
          1. Ordering nodes maintaining a consistent copy of network configuration
          2. A node's behavior when part of multiple channels
    4. Hyperledger architecture (layered view) and components
      1. Identity, security, and privacy
        1. Public key infrastructure
          1. Digital certificate
          2. Keys
          3. CAs
          4. CRL
        2. The membership service
        3. MSP
          1. Types of MSP
        4. Channel (privacy provider)
        5. PDC
          1. PDC – more privacy in channels
      2. Distributed ledger
        1. Nodes
          1. Peers
          2. Orderers and transaction process flow
        2. Ledger
        3. The world state database
      3. Chaincode
      4. Consensus everywhere
        1. Transaction flow
    5. Large object storage – on-chain or off-chain
      1. Rationale for on-chain/off-chain architecture
      2. Key design principles
        1. Integrated blockchain – an anchored document storage solution
        2. Storage option selection for blockchain applications
    6. Summary
  11. Engage in Business Case on Blockchain Platform
    1. Understanding the business scenario
      1. Introduction to the use case
        1. Criteria for use case qualification
        2. Blockchain solution benefits
    2. Designing the solution
      1. Business network topology
        1. Channel association
      2. Network artifacts
        1. Asset model
        2. Chaincode transactions
      3. Solution operational flow
      4. Solution architecture
        1. High–level architecture
      5. Deployment architecture
      6. Document storage – recommended approach with OBP
    3. Exploring OBP
      1. Overview of OBP's architecture
        1. Blockchain instance
      2. Setting up the OBP SDK
        1. Prerequisites
        2. Prepare the Docker environment
        3. Provisioning 
      3. Creating blockchain instance using the SDK
        1. Creating a founder instance in the OBP SDK
        2. Creating a participant instance in the OBP SDK
      4. Provisioning OBP on Oracle Cloud
        1. Creating a founder instance on Oracle Cloud
        2. Creating a participant instance on Oracle Cloud
    4. Features and components of OBP
      1. Dashboard
      2. Network topology
      3. Nodes topology
      4. Channels
      5. Chaincodes
      6. Developer tools
    5. Rich history database with OBP
      1. Create the ODCS connection string
        1. Fetching ODCS information
        2. Enabling port 1521 to access the database
        3. Creating a connection string
      2. Configuring the rich history database in OBP
      3. Enabling channels that write data to the rich history database
      4. Rich history database tables and columns
        1. History table
        2. State table
        3. Latest height table
    6. Summary
  12. Managing Solutions on Oracle Blockchain Platform
    1. Translating the network topology onto OBP 
      1. Creating network stakeholders with OBP instances
      2. Configuring the OBP network infrastructure
        1. Exporting/importing participant certificates
        2. Orderer configuration
      3. Configuring the OBP transaction infrastructure
        1. Channel setup
        2. Joining participant peers to a channel
          1. Founder node summary
          2. Participant (ors) node summary
          3. Participant (cvs) node summary
          4. Founder network summary
          5. Participant (ors) network summary
          6. Participant (cvs) network summary
    2. Adding smartness to the OBP network
      1. Developing chaincode to add smartness to the OBP network
      2. Exposing chaincode via REST proxy configuration
    3. REST Interface for OBP
    4. Summary
  13. Developing Solutions on Oracle Blockchain Platform
    1. Setting up chaincode development
      1. Choosing the language for development (GO, Node.js, or Java)
      2. Tools for OBP solution development
        1. Development environment
        2. Development tools
      3. Mapping the asset model
      4. Mapping operations
    2. Demystifying the craft of chaincode development
      1. Chaincode interfaces
      2. ChaincodeStubInterface
      3. Chaincode functions
      4. Developing chaincode
        1. Chaincode in Go
        2. Chaincode in Node.js
      5. Adding events to chaincode
        1. Publishing events
        2. Subscribing to events
        3. Unsubscribe from events
    3. Chaincode deployment
      1. Deploying chaincode
      2. Updating chaincode
      3. Endorsement policy
      4. Private data collection
    4. Testing chaincode
      1. Testing chaincode using the shim
      2. Testing chaincode from REST endpoints
      3. Chaincode logs
      4. Channel ledger
    5. Integrating client applications with blockchain
    6. Running an end-to-end flow
    7. Summary
  14. Other Books You May Enjoy
    1. Leave a review - let other readers know what you think
44.222.231.51