Page 1
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Page 2
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Project Dovetail™(TIBCO LABS™)Making Smart Contracts Smarter
2
Page 3
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
DISCLAIMERDuring the course of this presentation, TIBCO or its representatives may make forward-looking statements regarding future events, TIBCO’s future results or our future financial performance. Although we believe that the expectations reflected in the forward-looking statements contained in this presentation are reasonable, these expectations or any of the forward-looking statements could prove to be incorrect and actual results or financial performance could differ materially from those stated herein.
TIBCO could experience factors that could cause actual results or financial performance to differ materially from those contained in any forward-looking statement made in connection with this presentation. TIBCO does not undertake to update any forward-looking statements that may be made from time to time or on its behalf.
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. This document is provided for informational purposes only and its contents are subject to change without notice. TIBCO makes no warranties, express or implied, in or relating to this document or any information in it, including, without limitation, that this document, or any information in it, is error-free or meets any conditions of merchantability or fitness for a particular purpose. This document may not be reproduced or transmitted in any form or by any means without our prior written permission.
The material provided is for informational purposes only, and should not be relied on in making a purchasing decision. The information is not a commitment, promise or legal obligation to deliver any material, code, or functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion.
Page 4
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
4
Download the Appto download the TIBCO NOW App visitnow.tibco.com/2018/mobile-app
Page 5
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Agenda
5
• What are Smart Contracts?• Challenges: Smart Contracts on Different Blockchain
Platforms• Project Dovetail: Model-driven Smart Contract Development• Project Dovetail Roadmap
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Page 6
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Blockchain/Distributed Ledger Technology
6
• A blockchain is essentially a shared accounting ledger that uses cryptography and a network of computers to track assets and secure the ledger from tampering (by Mike Orcutt)
• Blockchain Transaction Rules○ Authorization
■ Public/Private Key Cryptography○ Uniqueness
■ Prevent double-spent problem○ Correctness
■ Smart Contract
Page 7
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
What are Smart Contracts?
7
• Wikipedia:
Smart contracts are computer protocols intended to facilitate, verify, or enforce the
negotiation or performance of a contract.
• Investopedia:
Smart contracts are self-executing contracts with the terms of the agreement between buyer and seller being directly written into lines of code. The code and the agreements contained therein exist across a distributed, decentralized blockchain network. Smart contracts permit trusted transactions and agreements to be carried out among disparate, anonymous parties without the need for a central authority, legal system, or external enforcement mechanism. They render transactions traceable, transparent, and irreversible.
Page 8
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Properties of A Smart Contract
8
● Deterministic○ Smart contract must give the same output to a given input
every single time● Terminable
○ Smart contract can execute its function within a time limit to prevent “halting problem”
● Isolated○ Smart contract runs in an isolated sandbox to save the
entire ecosystem from any negative effects.
Page 9
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Smart Contract Example - Bitcoin
9
● Language: Script○ Simple, Stack-based, Processed
left to right○ Not Turing-complete
● Each transaction is a contract○ At least one or more
inputs/outputs○ Input refers an UTXO○ TX(Input) < TX(output)○ Input: data to unlock UTXOs○ Output: locking script
■ P2PKH■ P2SH
○ Can be locked for a period of time
Page 10
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Smart Contract Example - Ethereum
10
● Language: Solidity○ Statically typed○ Compiled to EVM bytecode○ Turing-complete
● Smart contracts ○ Is a collection of code (functions) and
data (states) at a specific address on all nodes of the network
○ Invoked by messages sent from external accounts or other contract accounts
○ Runs in EVM■ Does not support non-deterministic
functions■ Isolated■ Uses gas/gas limit to prevent halting
Page 11
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Smart Contract Example - Hyperledger Fabric
11
● Language: Go, NodeJS, Java*● Chaincode
○ Implements Chaincode API■ Init■ Invoke
○ Initializes and manages the ledger state through transactions■ GetState■ PutState
○ Installed on endorsing peers of participants of a channel■ Runs in a secured docker container■ Use timer to prevent halting■ Relies on chaincode developer for
deterministic feature
Page 12
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Smart Contract Example - R3 Corda
12
● Language: Kotlin, Java● Contract
○ Implements Contract interface ■ verify
○ Each transaction proposal has one or more input/output states■ Each state points to a contract■ All state contracts must be valid
○ Installed only on nodes that store and manage state that is verified by the contract■ Runs in a deterministic sandbox
which has a whitelist that prevents the contract from importing libraries that could be a source of non-determinism
Page 13
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Smart Contract Challenges
13
● Different Approaches○ Inputs + Outputs -> Smart Contracts -> True/False
■ Bitcoin■ R3 Corda■ ...
○ Inputs -> Smart Contracts -> Outputs■ Ethereum■ Hyperledger Fabric■ ...
● Different Languages○ Golang, Java, Kotlin, JavaScript…○ Proprietary Languages
Page 14
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Hyperledger Composer
14
● Standardize and Speed up Blockchain Application Development○ Modeling Language
■ Assets■ Participants■ Events■ Transactions
○ Transaction Processing Implementation■ Javascript
○ ACL■ Fine-grained access control to assets
○ Query■ SQL-like query definition language
● Platforms Supported○ Hyperledger Fabric
Page 15
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Project Dovetail (TIBCO LABS)Model-driven Smart Contract Development
15
● Platform Neutral○ Ledger States/Assets Modeling
■ Support Hyperledger Composer Modeling Language
○ Transaction Processing Modeling■ TIBCO Flogo® Enterprise Studio
● Graphical flow creation● Visual input mapping
○ Command line tool■ Generate/Deploy platform-specific
smart contracts● Project Dovetail Initially Supported
Platforms○ Hyperledger Fabric○ R3 Corda
Page 16
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Project Dovetail (TIBCO LABS)Asset Modeling
16
@PrimaryCompositeKey("txn_id,sequence")
asset AuditRecord identified by txn_id {
o String txn_id
o String txn_time
o Integer sequence
o String user_txn_id
o String hash_type
o String hash_value
o String data optional
}
@InitiatedBy("$tx.aidOrg", "aidOrg=true")
transaction CreateProjectPledge {
o String pledgeId
o String name
o String description
o Amount fundsRequired
--> Party aidOrg
--> Party globalCitizen
}
Page 17
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Project Dovetail (TIBCO LABS)Transaction Modeling
17
Page 18
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Project Dovetail (TIBCO LABS)Transaction Modeling
18
Page 19
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Project Dovetail (TIBCO LABS)Open Source Project
19
Page 20
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
20
Global Citizens ChallengeUSE CASE DEMO
RESULTS
• Bullet 1
• Bullet 2
• Bullet 3
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Page 21
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Project Dovetail (TIBCO LABS) Roadmap
21
• Integrated development and testing environment• Model• Develop• Test• Audit• Deployment
• Governance• Version control• Collaboration among smart contract participants
• Blockchain Integration• API Generation• Eventing
Page 22
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Project Dovetail (TIBCO LABS) Summary
22
• Blockchain-Agnostic, Model Driven Approach to Smart Contract Development
• Visual Creation and Editing of Smart Contract Logic• Reduced Risk of Technology Lock-In, with Support for
Customization and Extensions
*Go to Project Dovetail community site for more details
Blockchain-Agnostic, Model Driven Approach to Smart Contract Development
Page 23
This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and availability dates for TIBCO products and services. It is for informational purposes only and its contents are subject to change without notice. © Copyright 2014-2018 TIBCO Software Inc. All rights reserved. TIBCO Proprietary Information.
Please Remember
to downloadthe TN App andcomplete the surveyfor this breakout
Questions
Please wait for themicrophone beforeasking your questions
State yourname & company
23