gluecon 2016 keynote: deploying and managing blockchain applications
TRANSCRIPT
![Page 1: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/1.jpg)
Overview of HyperledgerIntroduction to the Linux Foundation’s Hyperledger ProjectMay 2016
@duncanjw
![Page 2: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/2.jpg)
@duncanjw
21st Century Alchemy
Open Source
A seemingly magical process of transformation, creation, or combination …
![Page 3: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/3.jpg)
The Problem with Traditional Databases
@hyperledger
![Page 4: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/4.jpg)
The Problem with Traditional Databases
@hyperledger
![Page 5: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/5.jpg)
How Blockchain Solves This
@hyperledger
![Page 6: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/6.jpg)
Existing Blockchains
Limited Throughput
Slow Transaction
Confirmations
No Privacy Anonymous Processors
Designed for Cryptocurrency
Poor Governance
No Settlement Finality
@hyperledger
![Page 7: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/7.jpg)
Introducing Hyperledger
A collaborative effort created to advance blockchain technology by identifying and addressing important features for a cross-industry open standard for distributed ledgers
that can transform the way business transactions are conducted globally.
@hyperledger
![Page 8: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/8.jpg)
Project GoalsCreate an enterprise grade, open source distributed ledger framework and code base, upon which users can build and run robust, industry-specific applications, platforms and hardware systems to support business transactions.
Create an open source, technical community to benefit the ecosystem of Hyperledger solution providers and users, focused on blockchain and shared ledger use cases that will work across a variety of industry solutions.
Promote participation of leading members of the ecosystem, including developers, service and solution providers and end users.
Host the infrastructure for Hyperledger, establishing a neutral home for community infrastructure, meetings, events and collaborative discussions and providing structure around the business and technical governance of Hyperledger.
@hyperledger
![Page 9: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/9.jpg)
Modular Framework
Requirements for blockchains vary greatly across different use-cases, there will not be a one size fits all solution.
As such, Hyperledger is being designed to be highly modular, with pluggable options to suit different needs.
@hyperledger
![Page 10: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/10.jpg)
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:
@linuxfoundation
![Page 11: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/11.jpg)
Successful Launch
30members
>$6mfunding
2,300membership requests
5xmore requests than next largest in LF
history
14Additions
since
Wired - "Tech and Banking Giants Ditch Bitcoin for Their Own Blockchain"
Fortune - "IBM, J.P. Morgan, and Others Build a New Blockchain for Business"
Financial News - “Another day, another blockchain consortium update –this time from the Hyperledger Project”
International Business Times -- “Linux Foundation's Hyperledger Projecttrumpets code contributions from across 30 founder members”
@linuxfoundation
![Page 12: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/12.jpg)
![Page 13: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/13.jpg)
Project Team – 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
![Page 14: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/14.jpg)
Election Announcements
Blythe MastersCEO
Board Chair: TSC Chair: General Member Board Representatives:
Chris FerrisCTO Open Technology
Craig YoungCTO
Charles CascarillaCEO
@hyperledger
![Page 15: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/15.jpg)
Hyperledger Governing Board
KireetiReddy
Robert Palatnick
Santiago Suarez
StefanTeis
Todd McDonald
ToshiyaCho
Yoshinobu Sawano
Blythe Masters
Chad Cascarilla
ChrisFerris
CraigYoung
DavidTreat
DirkHohndel
JerryCuomo
@hyperledger
![Page 16: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/16.jpg)
Technical Steering Committee
Emmanuel Viale
MicBowman
Stanislav Liberman
Pardha Vishnumolakala
DaveVoell
StefanTeis
Richard G. Brown
Satoshi Oshima
Hart Montgomery
ChrisFerris
Tamás Blummer
@hyperledger
![Page 17: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/17.jpg)
Project Scope
Shared Ledger
Code execution environmentLedger data structures
Modular consensus frameworkModular identity services
Network peers
Core APIs
API libraries and GUIsSpecialized extensions
Specialized consensus algosMembership policies
GatewayOperations dashboard
Custom Applications
Value Added
Systems
App Layer
Out of scope
In-scope
@hyperledger
![Page 18: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/18.jpg)
@hyperledger
![Page 19: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/19.jpg)
6 Proposed Code contributions
@hyperledger
![Page 20: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/20.jpg)
60+ Developers Attended First HackathonJ.P. Morgan hosted the first Hyperledger hackathon, a 4 day event in Brooklyn, New York.
There were four focusses:● Whitepaper working group
○ Evolved the whitepaper from IBM’s● Requirements and Use Cases working group
○ Gathered financial and non-financial requirements
● Chaincode development group○ Created an example application in
Chaincode to emulates the exchange of shares
● Integration working group○ Focused on integrating the code proposals
from IBM, Digital Asset, and Blockstream
@hyperledger
![Page 21: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/21.jpg)
Successfully Demonstrated Integrated Codebase
By the end of the hackathon, the integration team successfully demonstrated a proof of concept showing different parts of three code bases communicating:
● Transaction Validation from Blockstream’s Elements Project● Implementing the UTXO model in IBM’s OBC Chaincode● Client communication with Digital Asset’s HLP-Candidate
The simple proof of concept showed the ability to retrieve the chain height and transactions from the blockchain, executing a transaction, and listening to an account to be notified of balance changes.
@hyperledger
![Page 22: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/22.jpg)
Two Projects Accepted into Incubation
hyperledger/fabric hyperledger/sawtooth-lake
“Proof of Elapsed Time”Consensus Algorithm
More potential contributions being discussed
https://github.com/hyperledger
@hyperledger
![Page 23: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/23.jpg)
Hyperledger DemoDeploying and managing a blockchain application with Cloudsoft AMPMay 2016
@duncanjw
![Page 24: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/24.jpg)
Membership
Smart Contract Systems Management
Events
Consensus Network
Wallet
Shared Ledgercontains 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 TerminologySource: Anthony O’Dowd, STSM IBM Blockchain Labs
![Page 25: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/25.jpg)
ValidatingNode B
Validating Node C
ValidatingNode A
ValidatingNode D
ValidatingNode 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- ValidatingNode
Chaincode
StateLogicChaincode
Chaincode
Chaincode
ValidatingNode X
ValidatingNode Y
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 initiate transactions 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 NetworkSource: Sharon Weed
![Page 26: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/26.jpg)
Demo – Asset Management
The asset management chaincode (asset_management.go) is a very simple chaincode 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 ca be invoked only by the owner ofasset;query(asset): Returns the identifier of the owner of asset
https:// https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go/asset_management
![Page 27: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/27.jpg)
![Page 28: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/28.jpg)
![Page 29: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/29.jpg)
Demo – Asset Management
In particular, we consider a scenario in which we have the following parties:
Alice is the chaincode deployerBob is the chaincode administratorCharlie and Bob are asset owners
that interact in the following way:
Alice deploys and assigns the administrator role to BobBob assigns the asset 'Picasso' to CharlieCharlie transfers the ownership of 'Picasso' to Dave
Women of Algiers - $179m
https:// https://github.com/hyperledger/fabric/tree/master/examples/chaincode/go/asset_management
@duncanjw
![Page 30: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/30.jpg)
Cloud Application Management Platform (AMP)
Runtime ManagementBlueprint Library Cloud Foundry
Integration
Blueprint Designer
Runtime VisualizationITSM
Target LocationsConfiguration Management
OperationsBilling & Metering
@duncanjw
![Page 31: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/31.jpg)
Topology
https://github.com/hyperledger/fabric/blob/master/docs/protocol-spec.md#222-multiple-validating-peers
@duncanjw
![Page 32: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/32.jpg)
Open Source
@duncanjw
![Page 33: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/33.jpg)
All locations are connected via fully meshed private network
![Page 34: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/34.jpg)
Too big to be owned by a single entity
@duncanjw
![Page 35: Gluecon 2016 Keynote: Deploying and Managing Blockchain Applications](https://reader035.vdocuments.site/reader035/viewer/2022062503/586f85621a28ab54768b50c3/html5/thumbnails/35.jpg)
More Information
hyperledger.orghyperledger.org/community
github.com/hyperledgergithub.com/hyperledger-incubator
developer.ibm.com/open/events/dw-open-tech-talk-open-blockchain/ github.com/cloudsoft/brooklyn-hyperledger
www.altoros.com/blog/technical-introduction-to-hyperledger-fabric/