IBM Blockchain Experience - Suwat - 20161027
-
Upload
ibm-thailand-co-ltd -
Category
Technology
-
view
298 -
download
0
Transcript of IBM Blockchain Experience - Suwat - 20161027
1© 2016 IBM Corporation |© 2016 IBM Corporation
Blockchain Experiences
Suwat Hongwiwat, Banking Client Technology Architect, IBM Thailand
3© 2016 IBM Corporation |
“Blockchain is a peer-to-peer distributed ledger technology for a new generation of transactional applications that establishes trust, accountability and transparency while streamlining business processes”
4© 2016 IBM Corporation |
There are many Blockchain technology –”fabrics” in market with different focus
HyperLedger Ethereum BitcoinsRipple
5© 2016 IBM Corporation |
Comparison Matrix
Hyperledger Ethereum Ripple Bitcoin
Description General purposeBlockchain
General purpose Blockchain
PaymentsBlockchain
Payments Blockchain
Governance Linux Foundation Ethereum Developers Ripple Labs Bitcoin Developers
Currency None Ether XRP BTC
Mining Reward N/A Yes No Yes
State Key-value database Account data None Transaction data
Consensus Network Pluggable : PBFT Mining Ripple Protocol Mining
Network Private or Public Public or Private Public Public
Privacy Open to Private Open Open Open
Smart Contracts Multiple programming languages
‘Solidity’ programming language
None Possible, but not obvious
IBM Blockchain
6© 2016 IBM Corporation |
Bitcoin• In a nutshell: The original Blockchain application, spawning an industry
• Use case: Cryptocurrency transfer between anonymous participants
• Network: Single public network
• Accounts: BTC currency, rewards for mining, transaction fees
• User Data: Small transaction data area
• Consensus Network: Transactions validated using ‘Proof of Work’ cryptographic mining
• Privacy: Transaction ledger completely open
• Smart Contracts: In original design and code, but not obvious
• Open: Open source. Changes governed by Bitcoin developers.
• Recent Innovations: None – relatively established
• Backing: Bitcoin applications are backed many VCs. Network not backed.
• More information: https://bitcoin.org
7© 2016 IBM Corporation |
Ethereum• In a nutshell: Popularized smart contracts
• Use case: Smart contracts encapsulate business rules. Ether currency as ‘fuel’
• Network: Single public network. Private network providers available, e.g. Eris
• Accounts: Ether currency, rewards for mining, transaction fees
• User Data: Accounts can hold binary user data
• Consensus Network: POW transaction validation
• Privacy: Fully open ledger
• Smart Contracts: Fully externalized via ‘Solidity’ programming language
• Open: Open source. Changes governed by Ethereum developers
• Recent Innovations: Discussing ‘Proof of Stake’ option – May 2016
• Backing: Ethereum applications are backed by VCs. Network by donations
• More information: https://www.ethereum.org
8© 2016 IBM Corporation |
Ripple
• In a nutshell: International Payments Platform for banks and businesses
• Use case: Cryptocurrency (XRP) transfer between anonymous participants
• Network: Single public network
• Accounts: Hold XRP currency balance
• User Data: No user data
• Consensus Network: Transactions validated using novel, ‘white-list’ network protocol
• Privacy: Fully open ledger
• Smart Contracts: None.
• Open: Open source. Changes governed by Ripple Labs
• Recent Innovations: Focus on international banking settlements
• Backing: Andreesen Horowitz, Google Ventures
• More information: https://ripple.com
9© 2016 IBM Corporation |
Hyperledger• In a nutshell: Distributed ledger backed by the Linux Foundation
• Use case: General purpose distributed ledger satisfying broad requirements
• Network: Private networks focus. Available as managed service. Public later
• Accounts: Not currency based. (UTXO API available using smart contracts)
• User Data: Flexible key-value database
• Consensus Network: Transactions validated using PBFT as default. Pluggable design
• Privacy: From fully open to private ledgers
• Smart Contracts: Broad choice of programming languages. Extensible via Docker containers
• Open: Open source. Changes via standard Linux Foundation processes
• Recent Innovations: Merging contributions from IBM, DAH, Intel prior to expect GA July 2016
• Backing: 30 Founders: IT companies, Banks & Financial organizations
• More information: https://www.hyperledger.org
10© 2016 IBM Corporation |
“A Blockchain has two main concepts. A business network, in which members exchange items of value – Asset, through a ledger, which each member possesses and whose content is always in sync with the others.”
11© 2016 IBM Corporation |
Business networks, wealth & markets
– Business Networks benefit from connectivity
• Participants are customers, suppliers,
banks, partners
• Cross geography & regulatory boundary
– Wealth is generated by the flow of goods
& services across business network
– Markets are central to this process:
• Public (fruit market, car auction), or
• Private (supply chain financing, bonds)
12© 2016 IBM Corporation |
Transferring Assets, building value
Two fundamental
types of asset
Intangible assets
subdivide
Cash is also
an asset
– Tangible, e.g. a house
– Intangible, e.g. a mortgage
– Financial, e.g. bond
– Intellectual, e.g. patents
– Digital, e.g. music
– Has property of anonymity
Anything that is capable of being owned or controlled to produce value, is an asset
13© 2016 IBM Corporation |
Ledgers are key …Ledger is THE system of record for a business.
Business will have multiple ledgers for multiple business networks in which they participate.
– Transaction – an asset transfer onto or off the ledger
• John gives a car to Anthony (simple)
– Contract – conditions for transaction to occur
• If Anthony pays John money, then car passes from John to Anthony (simple)
• If car won't start, funds do not pass to John (as decided by third party arbitrator) (more complex)
14© 2016 IBM Corporation |
Problem …
… Inefficient, expensive, vulnerable
Bank
records
Party A’s
records
Party C’s
records
Auditor
recordsParty B’s
records
Party D’s
records
15© 2016 IBM Corporation |
Solution …
… Consensus, provenance, immutability, finality
Party C’s
records
Auditor
recordsParty B’s
records
Party D’s
records
Bank
records
Party A’s
records
Shared, replicated, permissioned
16© 2016 IBM Corporation |
Sample Use case
“Car leasing end-to-end life cycle from production till scrap”
17© 2016 IBM Corporation |
Car Leasing Business Network
“In house”
(ledger)
Synchronisation:
× Slow
× Error prone
× Multiple ledgers
× Who owns what,
when, could get
confused ?
1. Manufacturer
Regulator
“In house”
(ledger)
Ownership
Transfer
“In house”
(ledger)
2. Dealer
“In house”
(ledger)
3. Leasing
Company
“In house”
(ledger)
“In house”
(ledger)
4. Lessee
Company5. Scrap Merchant
18© 2016 IBM Corporation |
Car Leasing Business Network with Blockchain
node
1. Manufacturer
2. Dealer
3. Leasing
Company4. Lessee
5. Scrap Merchant
Regulator
Shared Ledger Smart
Contracts
node
nodenode
node node
Conditions for
asset transfer
Records of asset
transfer
19© 2016 IBM Corporation |
Blockchain ComponentsBlockchain for business …
Append-only
distributed system of
record shared across
business network
Business terms
embedded in
transaction database
& executed with
transactions
All parties agree to
network verified
transaction
Ensuring appropriate
visibility; transactions are
secure, authenticated
& verifiablePrivacy
Shared ledger
… Broader participation, lower cost, increased efficiency
Smart
contract
Consensus
20© 2016 IBM Corporation |
Shared Ledger
Shared ledger
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
21© 2016 IBM Corporation |
Smart Contract
Shared ledger
Business rules implied by the contract . .
. . embedded in the Blockchain & executed with the transaction
Verifiable, signed
Encoded in programming language
Example: Defines contractual conditions under which corporate Bond transfer occurs
22© 2016 IBM Corporation |
Consensus
Shared ledger
– Transaction verification & commitment
– When participants are anonymous
• Commitment is expensive
• Bitcoin cryptographic mining provides verification for anonymous participants but at significant compute cost (proof of work)
– When participants are known & trusted
• Commitment possible at low cost
– Multiple alternatives
• proof of stake where fraudulent transactions cost validators (e.g. transaction bond)
• multi-signature (e.g. 3 out of 5 participants agree)
23© 2016 IBM Corporation |
Privacy
Shared ledger
Ledger is shared, but participants require privacy
Participants need:
Transactions to be private
Identity not linked to a transaction
Transactions need to be authenticated
Cryptography central to these processes
24© 2016 IBM Corporation |
IBM Point of View on Blockchain for Business
Private & permissioned (not public)
• Private = known set of participants,
known identity
• Permissioned = members need to fulfill
criteria to join
• (Public = open set of participants,
potentially unknown identity)
Privacy through Cryptography
• Transaction privacy
• Participant identity & trading privacy
Appropriate Consensus
• Mechanism by which participants agree
on state of shared ledger.
• (Public needs heavyweight consensus for
anonymous participants)
• Known participants opens up other forms
(e.g. participant bonds)
Compliance & audit
• Current spend can be vastly reduced
• Automated processes possible
25© 2016 IBM Corporation |
Blockchain not for all
POSITIVE Indicators
1. Managing contractual relationships
2. Complex business logic
3. Identity is important
4. Transactions need to be private
5. Market Approach needed
6. More than two parties
7. Looking to reduce costs
8. Want to improve discoverability
NEGATIVE Indicators
1. Need high performance (millisecond)
transactions
2. One organization involved (no business
network)
3. Looking for a database replacement
4. Looking for a messaging or general
transaction processing
26© 2016 IBM Corporation |
27© 2016 IBM Corporation |
Blockchain Applications in Action
World/Ledger state Blockchain
block
txn txn txn txn …
Blockchain developer
Smart Contract
invokesdevelops
develops
each ‘put’ or ’delete’ invoke recorded
*
Application
accesses
event
emits
emits
D
Ledger
‘get’ ‘put, ‘delete’
End User Applications (Mobile App)
OpenLedger Blockchain Platform
Application Server - Event and Workflow Management
Identity Manager
Event Manager
Transaction Manager
28© 2016 IBM Corporation |
Blockchain starting point is.. Use case
29© 2016 IBM Corporation |
Use case :
30© 2016 IBM Corporation |
Use Case – Aircraft Maintenance
What?
• Provenance of each component part in complex system hard to track
• Manufacturer, production date, batch and even the manufacturing
machine program.
How?
• Blockchain holds complete provenance details of each component part
• Accessible by each manufacturer in the production process, the
aircraft owners, maintainers and government regulators.
Benefits
1. trust increased no authority "owns” provenance
2. improvement in system utilization
3. recalls "specific" rather than cross fleet
31© 2016 IBM Corporation |
Use Case – Business to Business Contract
What?
• Buyer wants efficient way of converting a purchase order into validated,
self executing contract updated to reflect the status of the supply.
• Agreement must be visible to the buyer, the seller, banks, logistics
partners and other stakeholders.
How?
• Blockchain provides a shared record of the contract status which is
updated as the contract progresses.
• Available to all parties to the agreement, their banks and partners.
Benefits
1. increased efficiency and transparency across the supply chain.
2. risk management improved through the near real time update of all
contracts.
32© 2016 IBM Corporation |
Blockchain for Business – IBM SolutionCommunity + Code
Linux Hyperledger Project
Open Source Code: Blockchain for business;
Consensus | ProvenanceImmutability | Finality
Open Governance – 40 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
33© 2016 IBM Corporation |
IBM can help customers explore on Blockchain
technology to develop real application
Let’s
TalkBlockchain
Hands-onFirst
ProjectScale
34© 2016 IBM Corporation |
Thank You
© 2016 IBM Corporation
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.
© 2016 IBM Corporation
© 2016 IBM Corporation
Project Goals
1. Create 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.
2. 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.
3. Promote participation of leading members of the ecosystem, including developers,
service and solution providers and end users.
4. 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.
© 2016 IBM Corporation
Project Scope
Shared
Ledger
Code execution environment
Ledger data structures
Modular consensus framework
Modular identity services
Network peers
Core APIs
API libraries and GUIs
Specialized extensions
Specialized consensus algos
Membership policies
Gateway
Operations dashboard
Custom Applications
Value
Added
Systems
App Layer
Out of scope
In-scope
© 2016 IBM Corporation
© 2016 IBM Corporation 41
Blockchain Session Key Take away
• IBM focus on Blockchain for Business – B2B Private BlockchainIBM is not interested in B2C public Blockchain area
• IBM Blockchain is based on HyperLedger Blockchain FabricsHyperLedger is Open and Multi-purpose Blockchain
• Blockchain will have value when implement with “Business Network”, and “Asset” transferred between member to create business valueTerminology “Asset” can be anything, not only Money!
• IBM Blockchain is Technology framework / platform, not a productIBM engage with customer to build solution using IBM and Blockchain Technology for customer. IBM Solutions and Technologies in Blockchain
– Blockchain platform : Bluemix and LinuxOne, both Cloud & On premises
– IBM Services from Blockchain Garage & GBS : Design Thinking, App Development
– Other IBM Solution e.g. Identity Management, Infrastructure Services, Hosting Managed Services, Server/Storage
42© 2016 IBM Corporation |
Thank You
© 2016 IBM Corporation 43
• IBM Blockchain Car Leasing
https://www.youtube.com/watch?v=IgNfoQQ5Reg
© 2016 IBM Corporation
Sample ApplicationCar Leasing
© 2016 IBM Corporation 45
Regulator
Car Leasing Business Network
Ownership
Transfer
“In house”
(ledger)
Synchronisation:
× Slow
× Error prone
× Multiple ledgers
× Who owns what,
when, could get
confused ?
1. Manufacturer
“In house”
(ledger)
2. Dealer
“In house”
(ledger)
3. Leasing
Company
“In house”
(ledger)
“In house”
(ledger)
4. Lessee5. Scrap Merchant
“In house”
(ledger)
© 2016 IBM Corporation 46
Car Leasing Business Network with Blockchain
node
1. Manufacturer
2. Dealer
3. Leasing
Company4. Lessee
5. Scrap Merchant
Regulator
Shared Ledger Smart
Contracts
node
nodenode
node node
Conditions for
asset transfer
Records of asset
transfer
© 2016 IBM Corporation 47
Market Participant
Business Network
participates in
1. Ledger 2. Processes
shares
Blockchain – the Uberization of Ledgers
• A shared network ledger
– Rather than a set of individual ledgers
– From owned to shared
• Permissioned Access
– Appropriate privacy
– For transaction content and transaction
ownership
• Smart Contracts
– Elevate business processes to the network
1. Ledger 2. Processes
owns
Increased Trust
Decreased Friction
Improved Discoverability
Business network processes
© 2016 IBM Corporation
The Participants in a Blockchain NetworkSystems Context
© 2016 IBM Corporation 49
Blockchain
User
Certificate
Authority
Blockchain
Developer
Blockchain
Network
Operator Traditional
Processing
Platforms
Traditional
Data Sources
Blockchain
B2B transactions
access to logic
access to
data
creates
applications
operates
accesses
security
certificates
Regulator
performs
oversight
The Participants in a Blockchain Network
R U
D
O
© 2016 IBM Corporation 50
Blockchain Participants
the business user, operating in a business network. This role interacts
with the Blockchain using a LOB 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 system which 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
behaviour of smart contracts.
Blockchain
User
Blockchain
Developer
Certificate
Authority
Blockchain
Regulator
Traditional
Processing
Platform
Traditional
Data
Sources
Blockchain
Network
Operator
U
R
D
O
© 2016 IBM Corporation
The Components in a BlockchainComponent Model
© 2016 IBM Corporation 52
Blockchain Components
Membership
Smart Contract
Systems
Management
Events
Consensus
Network
Wallet
Ledgercontains the current world state of the ledger and a Blockchain of
transaction invocations
f(abc); encapsulates business network transactions in 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 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
i
Blockchain
Systems
Integrationresponsible for integrating Blockchain bi-directionally with external
systems. Not part of Blockchain, but used with it.
© 2016 IBM Corporation
Application
Membership
Smart
Contract
Systems
Management
Ledger
Events
Consensus
Network
WalletSystems
Integration
Blockchain Components
…
f(abc);
T E
i
Blockchain
© 2016 IBM Corporation
How Applications use the LedgerThe key elements of a Blockchain application
© 2016 IBM Corporation 55
World/Ledger state
Blockchain
block
txn txn txn txn …
* Smart Contract implemented using chain code
Blockchain developer
Smart Contract
invokesdevelops
develops
each ‘put’ or ’delete’ invoke recorded
*
Application
Blockchain Applications and the Ledger
accesses
event
emits
emits
D
Ledger
‘get’ ‘put, ‘delete’
© 2016 IBM Corporation 56
Blockchain Applications
• Application
– Focuses on Blockchain user business needs and experience
– Calls smart contract for interactions with ledger state
– Can access transaction ledger directly, if required
– Can process events if required
• Smart Contract
– Chain code encapsulates business logic. Choice of implementation language
– Contract developer defines relevant interfaces (e.g. queryOwner, updateOwner …)
– Different interfaces access ledger state accordingly – consistent read and write provided
– Each invocation of a smart contract is a “Blockchain transaction”
• Ledger
– World/Ledger state holds current value of smart contract data
• e.g. vehicleOwner=Daisy
– Blockchain holds historic sequence of all chain code transactions
• e.g. updateOwner(from=John, to=Anthony); updateOwner (from=Anthony, to=Daisy);…
© 2016 IBM Corporation
Integrating with Existing Systems
© 2016 IBM Corporation 58
Blockchain network
…
Integrating with Existing Systems
Transform Existing systems
4. System events
3. Blockchain events
Smart contract
1. call out to existing systems to enrich
smart contract logic
2. call into Blockchain network from existing systems
© 2016 IBM Corporation 59
Integrating with Existing systems
• Blockchain is network System of Record
• Smart contracts can call out to existing systems
– Query is most likely interaction for smart decisions
• e.g. all payments made before asset transfer?
– Transactions execute on every peer in the Blockchain network
• Care over predictability… transaction must provide same outputs each time it executes
• Two-way exchange
– Events from Blockchain network create actions in existing systems
– Cumulative actions in existing systems result in Blockchain interaction
• Transformation between Blockchain and existing systems’ formats
– GBO, ASBO is most likely approach
– Standard approach will be for Gateway products to bridge these formats
– Gateway connects to peer in Blockchain network and existing systems
© 2016 IBM Corporation
Summary and Next StepsFor users
© 2016 IBM Corporation 61
Summary and Next Steps
• We are at the beginning of the Blockchain journey!
• Apply shared ledgers and smart contracts to your Business Network
• Think about your participants, assets and business processes
• Spend time thinking about realistic business use cases
• Get some hands-on experience with the technology
• Do a First Project in 2016!
• IBM can help with your journey