Permissioned Blockchains in Action
Mansoor Ahmed-Rengers, Marta Piekarska-Geater
  • MEAP began April 2020
  • Publication in Spring 2021 (estimated)
  • ISBN 9781617296802
  • 375 pages (estimated)
  • printed in black & white

Explains blockchain at a level that just about anybody interested in technology could understand.

Ron Lease
In a globally-connected world, business records need to be secure, trusted, and transparent. Permissioned blockchains make this possible through advanced cryptography and digital identity management, allowing all partners to independently verify key data-like transactions, inventory, and sources of material. Written by experienced blockchain architects Mansoor Ahmed-Rengers and Marta Piekarska-Geater, Permissioned Blockchains in Action is filled with insight, tips and tricks for building and deploying permissioned blockchain systems. You’ll learn vital developer skills for securing your blockchains against threats, writing smart contracts on permissioned blockchains, and picking the blockchain stack that’s best for your project.

About the Technology

In traditional business systems, ensuing fair play in data records falls to third-party auditors, regulators, and host services. Permissioned blockchains, also known as distributed ledger technologies (DLT), promise to change that. Using the immutable encoding of blockchain technology, permissioned blockchains get rid of expensive third party mediators and allow all actors to collaborate on a shared database without needing to trust each other. The potential applications of these immune-to-fraud electronic records are huge, including supply chain management, finances for charity spending, royalty payments, and high-level asset trading.

About the book

Permissioned Blockchains in Action is a tool-agnostic guide to creating innovative applications using blockchain technology. Expert authors Mansoor Ahmed-Rengers and Marta Piekarska-Geater share the insight they’ve gained deploying blockchain systems to production, including essential considerations for software maintenance and the unique security challenges of distributed apps. You’ll go from the why, to the what, to the how of permissioned blockchains, putting theory into practice to implement a simple calculator, a betting game with complete UI, and finally create your capstone project: a centrally banked digital currency. Complex theory and principles are illustrated throughout with byte-sized coding exercises and use cases inspired by the authors’ work in the field. By the time you’re done reading, you’ll be ready to take the plunge into modelling real-world relations as blockchain applications.
Table of Contents detailed table of contents

1 On Decentralization

1.1 Spectrum of Centralization

1.1.1 Nomenclature of Centralization in Computing

1.1.2 Subtleties of Distribution

1.2 Status Quo in Computing

1.2.1 Why Centralized Architectures Make Sense

1.2.2 What’s wrong with centralization anyway?

1.3 The Importance of Standardization and Open Source

1.3.1 Standards

1.3.2 Open Source

1.4 Duct-taping Our Problems

1.4.1 First Attempts

1.4.2 Mass adoption

1.5 Summary

2 Blockchain (r)Evolution

2.1 Trusted Third Parties

2.1.1 How Blockchain Works

2.1.2 Working for Trust

2.2 So, What Exactly Is a Blockchain?

2.2.1 What Is In the Block?

2.3 Where Public Blockchains Fall Short

2.3.1 Expensive consensus mechanisms

2.3.2 Low Throughput and High Latency

2.3.3 No Access Control

2.3.4 Lack of Data Privacy

2.4 Enterprise Enlightenment

2.4.1 More than Cryptocurrency

2.4.2 Flavors of DLT

2.4.3 Differentiating DLTs

2.5 DLT in Action

2.5.1 Why Distribute the Blockchain?

2.5.2 Why Not a DLT?

2.6 Summary

2.7 References and Further Reading

3 Prerequisites: Docker and Cryptography

3.1 The Theory Behind the Tools

3.1.1 Prerequisite 1: Using Docker

3.1.2 Prerequisite 2: Basic Cryptography

3.1.3 Cryptographic Hashes

3.2 Time to move!

3.2.1 Create a public key

3.3 Using Docker

3.3.1 The Dockerfile

3.3.2 Pulling Docker Images

3.3.3 Docker Compose

3.4 Summary

3.5 Reference:

4 Your First Smart Contract

4.1 A Broad Overview of DLTs

4.1.1 Current state of DLTs

4.2 A deeper look into smart contracts

4.2.1 Problem statement.

4.2.2 So how does it work?

4.2.3 DLT Transaction Flow

4.2.4 Is DLT just a modern database?

4.3 Exercise: add two numbers

4.3.1 Remix IDE

4.3.2 Your first smart contract

4.3.3 Simulating deployment

4.4 Summary

5 Single- and Multi-node Deployment

5.1 Various ways of achieving consensus

5.1.1 Byzantine Generals’ Problem

5.1.2 Understanding Byzantine Issues: Digital Signatures and Identity Management

5.1.3 Trade-off dimensions

5.1.4 Solutions: proof of limited resource

5.1.5 Solutions: PBFT and successors

5.1.6 Let’s talk about Nodes

5.2 Deploying a Network

5.2.1 Ganache: A single node blockchain “network”

5.2.2 Quorum: A true multi-node blockchain network

5.3 Summary

6 Transactions and Calls

6.1 The Theory behind Transactions

6.1.1 Crafting Transactions

6.1.2 A note about visibility

6.2 Types of Transactions

6.2.1 Contract Deployment

6.2.2 Contract function calls

6.2.3 Admin Calls

6.3 Node Identity Management

6.3.1 Pizzaensus

6.4 Exercise: Build a Card Game

6.4.1 Architecting the game

6.4.2 Solidity code

6.4.3 Validation using Remix

6.4.4 Learning opponents’ moves

6.4.5 Playing the Game on Quorum

6.4.6 Reading other nodes’ moves

6.5 Exercise: Altering Node Membership

6.5.1 Adding a node to an existing network

6.5.2 Removing a node from a network

6.6 Summary

7 Interacting With External Resources

7.1 There is a whole world outside

7.1.1 How does it look?

7.2 Lack of intrinsic triggers in smart contracts

7.2.1 Oracles to the rescue

7.3 Polishing the card game

7.3.1 Bolting on the UI

7.4 Introducing randomness

7.4.1 Randomness on a blockchain

7.4.2 Redesigning the betting game

7.4.3 Playing the game

7.4.4 Interfacing contracts and Events

7.4.5 Random number generator service

7.4.6 Troubleshooting UI Problems

7.5 Summary

8 Can the Blockchain Keep a Secret?

8.1 Blockchains and Privacy

8.1.1 Types of sensitive data

8.1.2 Mechanisms for Preserving Privacy

8.1.3 The Privacy and Transparency Spectrum

8.2 Increasing Transparency

8.2.1 Anchoring

8.2.2 Private Channels

8.3 Increasing Privacy

8.3.1 Zero-knowledge Proofs

8.3.2 Separate Blockchains using Hyperledger Fabric

8.4 Summary

9 Moving to Production

9.1 Identity Management

9.1.1 What is a Digital Identity?

9.2 Identity on a Blockchain

9.3 Business Case for Digital Identity

9.4 Many SSIs?

9.4.1 Hyperledger Indy/Aries/Ursa

9.4.2 uPort

9.5 Software updates

9.5.1 The difficulty with updates

9.5.2 Tokenization

9.5.3 Centralized, off-chain migration

9.5.4 Eternal storage contracts

9.5.5 Proxy smart contracts

9.6 Decentralizing upgrades

9.7 Summary

10 Real-World Deployments

11 How DLTs enable collaboration

12 Capstone Project: Building A Supply Chain Tracker

Appendixes

Appendix A: Best Practices

What's inside

  • Writing smart contracts and distributed applications using Solidity
  • Configuring DLT networks
  • Creating privacy mechanisms for distributed apps
  • Designing blockchain solutions for specific use cases
  • Utilizing oracles in distributed applications
  • Identity management in permissioned blockchains networks
  • A detailed comparison of existing permissioned blockchain frameworks

About the reader

For experienced software developers. No knowledge of blockchain required.

About the authors

Mansoor Ahmed-Rengers is a security researcher, currently pursuing his PhD on the security of blockchain technologies at the University of Cambridge. He is the author of five blockchain research papers, the inventor of the Robust Round Robin consensus algorithm, and holds two patents on managing blockchain data.

Marta Piekarska-Geater serves as the Director of Ecosystem at Hyperledger. Marta studied in Warsaw and Berlin, obtaining a double Masters and a PhD in Computer Science. In 2015 she drunk the Kool Aid and joined Blockstream. As part of her role in Hyperledger Marta evangelizes technology and Open Source at conferences around the world and helps enterprises with applying permissioned Blockchains to their use-cases. Marta also formed the W3C Blockchain community Group and is a valued member of ID2020, DIF, Sovrin Technical Governing Board, Cambridge Blockchain Society.

placing your order...

Don't refresh or navigate away from the page.
Manning Early Access Program (MEAP) Read chapters as they are written, get the finished eBook as soon as it’s ready, and receive the pBook long before it's in bookstores.
print book $29.99 $59.99 pBook + eBook + liveBook
Additional shipping charges may apply
Permissioned Blockchains in Action (print book) added to cart
continue shopping
go to cart

eBook $24.99 $47.99 3 formats + liveBook
Permissioned Blockchains in Action (eBook) added to cart
continue shopping
go to cart

Prices displayed in rupees will be charged in USD when you check out.

FREE domestic shipping on three or more pBooks