2. MEETUP #4 avec le
et un grand merci à l’INRIA Sophia-Antipolis pour son
accueil
sujet:
Blockchain, Hyperledger et IBM Bluemix
2
2
3. Agenda
• 18h30 : Présentation du Meetup
par Dominique Hok, IBM France Lab et Stéphane Epardaud, Riviera JUG
• 18h33 : Introduction au PaaS IBM Bluemix
par Arlémi Turpault, IBM Developer Advocate Digital Business Group.
• 19h53 : L’interêt de la Blockchain pour les entreprises et les institutions.
par Gérard Richter, IBM Cloud Consultant, Business Development & ISV,
Innovation Center Nice.
• 19h15:développement Blockchain sur Hyperledger et démo d’ une
application Bluemix d’ échange de contrats.
par Benjamin Fuentes, IBM Architect Ecosystem Developers and Startups,
Bluemix & Blockchain Advocate, Business Solution Center Nice.
• 19h55 : Q&A et discussions autour d’ un verre.
• 20h30 : Fin
3
3
4. Agenda
• 18h30 : Présentation du Meetup
par Dominique Hok, IBM France Lab et Stéphane Epardaud, Riviera JUG
• 18h33 : Introduction au PaaS IBM Bluemix
par Arlémi Turpault, IBM Developer Advocate Digital Business Group.
• 19h53 : L’interêt de la Blockchain pour les entreprises et les institutions.
par Gérard Richter, IBM Cloud Consultant, Business Development & ISV,
Innovation Center Nice.
• 19h15:développement Blockchain sur Hyperledger et démo d’ une
application Bluemix d’ échange de contrats.
par Benjamin Fuentes, IBM Architect Ecosystem Developers and Startups,
Bluemix & Blockchain Advocate, Business Solution Center Nice.
• 19h55 : Q&A et discussions autour d’ un verre.
• 20h30 : Fin
4
4
5. What’s that and what can it do for me?
Arlemi Turpault, Developer Advocate
March, 2017
@arlemi
IBM Bluemix
8. Build, run, scale, manage… in the cloud
Developer Experience
§ Rapidly deploy and scale apps
§ Compose your apps quickly with useful
APIs and Services
§ Avoid tedious backend configuration
8
Enterprise Capability
§Securely integrate with your on-prem
systems and data
§Manage your app lifecyclewith DevOps
§Develop and deploy on a platform built
on a foundation of open tech
9. Developer focus on what matters most: the app
9
Networking
Storage
Servers
Virtualization
O/S
Middleware
Runtime
Data
Applications
Traditional On-Premises
Networking
Storage
Servers
Virtualization
O/S
Middleware
Runtime
Data
Applications
Platform as a Service
Networking
Storage
Servers
Virtualization
O/S
Middleware
Runtime
Data
Applications
Software as a Service
Networking
Storage
Servers
Virtualization
Middleware
Runtime
Data
Applications
Infrastructure as a Service
O/S
Vendor Manages in CloudClient Manages
Standardization; OPEX savings; faster time to value
Customization; higher costs; slower time to value
14. Bluemix CloudFoundry Architecture
§ When deploying an app, the Bluemix
environment determines an
appropriate virtual server based on:
– The load already there
– Runtimes or framework supported
§ Each execution environment is isolated
from the exec environment of other
apps
§ Source:
https://console.ng.bluemix.net/docs/ov
erview/whatisbluemix.html#architectur
e
14
16. Agenda
• 18h30 : Présentation du Meetup
par Dominique Hok, IBM France Lab et Stéphane Epardaud, Riviera JUG
• 18h33 : Introduction au PaaS IBM Bluemix
par Arlémi Turpault, IBM Developer Advocate Digital Business Group.
• 19h53 : L’interêt de la Blockchain pour les entreprises et les institutions.
par Gérard Richter, IBM Cloud Consultant, Business Development & ISV,
Innovation Center Nice.
• 19h15:développement Blockchain sur Hyperledger et démo d’ une
application Bluemix d’ échange de contrats.
par Benjamin Fuentes, IBM Architect Ecosystem Developers and Startups,
Bluemix & Blockchain Advocate, Business Solution Center Nice.
• 19h55 : Q&A et discussions autour d’ un verre.
• 20h30 : Fin
1
16
20. Blockchain underpins Bitcoin but the technology is
applicable to a whole range of business processes
20
Industries are interested in BLOCKCHAIN … not in
CRYPTOCURRENCIES
21. What is a Blockchain network?
21
A set of nodes …
... running a p2p
CONSENSUS protocol ...
... to maintain a common
record of transactions:
the BLOCKCHAIN
24. What can you store as a Transaction in a Blockchain?
24
Transaction
Blockchain
Example
Traditional
Business
On platform
Asset
Cash
Cryptocurrency
Commercial
Bank
Off platform
Asset
Diamonds
Properties
Vehicles
Custodian
Bank
Smart
Contract
Insurance
Supply chain
Clearing
House
26. Business networks, wealth & markets
26
o Business Networks benefit from connectivity
• Participants are customers, suppliers,
banks, partners
• Cross geography & regulatory boundary
o Wealth is generated by the flow of goods &
services across business network
o Markets are central to this process:
• Public (fruit market, car auction), or
• Private (supply chain financing, bonds))
o The easier it is to conducttransactions, the
more people transact
27. Many business transactions remain inefficient,
expensive and vulnerable
27
Time
Many business transactions:
§ are time sensitive
§ require much settlement and
reconciliation time
§ are process-delay prone
Cost
Many business transactions:
§ include overheads from
multiple intermediaries
§ are costly to manage
and execute
§ require extensive
documentation
Risk
Many business transactions:
§ are ambiguous and
non-verifiable
§ are prone to errors and
tampering
§ have no single source of
truth
Source: IBM Institute for Business Value analysis
28. Adoption patterns: we expect Blockchain to
fundamentally change how we do business
28
A new science
of organizations
Codifications of contracts,
compliance and certifications
will redefine how trust is
embodied in business
transactions
Efficient and accessible
market-places built on
blockchains will accelerate
the exchange of value and
flow of wealth
The tightening
of trust
A new nexus for
value exchange
Highly efficient
distributed business
networks will
challenge our notions
of traditional
enterprise
management
29. Full transformation value kicks in when a variety of
industries and activities come together
29
Limited value within the boundaries
of a single organization
Ecosystem participants have to
agree on a standard
30. Typical use cases
30
Vertical Use cases
Financial
Services
• Cross-border remittances
• Enabling peer-to-peer transactions
• Record keeping / Client audits (including KYC and AML
registries)
• Security trading and settlement
• Equity swaps
• Regulatory reporting
• Insurance claim management
• Insurance smart contracts
Healthcare/
Life
Sciences
• Universal health records (Sharing and permission of
healthcare records to improve payment systems and
who has access to confidential data)
• Health record notarization and audit
• Regulatory compliance
• Clinical trial records
Gov. / Legal • Digital Identity Management
• Notary services which certify existence/proof of
ownership
• Title Management
• Smart contracts
• Land registries and other asset transfers
• Digital Voting
• Escrow custodian services
Consumer/
Retail
• Secure transactions
• Tracking the provenance, demand and inventory data of
goods
Vertical Use cases
Energy &
Utilities
• Trading surplus energy
• Digital renewable energy credits
• IoT data infrastructure
Chemical&
Petroleum
• Oil & gas and emissions commodity trading
• Supply chain/ logistics/ shipping/ procurement
• Joint venture data and accounting
• Settlements
• Land royalty
• Asset management life cycle
M & E • Marketplace for sales and purchase of digital assets
• Proof of ownership for digital content & storage
delivery
• Royalty distribution and licensing platform
• Copyright management
Telco • Mobile payments (including peer to peer)
• Settlement and clearing
• IoT transactions
• Identity fraud and management
• Improving OSS and BSS processes (such as eSIM
provisioning and number portability database)
Manufact-
uring
• Supply chain tracking (tracking the provenance of all
components and enabling service/maintenance)
• Connected factories
• Enabling microservices in connected products,
including connected cars
32. Linux Foundation’s Hyperledger Project
32
– Linux Foundation project announced December
17, 2015 with 17 founders, now 81 members
– The Hyperledger Project is a collaborative effort
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
– Open source and open standards-based
Enable adoption of shared ledger technology at
a pace and depth not achievable by any one company or industry
QUICK FACTS
Chairman Blythe Masters/DAH
Executive
Director
Brian Behlendorf
Technical Chair Chris Ferris/IBM
Contribution
44,000 lines of code
in February 2016
Sprint to one
codebase with
unified thinking
Target 3Q release
www.Hyperledger.org
35. Blockchain network abstract model
35
Node
P2P
Protocol
Transaction
level
Consensus
Protocol
Proof of Work
Bitcoin Hyperledger
Pluggable
PBFT (Default)
Transfer of bitcoin Chaincode
(Programmable)
Simple broadcast
network over TCP
GoogleRPC
Network level connectivity
Node onboarding / leaving
Message forwarding
Transaction structure
Rules to validate transactions
Blockchain
Agree on state
36. A Blockchain Application with Hyperledger
36
Peer
Chaincode
Peer
Chaincode
Peer
Chaincode
Peer
Chaincode
Blockchain
Application
SDK
Node.js
Membership
Service
To be
developed
Hyperledger
38. Transactions and Chaincode in Hyperledger
38
Chaincode
Func Invoke()
Peer
Transaction
Invoke (param)
Signed by user
State
Forwarded to
Updates
state
Invokes
Chaincode
functions
Stored in the
blockchain
39. Roles in a Blockchain Network
39
End User
Transacts
Regulator
Auditing
Oversight
Legacy
Enterprise
Systems
Interacts with
Certificate
Authority
Get
Certificates
Blockchain
Developer
Creates application
and chaincode
Blockchain
Network Operator
Manages
Blockchain
Network
41. IBM Blockchain for business
41
Community + Code
Linux Hyperledger Project
Open Source Code: Blockchain for business
Consensus | Provenance
Immutability | Finality
Open Governance – 80 member cross industry board
Cloud
IBM Blockchain
Blockchain managed service on IBM Cloud and z Systems
Identity | Consensus | System Integration |
Hardware-assist for Performance & Security
IBM Blockchain on Bluemix
Clients
Blockchain Solutions
Blockchain Garage
Making Blockchain real for business
Blockchain Garage;
New York | London | Singapore | Tokyo
Blockchain Services Practice
42. Agenda
• 18h30 : Présentation du Meetup
par Dominique Hok, IBM France Lab et Stéphane Epardaud, Riviera JUG
• 18h33 : Introduction au PaaS IBM Bluemix
par Arlémi Turpault, IBM Developer Advocate Digital Business Group.
• 19h53 : L’interêt de la Blockchain pour les entreprises et les institutions.
par Gérard Richter, IBM Cloud Consultant, Business Development & ISV,
Innovation Center Nice.
• 19h15:développement Blockchain sur Hyperledger et démo d’ une
application Bluemix d’ échange de biens ( CAR LEASE ).
par Benjamin Fuentes, IBM Architect Ecosystem Developers and Startups,
Bluemix & Blockchain Advocate, Business Solution Center Nice.
• 19h55 : Q&A et discussions autour d’ un verre.
• 20h30 : Fin
4
42
45. @benji_fuentes
Blockchain - Introduction
A blockchain is a distributed database,
introduced by Bitcoin (2008) on Satoshi Nakamoto’s
white paper, that maintains a continuously-
growing list of data records that each refer
to previous items on this list and is thus
hardened against tampering and revision
Distributed systems answer to a problem called
Byzantine Generals’ Problem described by Leslie
Lamport (1982)
As today, blockchains can be use to write distributed
applications named “smart contract” or “chaincode”
Mesopotamian
ledger
Byzantine Generals’
Problem
46. @benji_fuentes
Blockchain - Hyperledger
Hyperledger (or Hyperledger project) is a cross-
industry collaborative effort to create blockchain-based
open standard for distributed ledgers for globally
conducted business transactions under the Linux
Foundation
The project aims to create an open-standard,
public, decentralised public ledger based on
blockchain technology to advance worldwide
business transaction processing in terms of cost-
effectiveness, speed and traceability
More than 100 members
Fabric
Sawtooth Lake
47. @benji_fuentes
Blockchain -
Blockchain as a Service (on Bluemix Cloud)
IBM is the only provider that gives you access to a
permissioned Blockchain as a Service on its catalog of
services
49. @benji_fuentes
Fabric - Actors
The business user, operating in a business network. This role interacts with the Blockchain
using an application. They are not aware of the Blockchain.
The overall authority in a business network. Specifically, regulators may require broad access to
the ledger’s contents.
The developer of applications and smart contracts that interact with the Blockchain and are
used by Blockchain users.
Defines, creates, manages and monitors the Blockchain network. Each business in the network
has a Blockchain Network operator.
Manages the different types of certificates required to run a permissioned Blockchain.
An existing computer systemwhich may be used by the Blockchain to augment processing. This
system may also need to initiate requests into the Blockchain.
An existing data system which may provide data to influence the behavior of smart contracts.
Blockchain
User
Blockchain
Developer
Certificate
Authority
Blockchain
Regulator
Traditional
Processing
Platform
Traditional
Data
Sources
Blockchain
Network
Operator
U
R
D
O
ü
50. @benji_fuentes
Fabric - Components
Membership
Smart Contract
Systems
Management
Events
Consensus
Network
Wallet
Ledger Contains the current World State of the ledger and a Blockchain of transaction
invocations
f(abc); Encapsulates business network transactions into logic code. Transaction invocations result in
gets and sets of ledger state
…
E T
A collection of network data and processing peers forming a Blockchain network.
Responsible for maintaining a consistentlyreplicated 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
i
Responsible for integrating Blockchain bi-directionally with external systems.
Not part of Blockchain, but used with it.
Systems
Integration
51. @benji_fuentes
Fabric - Interactions
Protocols :
•SDK : use gRPC to communicate with a blockchain
peer or Certificate Authority. Maintain the user’s key
wallet
•HTTP API : use HTTP (will be deprecated in V1.0)
Functional interaction methods:
•DEPLOY* : to deploy a chaincode
•QUERY : to retrieve data from World State
•INVOKE* : to call a chaincode method creating a
transaction
membership
keys
Consensus
Ledger
Events
Chaincode
state
peer
SDK
ECA, TCA, TLS-CA
API
Blockchain
network
(* Creates a block on the chain)
52. @benji_fuentes
Fabric - Architecture
1.Blockchain developer codes
Application and Smart Contract
2.He deploys the app on a server
and smart contract on a peer
using DEPLOY
3.A registered user interacts with
the app sending order
(INVOKE) or retrieving
information (QUERY)
throught the smart contract
4.Smart contract can emit an
event susbcribed by the app World/Ledger
State
Blockchain
Genesis
Block
…
Blockchain
developer
Smart
Contra
ct
Invokes/queries
on a smart contract
Develops
Application
D
SDK HTTP
txn txn txn txn txn
Block
n
PEER
develops, then deploys
emits
PutState/GetState
U
Blockchain
developer
Interacts
53. @benji_fuentes
Think distributed and deterministic !!!
Get resources from external systems
peer
Blockchain
network
peer
peer
Ext system
Put resources to external systems
peer
Blockchain
network
peer
peer
Ext system
t1
t3
t2 1 call
1 call
1 call
54. @benji_fuentes
Next coming on V1.0 (March 2017?)
• Endorsement/consensus model
• Plugging external identity server
• Plugging external State DB
• Historical queries
• HTTP API deprecated, use SDK
• Chaincode upgrades
55. @benji_fuentes
Fabric V1.0 - Endorsement/Consensus model
Peer role has been split :
• Committer peer : commits
transactions, maintainsledger and state
• Endorsing peer: receives a transaction
proposal for endorsement, responds
granting or denying endorsement
• Ordering peer: approves the inclusion
of transaction blocks into the ledger and
communicates with peer and endorsing
peer nodes
Also a peer can now communicate via
private channels inside the network to
strenghten privacy
Different configuration options
for the ordering service include:
– SOLO
• Single node for
development
– Kafka / Zookeeper
• 1:n nodes providing Crash
Fault Tolerance
• Odd number of nodes
recommended
– SBFT (future)
• 1:n nodes providing Byzantine
Fault Tolerance
Ordering-Service
OO
O O
E C
Peer types
oror
56. @benji_fuentes
Fabric V1.0 - Identity server
New Identity server (COP)
•make as pluggable as possible
•make it decentralized
•default implementation : CloudFlare's
PKI/TLS toolkit
•can be configured to read from an LDAP
server
•Developed in GO
•CLI commands for server and client
57. @benji_fuentes
Fabric V1.0 - External World State DB
•Key/value database (LevelDB)
•Document JSON database (CouchDB)
•SQL data stores (future?)
• requires schema definition
• difficult to change schema
CouchDB
Chaincod
e
APIs
LevelDB
Worldstate
58. @benji_fuentes
Fabric V1.0 - Historical queries
Simple use case :
• Show history of values for an asset X
Rich queries :
• Show value of an asset at a certain point
in time
• Show all assets having same field value
through history (example : owned by a
specific owner)
tt-1t-2
59. @benji_fuentes
Fabric V1.0 - HTTP deprecated, use SDK
•Do not use HTTP API anymore
•Use SDK over gRPC :
•Java
•NodeJs
•Python
60. @benji_fuentes
Fabric V1.0 - Chaincode upgrades
• New command UPGRADE to use
instead of redeploying another chaincode
• Chaincode will contain version number
…
Smart
Contra
ct
txn txn txn txn
Smart
Contra
ct
Application
SDK HTTP
UPGRADE
Version N+1Version N
World/Ledger
State
66. Pour vous former
Formation en ligne gratuite
• “Déployez des applications dans le cloud
avec Bluemix”
http://ibm.biz/BluemixMOOC
• “Utilisez des API Rest dans vos projets
WEB”
http://ibm.biz/BluemixMOOC_API_REST
Webinars Bluemix
Suivez un des nombreux webinars
Bluemix (Replays disponibles)
http://ibm.biz/BluemixWebinarsFR
Communauté Dev
Bluemix
Consultez le blog avec toutes les actualités
et posez toutes vos questions sur
Stackoverflow
http://ibm.biz/BluemixDeveloperCommunity
Developpez.com
Suivez la nouvelle Rubrique dédiée à IBM
Bluemix sur Developpez.com avec les
actualités et les publications
https://ibm.biz/bluemix-developpez-com
66