ibm blockchain experience - suwat - 20161027

59
1 © 2016 IBM Corporation | © 2016 IBM Corporation Blockchain Experiences Suwat Hongwiwat, Banking Client Technology Architect, IBM Thailand

Upload: ibm-thailand-co-ltd

Post on 16-Apr-2017

298 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: IBM Blockchain Experience - Suwat - 20161027

1© 2016 IBM Corporation |© 2016 IBM Corporation

Blockchain Experiences

Suwat Hongwiwat, Banking Client Technology Architect, IBM Thailand

Page 2: IBM Blockchain Experience - Suwat - 20161027

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”

Page 3: IBM Blockchain Experience - Suwat - 20161027

4© 2016 IBM Corporation |

There are many Blockchain technology –”fabrics” in market with different focus

HyperLedger Ethereum BitcoinsRipple

Page 4: IBM Blockchain Experience - Suwat - 20161027

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

Page 5: IBM Blockchain Experience - Suwat - 20161027

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

Page 6: IBM Blockchain Experience - Suwat - 20161027

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

Page 7: IBM Blockchain Experience - Suwat - 20161027

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

Page 8: IBM Blockchain Experience - Suwat - 20161027

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

Page 9: IBM Blockchain Experience - Suwat - 20161027

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.”

Page 10: IBM Blockchain Experience - Suwat - 20161027

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)

Page 11: IBM Blockchain Experience - Suwat - 20161027

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

Page 12: IBM Blockchain Experience - Suwat - 20161027

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)

Page 13: IBM Blockchain Experience - Suwat - 20161027

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

Page 14: IBM Blockchain Experience - Suwat - 20161027

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

Page 15: IBM Blockchain Experience - Suwat - 20161027

16© 2016 IBM Corporation |

Sample Use case

“Car leasing end-to-end life cycle from production till scrap”

Page 16: IBM Blockchain Experience - Suwat - 20161027

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

Page 17: IBM Blockchain Experience - Suwat - 20161027

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

Page 18: IBM Blockchain Experience - Suwat - 20161027

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

Page 19: IBM Blockchain Experience - Suwat - 20161027

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

Page 20: IBM Blockchain Experience - Suwat - 20161027

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

Page 21: IBM Blockchain Experience - Suwat - 20161027

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)

Page 22: IBM Blockchain Experience - Suwat - 20161027

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

Page 23: IBM Blockchain Experience - Suwat - 20161027

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

Page 24: IBM Blockchain Experience - Suwat - 20161027

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

Page 25: IBM Blockchain Experience - Suwat - 20161027

26© 2016 IBM Corporation |

Page 26: IBM Blockchain Experience - Suwat - 20161027

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

Page 27: IBM Blockchain Experience - Suwat - 20161027

28© 2016 IBM Corporation |

Blockchain starting point is.. Use case

Page 28: IBM Blockchain Experience - Suwat - 20161027

29© 2016 IBM Corporation |

Use case :

Page 29: IBM Blockchain Experience - Suwat - 20161027

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

Page 30: IBM Blockchain Experience - Suwat - 20161027

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.

Page 31: IBM Blockchain Experience - Suwat - 20161027

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

Page 32: IBM Blockchain Experience - Suwat - 20161027

33© 2016 IBM Corporation |

IBM can help customers explore on Blockchain

technology to develop real application

Let’s

TalkBlockchain

Hands-onFirst

ProjectScale

Page 33: IBM Blockchain Experience - Suwat - 20161027

34© 2016 IBM Corporation |

Thank You

Page 34: IBM Blockchain Experience - Suwat - 20161027

© 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.

Page 35: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

Page 36: IBM Blockchain Experience - Suwat - 20161027

© 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.

Page 37: IBM Blockchain Experience - Suwat - 20161027

© 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

Page 38: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

Page 39: IBM Blockchain Experience - Suwat - 20161027

© 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

Page 40: IBM Blockchain Experience - Suwat - 20161027

42© 2016 IBM Corporation |

Thank You

Page 41: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation 43

• IBM Blockchain Car Leasing

https://www.youtube.com/watch?v=IgNfoQQ5Reg

Page 42: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

Sample ApplicationCar Leasing

Page 43: IBM Blockchain Experience - Suwat - 20161027

© 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)

Page 44: IBM Blockchain Experience - Suwat - 20161027

© 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

Page 45: IBM Blockchain Experience - Suwat - 20161027

© 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

Page 46: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

The Participants in a Blockchain NetworkSystems Context

Page 47: IBM Blockchain Experience - Suwat - 20161027

© 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

Page 48: IBM Blockchain Experience - Suwat - 20161027

© 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

Page 49: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

The Components in a BlockchainComponent Model

Page 50: IBM Blockchain Experience - Suwat - 20161027

© 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.

Page 51: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

Application

Membership

Smart

Contract

Systems

Management

Ledger

Events

Consensus

Network

WalletSystems

Integration

Blockchain Components

f(abc);

T E

i

Blockchain

Page 52: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

How Applications use the LedgerThe key elements of a Blockchain application

Page 53: IBM Blockchain Experience - Suwat - 20161027

© 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’

Page 54: IBM Blockchain Experience - Suwat - 20161027

© 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);…

Page 55: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

Integrating with Existing Systems

Page 56: IBM Blockchain Experience - Suwat - 20161027

© 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

Page 57: IBM Blockchain Experience - Suwat - 20161027

© 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

Page 58: IBM Blockchain Experience - Suwat - 20161027

© 2016 IBM Corporation

Summary and Next StepsFor users

Page 59: IBM Blockchain Experience - Suwat - 20161027

© 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