Introducing Hyperledger
Blockchain technologies for business
Duncan Johnston-Watt, CEO, Cloudsoft
Defrag X, November 2016
@duncanjw
21st Century Alchemy
@duncanjw
Open Source
A seemingly magical process of transformation,
creation, or combination …
About The Linux Foundation
The Linux Foundation is the organization of choice for the world's top developers and companies to
build ecosystems that accelerate open technology development and commercial adoption. Together
with the worldwide open source community, it is solving the hardest technology problems by creating
the largest shared technology investment in history. Founded in 2000, The Linux Foundation today
provides tools, training and events to scale any open source project, which together deliver an
economic impact not achievable by any one company.
The Linux Foundation has 16 years experience of providing governance structure and infrastructure
to support the development of large scale, successful open source projects such as:
@hyperledger
Project Goals
Build an Open Source developer-focused community of communities to benefit an ecosystem of
Hyperledger-based solution providers and users, focused on blockchain-related use cases that will work
across a variety of industry sectors.
Through this, create a family of enterprise grade, open source blockchain frameworks, platforms, and
libraries, upon which anyone can build and run their own applications to meet real business needs.
Involve developers, service providers, solution providers and end users in the development and
promotion of the software, using the best practices of a multi-stakeholder Open Source community.
Host the collaboration environment for the community, establishing a neutral home for community
infrastructure, meetings, events and collaborative discussions and providing structure around the
business and technical governance of Hyperledger.
@hyperledger
Executive Director
Brian Behlendorf
Behlendorf was a primary developer of the Apache Web server,
the most popular web server software on the Internet, and a
founding member of the Apache Software Foundation. He has
also served on the board of the Mozilla Foundation since 2003
and the Electronic Frontier Foundation since 2013. He was the
founding CTO of CollabNet and CTO of the World Economic
Forum. Most recently, Behlendorf was a managing director at
Mithril Capital Management LLC, a global technology investment
firm.
@brianbehlendorf
Who Supports Hyperledger?
There will not be only one blockchain, or a chain-of-all-chains.
There will be many public chains and millions of private chains, potentially each
with a different consensus mechanism, preferred smart contract
language/mechanism, and other characteristics.
The more common code underlying these chains, the better for everyone.
This is still early days – perhaps like 1994 and the Web?
A World of Many Chains
@hyperledger
The Problem with the Traditional Approach
@hyperledger
How Blockchain Solves This
@hyperledger
Status
This project is in Incubation
Description
Fabric is an implementation of blockchain technology, leveraging familiar and proven
technologies. It is a modular architecture allowing pluggable implementations of various
functions. It features powerful container technology to host any mainstream language for
smart contracts development.
Key Characteristics
Permissioned network, core written in Go, chaincode in Go or Java.
https://wiki.hyperledger.org/projects/fabric.md
Hyperledger Fabric
@hyperledger
Hyperledger Demo
Deploying & Managing a Global Blockchain Network
Mike Zaccardo, Senior Engineer, Cloudsoft
Defrag X, November 2016
@itsMeMikeZ
Leading hybrid cloud application management company
Model, deploy and manage any application on any cloud or across many clouds
Team across Europe, North America and Asia-Pacific
Headquarters in Edinburgh, UK
Founder of Apache Brooklyn open source project
Foundation of Cloudsoft Application Management Platform (AMP)
Autonomic computing pioneer
Closed loop management
Cloudsoft
@cloudsoft
MODEL DEPLOY MANAGE
INSTANTIATE SENSE EFFECT
Capture Best Practices Dynamic Live Model Maintain SLAs
My Model
Apache Tomcat
MySQL
Load Balancer
Cloudsoft Application Management Platform (AMP)
@cloudsoft
Membership
Smart Contract Systems Management
Events
Consensus Network Wallet
Shared Ledger
contains the current world state of the ledger and
a Blockchain of transaction invocations
encapsulates business network transactions in
code. transaction invocations result in gets and
sets of ledger state
a collection of network data and processing peers
forming a Blockchain network. Responsible for
maintaining a consistently replicated ledger
manages identity and transaction certificates, as
well as other aspects of permissioned access
creates notifications of significant operations on the Blockchain
(e.g. a new block), as well as notifications related to smart
contracts. Does not include event distribution.
provides the ability to create, change and monitor Blockchain
components
securely manages a user’s security credentials
responsible for integrating Blockchain bi-directionally with
external systems. Not part of Blockchain, but used with it.
Systems Integration
Technical Terminology
Source: Anthony O’Dowd,STSM IBM Blockchain Labs
Validating
Node B
Validating Node C
Validating
Node A
Validating
Node D
Validating
Node E Blockchain Network A chain network that services
solutions built for a particular industry.
Shared Ledger: Records all transactions across business network
Consensus: Transaction validation & commitment
Non- Validating
Node
Chaincode
StateLogic
Chaincode
Chaincode
Chaincode
Proprietor(s) setup and define the
purpose of a chain network. They are the
stakeholders of a network.
Auditors(s): Individuals or organizations
with the permission to interrogate
transactions and the blockchain network.
Solution Users: end users typically initiatetransactions
on a chain network through applications made available
by solutions providers.
Non-Validating node: Constructs
transactions and forwards them to
validating nodes. Peer nodes keep
a copy of all transaction records
so that solution providers can
query them locally.
Solution Provider: Organizations that
develop mobile/web applications for
solution users to access chain networks.,
they own either NV or Validating node.
Public transactions:
transactions with its
payload in the clear
Membership Service (PKI)
ECA TCA TLS-CAReg. A
Registration Authority: Assigns registration username & registration password pairs to network
participants. This username/password pair will be used to acquire enrollment certificate from ECA.
Enrollment CA (ECA): Issues enrollment certificates (ECert) to network participants that have already
registered with a membership service. ECerts are long term certificates used to identify individual entities
participating in one or more networks.
Transaction CA (TCA): Issues transaction certificates (TCerts) to ECert owners. An infinite number of
TCerts can be derived from each ECert. TCerts are used by network participants to send transactions.
TLS CA: Issues TLS certificates to systems that transmit messages in a chain network. TLS certificates are
used to secure the communication channel between systems.
Chaincode (Smart Contract): Application
logics stored and executed on the blockchain.
Chaincode State: Chaincodes access
internal state storage through state APIs.
States are created and updated by
transactions calling chaincode functions with
state accessing logic.
Confidential transactions:
transactions where its payload is
encrypted and is only visible to
stakeholders of this transaction
Confidential chaincode:
chaincodes that only pre-defined
subset of validators can view and
execute
The Blockchain Network
Source: Sharon Weed @hyperledger
Interaction with the Blockchain Network
https://github.com/hyperledger/fabric/blob/master/docs/protocol-spec.md#222-multiple-validating-peers
@hyperledger
Runtime
Management
Blueprint
Library
Cloud Foundry
Integration
Blueprint
Designer
Runtime
Visualization
ITSM
Target
Locations
Configuration
Management
Operations
Billing &
Metering
@cloudsoft
Deploying the Blockchain Network
Hugely successful Sotheby’s auction
Every lot exceeds its reserve price and is sold on the night
The collection is split up and acquired by three art collectors
Charlie, Dave and Edwina who are tech savvy and want to loan each other works
Sotheby’s sets up a secure private asset management system
Alice deploys chaincode and makes Bob the administrator
Sotherby’s initializes asset management system
Bob loads auction results – ensuring each lot is allocated to correct collector
Demo – Scenario
@itsMeMikeZ
Demo – Asset Management
The asset management chaincode is a simple example designed to show how to exercise
access control at the chaincode level as described in this document:
https://github.com/hyperledger/fabric/blob/master/docs/tech/application-ACL.md
The chaincode exposes the following functions:
init(user): Initialize the chaincode assigning to user the role of administrator
assign(asset, user): Assigns the ownership of asset to user. Notice that, this function can be
invoked only by an administrator
transfer(asset, user): Transfer the ownership of asset to user. Notice that this function can
be invoked only by the owner of asset
query(asset): Returns the identifier of the owner of asset
https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go/asset_management
@itsMeMikeZ
Demo
@itsMeMikeZ
@hyperledger
@cloudsoft
@hyperledger
Too big to be owned by a single entity
@duncanjw
More Information
https://www.hyperledger.org
https://wiki.hyperledger.org
http://www.cloudsoft.io/gethlf
http://www.blockchainforwallstreet.com
https://www.ibm.com/marketplace
@hyperledger

Defrag X Keynote: Deploying and managing Global Blockchain Network

  • 1.
    Introducing Hyperledger Blockchain technologiesfor business Duncan Johnston-Watt, CEO, Cloudsoft Defrag X, November 2016 @duncanjw
  • 2.
    21st Century Alchemy @duncanjw OpenSource A seemingly magical process of transformation, creation, or combination …
  • 3.
    About The LinuxFoundation The Linux Foundation is the organization of choice for the world's top developers and companies to build ecosystems that accelerate open technology development and commercial adoption. Together with the worldwide open source community, it is solving the hardest technology problems by creating the largest shared technology investment in history. Founded in 2000, The Linux Foundation today provides tools, training and events to scale any open source project, which together deliver an economic impact not achievable by any one company. The Linux Foundation has 16 years experience of providing governance structure and infrastructure to support the development of large scale, successful open source projects such as: @hyperledger
  • 4.
    Project Goals Build anOpen Source developer-focused community of communities to benefit an ecosystem of Hyperledger-based solution providers and users, focused on blockchain-related use cases that will work across a variety of industry sectors. Through this, create a family of enterprise grade, open source blockchain frameworks, platforms, and libraries, upon which anyone can build and run their own applications to meet real business needs. Involve developers, service providers, solution providers and end users in the development and promotion of the software, using the best practices of a multi-stakeholder Open Source community. Host the collaboration environment for the community, establishing a neutral home for community infrastructure, meetings, events and collaborative discussions and providing structure around the business and technical governance of Hyperledger. @hyperledger
  • 5.
    Executive Director Brian Behlendorf Behlendorfwas a primary developer of the Apache Web server, the most popular web server software on the Internet, and a founding member of the Apache Software Foundation. He has also served on the board of the Mozilla Foundation since 2003 and the Electronic Frontier Foundation since 2013. He was the founding CTO of CollabNet and CTO of the World Economic Forum. Most recently, Behlendorf was a managing director at Mithril Capital Management LLC, a global technology investment firm. @brianbehlendorf
  • 6.
  • 7.
    There will notbe only one blockchain, or a chain-of-all-chains. There will be many public chains and millions of private chains, potentially each with a different consensus mechanism, preferred smart contract language/mechanism, and other characteristics. The more common code underlying these chains, the better for everyone. This is still early days – perhaps like 1994 and the Web? A World of Many Chains @hyperledger
  • 8.
    The Problem withthe Traditional Approach @hyperledger
  • 9.
    How Blockchain SolvesThis @hyperledger
  • 10.
    Status This project isin Incubation Description Fabric is an implementation of blockchain technology, leveraging familiar and proven technologies. It is a modular architecture allowing pluggable implementations of various functions. It features powerful container technology to host any mainstream language for smart contracts development. Key Characteristics Permissioned network, core written in Go, chaincode in Go or Java. https://wiki.hyperledger.org/projects/fabric.md Hyperledger Fabric @hyperledger
  • 11.
    Hyperledger Demo Deploying &Managing a Global Blockchain Network Mike Zaccardo, Senior Engineer, Cloudsoft Defrag X, November 2016 @itsMeMikeZ
  • 12.
    Leading hybrid cloudapplication management company Model, deploy and manage any application on any cloud or across many clouds Team across Europe, North America and Asia-Pacific Headquarters in Edinburgh, UK Founder of Apache Brooklyn open source project Foundation of Cloudsoft Application Management Platform (AMP) Autonomic computing pioneer Closed loop management Cloudsoft @cloudsoft
  • 13.
    MODEL DEPLOY MANAGE INSTANTIATESENSE EFFECT Capture Best Practices Dynamic Live Model Maintain SLAs My Model Apache Tomcat MySQL Load Balancer Cloudsoft Application Management Platform (AMP) @cloudsoft
  • 14.
    Membership Smart Contract SystemsManagement Events Consensus Network Wallet Shared Ledger contains the current world state of the ledger and a Blockchain of transaction invocations encapsulates business network transactions in code. transaction invocations result in gets and sets of ledger state a collection of network data and processing peers forming a Blockchain network. Responsible for maintaining a consistently replicated ledger manages identity and transaction certificates, as well as other aspects of permissioned access creates notifications of significant operations on the Blockchain (e.g. a new block), as well as notifications related to smart contracts. Does not include event distribution. provides the ability to create, change and monitor Blockchain components securely manages a user’s security credentials responsible for integrating Blockchain bi-directionally with external systems. Not part of Blockchain, but used with it. Systems Integration Technical Terminology Source: Anthony O’Dowd,STSM IBM Blockchain Labs
  • 15.
    Validating Node B Validating NodeC Validating Node A Validating Node D Validating Node E Blockchain Network A chain network that services solutions built for a particular industry. Shared Ledger: Records all transactions across business network Consensus: Transaction validation & commitment Non- Validating Node Chaincode StateLogic Chaincode Chaincode Chaincode Proprietor(s) setup and define the purpose of a chain network. They are the stakeholders of a network. Auditors(s): Individuals or organizations with the permission to interrogate transactions and the blockchain network. Solution Users: end users typically initiatetransactions on a chain network through applications made available by solutions providers. Non-Validating node: Constructs transactions and forwards them to validating nodes. Peer nodes keep a copy of all transaction records so that solution providers can query them locally. Solution Provider: Organizations that develop mobile/web applications for solution users to access chain networks., they own either NV or Validating node. Public transactions: transactions with its payload in the clear Membership Service (PKI) ECA TCA TLS-CAReg. A Registration Authority: Assigns registration username & registration password pairs to network participants. This username/password pair will be used to acquire enrollment certificate from ECA. Enrollment CA (ECA): Issues enrollment certificates (ECert) to network participants that have already registered with a membership service. ECerts are long term certificates used to identify individual entities participating in one or more networks. Transaction CA (TCA): Issues transaction certificates (TCerts) to ECert owners. An infinite number of TCerts can be derived from each ECert. TCerts are used by network participants to send transactions. TLS CA: Issues TLS certificates to systems that transmit messages in a chain network. TLS certificates are used to secure the communication channel between systems. Chaincode (Smart Contract): Application logics stored and executed on the blockchain. Chaincode State: Chaincodes access internal state storage through state APIs. States are created and updated by transactions calling chaincode functions with state accessing logic. Confidential transactions: transactions where its payload is encrypted and is only visible to stakeholders of this transaction Confidential chaincode: chaincodes that only pre-defined subset of validators can view and execute The Blockchain Network Source: Sharon Weed @hyperledger
  • 16.
    Interaction with theBlockchain Network https://github.com/hyperledger/fabric/blob/master/docs/protocol-spec.md#222-multiple-validating-peers @hyperledger
  • 17.
  • 19.
    Hugely successful Sotheby’sauction Every lot exceeds its reserve price and is sold on the night The collection is split up and acquired by three art collectors Charlie, Dave and Edwina who are tech savvy and want to loan each other works Sotheby’s sets up a secure private asset management system Alice deploys chaincode and makes Bob the administrator Sotherby’s initializes asset management system Bob loads auction results – ensuring each lot is allocated to correct collector Demo – Scenario @itsMeMikeZ
  • 20.
    Demo – AssetManagement The asset management chaincode is a simple example designed to show how to exercise access control at the chaincode level as described in this document: https://github.com/hyperledger/fabric/blob/master/docs/tech/application-ACL.md The chaincode exposes the following functions: init(user): Initialize the chaincode assigning to user the role of administrator assign(asset, user): Assigns the ownership of asset to user. Notice that, this function can be invoked only by an administrator transfer(asset, user): Transfer the ownership of asset to user. Notice that this function can be invoked only by the owner of asset query(asset): Returns the identifier of the owner of asset https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go/asset_management @itsMeMikeZ
  • 21.
  • 22.
  • 23.
  • 24.
    Too big tobe owned by a single entity @duncanjw
  • 25.

Editor's Notes

  • #10 Chris: blockchain creates ability for multiple competing parties to securely interact with the same universal source of truth Business Networks benefit from connectivity Connected customers, suppliers, banks, partners Cross geography & regulatory boundary Wealth is generated by flow of goods & services across business network Markets are central to this process: Public (fruit market, car auction), or Private (supply chain financing, bonds) Participants - members of a business network Customer, Supplier, Government, Regulator Have specific identities and roles Transaction - an asset transfer John gives a car to Anthony (simple) Contract - conditions for transaction to occur Records all transactions across business network Shared between participants Participants have own copy through replication Permissioned, so participants see only appropriate transactions THE shared system of record
  • #15 IBM’s Open Blockchain Making Blockchain Real for Enterprises Anthony O’Dowd, STSM IBM Blockchain Labs
  • #16 Provided by Sharon Weed
  • #22 blockchain4wallst
  • #25 blockchain4wallst