Blockchain as a Platform

Preview:

Citation preview

www.csiro.au

Blockchain asaPlatformDr. LimingZhu,ResearchDirector,SoftwareandComputationalSystemsMarch2016

Blockchain|LimingZhu2 |

Blockchain|LimingZhu3 |

Outline• Blockchain background• Innovationsusingblockchain asaplatform• APIs opportunities• Researchchallenges• Summary

Blockchain|LimingZhu4 |

Blockchain asaPlatformBackground

ProblemsofTrustedThirdParties• Centralization• Singlepointoffailure

• Accesscontrolacrosssystems• Systeminternalstatusisopaque• Policiesandadministrationaredonebyothers

• Costlytointeroperateandcollaborate• Forbothcreationandevolution

Blockchain|Data61,CSIRO6 |

Trustedmarket Trustedpayment Trustedauthentication

HavingatrustedthirdpartyisanassumptionbehindmostAPI-CentricArchitecture!

Blockchain 1.0— Cryptocurrency

Blockchain|LimingZhu7 |

A.Antonopoulos,MasteringBitcoin-unlockingDigitalcrytocurrencies,2014

Trustless environment

Blockchain|LimingZhu8 |

Organization 1 Organization 2 Organization 1 Organization 2

Blockchain network

Centralized Trusted Authority

Traditional trusted environment Blockchain trustless environment

Blockchain network

Blockchain2.0– Smart Contracts

Blockchain|Data61,CSIRO9 |

• Bitcointransactionsarefinancialtransfers• Blockchainledgercanstore/transactanykindofdata• Blockchaincanstoreandexecuteprograms

• SmartContracts• Canenactdecisionsoncomplexbusinessconditions

• CoordinationwithbusinessprocessesthroughAPIs• Canholdandtransferassetsheldbythecontractitself

Why?

Blockchain|LimingZhu10 |

• Immutabledatastore• Public/Privateledger

• Everynodehostsareplica• Distributedconsensus• Nocentralownerofconsensus

• Transactionisverifiedbythewholenetwork

Blockchain network

SomeBenefitsofUsing Blockchain

Blockchain|Data61,CSIRO11 |

• Decreasetransactioncostandimproverobustness(vs.centralisedsolutions)– Communicatepeer-to-peerina“trustless”environment

• Immutablepublicledgerallowstrackingownershipofreal-world/digitalassets– Transactionsprovidethetransparentevidenceofprovenance

• Conditionalpaymentsandcomplexbusinesslogicusingsmartcontracts– Non-repudiationonbothassetsandbusinessprocess

• Enabletrueautonomousentities(IoT devices,distributedorganisations)– Entitiescancreaterules,responsibilitiesandpermissions

BlockchainasaPlatformApplicationScenarioS1:SecureContractNegotiation

Scenario

13 |

D D

D

Blockchain|Data61,CSIRO

• Negotiationprocessescanbecontrolledbyathirdparty,oroneofthemainparties

• Whichorganisationshouldcontrolsensitivenegotiations?

SecureContractNegotiation

14 |

D

Blockchain|Data61,CSIRO

Negotiation

• Blockchain replacesacentralizedtrustedthirdparty

D D

Blockchain|Data61,CSIRO15 |

SecureContractNegotiation

Initiate,negotiate, sign

Keydistribution

Authentication

Tamper-proof logofevents• Proposal ofnewvalue• Agree/Disagree• Amendment

Off-chain

Keygeneration

Blockchain network

Contractgenerator

On-chain

• Bindsmartcontractwithphysicalcontract• Addressofsmartcontract• Hashofphysicalcontract

Federatedauthentication

Mobilegateway

Contracttemplate On-chain

Off-chain

BlockchainasaPlatformApplicationScenarioS2.OpenDataRegistry

Scenario

17 |

Data owner 2

Dataset

.

• Increasethe data value throughmonetization Dataset

Data owner 1

DatasetDataset

DD

Data Consumer(Joint Analytics)

M

M

• Payback based on the datasetcontribution and value

Blockchain|Data61,CSIRO17 |

Blockchain|Data61,CSIRO18 |

OpenDataRegistryPlatform—StructuralOverview

Registerdataset,Upload data analytics script…

Datasetregistry• Metadata• Policyaddress

Job registry• Contribution criteria• Dataset requirement

Tamper-proof logofevents• Usagepolicycompliance result• Whenandwhatanalyticsjob

Off-chain

Dataanalytics

Organisation A

Blockchain networkDataandAPIs

DataAdministrator DataAnalyst

Dataanalyticsinfrastructure

Policycompliancechecker

PolicyCompiler

PolicyEnforcement

On-chain

Off-chain

Organisation B

On-chain

Blockchaincoordinate dataanalytics

Conditionalpayment

Conflictresolution

Usagepolicyspecification

Blockchain|Data61,CSIRO19 |

Post ananalytics job

OpenDataRegistryPlatform—BehavioralOverview

Datasetrequirements

Register adataset

Confirmeddatasetsinvolved

Policycompliancechecking

Runanalytics

Datasetmetadata andusage

policyaddress

Selectjob

Selectdataset

Policycheckingresult

Whenandwhatjob

Whopayhowmuchtowhom

Pay

API-drivenandcoordinatedbyblockchain

BlockchainasaPlatformOtherScenarios

IoT Devices

Blockchain|Data61,CSIRO21 |

EnergyUser EnergyRetailerSmartMeter

On-chainOff-chain

On-chainOff-chain

On-chainOff-chain

Post,bid, reportusage

Pay, register meter

Operate

Server-less DApp

EnergyContractBidding&SmartMeters

Blockchain|IngoWeber22 |

ServiceProvider

BlockchainRuleEngine Payment

LicenseHolder

Government

Bid,injectexternalstate,pay

StateInjector

Provideinformation/Notification

BusinessProcessesCoordination

• Blockchain as decentralized coordinator for business processes- Government as oracle- Replicate some data from oracle

• Information are exchanged off-chain through API

Blockchain asaPlatformAPIOpportunities

ConnectingwithExistingAPIs• Blockchainasaconnector/coordinator[1]• Coordinatingbusinessprocesses• ConnectingwithserviceAPIs

• Coordinatingdistributeddataanalytics• DataAPIs:recordingmetadata,provenance,ownership..• DataanalyticsAPI:recordingoperationstodata,coordination,reproducibility,validation….

• Coordinatingcross-org/person/devicedataanalyticsover(encrypted)data[2]

Blockchain|LimingZhu24 |

[1]S.Xu,C.Pautasso,L.Zhu,etal.Blockchain asasoftwareconnector, WICSA2016[2]https://n1analytics.com/ (Data61)andEnigma(MIT)

APIs forUsingBlockchain• Transaction API• To accountaddress,monetary value, data package

• SmartcontractAPI• Creation: Source code of smart contract• Invocation:To contract address, function signature, parameters

• Examples• Bitcoin:Go, Python, Ruby, Erlang…• Ethereum: JavaScript

Blockchain|LimingZhu25 |

APIs forConfiguringBlockchains• Deploymentofblockchain throughAPIs• Configurable blockchain types– Public/Private/Consortium

• Configurable consensus algorithms– Proof-of-work/Proof-of-stake/Round-robin/Instant...

• Permission management through APIs• Grant/Revoke• Read(Join network)/Submittransaction/Mining…

• Examples– Multichain;BlockApp: STRATO for Ethereum

Blockchain|LimingZhu26 |

DevOps APIsfor Blockchain Applications• Continuesdeploymentof DApps&smart contracts• Dev/Testenvironment• Compilation and deployment• Dependencymanagement

• Build pipelineof blockchain applications• Integration of off-chain data stores– E.g. IPFS, Cloud

• Examples– Truffle for EthereumDApps– Embark for EthreumDApps

Blockchain|LimingZhu27 |

Blockchain-as-a-Service (BaaS)• MicrosoftAzure;IBMBluemix• Support public blockchains/DApps– Create VMs to join publicblockchains/DApps

• Support private blockchains– Private blockchain on cloud with permissoned local nodes– Local private blockchainwith permissioned nodes on cloud

• Dev/Test “sandbox” for multipleblockchains• AccessotherOff-chainfunctionsthroughAPI• Azure as amarketplace for blockchainsBlockchain|LimingZhu28 |

BlockchainResearchChallenges

Research:DesigningwithBlockchain• Blockchain asacomponentinsystemdesign• DistributedaccesscontrolusingBlockchain• Multiple Blockchains andinter-ledgertransfersAPIs• APIsbetweenon-chainandoff-chaincomponents

• Understandingtradeoffs (performance,control,…)• Privatevs.Public• On-chainvs.Off-chain• Blockchainvs.CentralDBvs.Paxos

• Industryinteroperabilityplatformsusingblockchain• Governanceanddistributedriskmanagement;APIinteroperabilityBlockchain|LimingZhu30 |

Research:SmartContractsonBlockchain• LegalreasoningwithSmartContracts• DeclarativeSmartContracts• SmartContractAPIs

Blockchain|LimingZhu31 |

Blockchain asaPlatformSummary

Summary• Blockchainasaninnovationplatform– Peer-to-peertransactionsin“trustless”environment– Widerangeofinnovationscenarios

• APIOpportunitiesforBlockchain– ServiceAPIs:(passively)coordinatingorthroughsmartcontract– DataAPIs:recordingmetadata,provenance,ownership…– OtherAPIs:using,configuring,DevOps,BaaS…

Blockchain|LimingZhu33 |

Formoreinfo:Liming.Zhu@data61.csiro.auhttp://www.data61.csiro.au

www.csiro.au

Thankyou

March2016

Recommended