Mais conteĂșdo relacionado
Semelhante a Blockchain, Hyperledger and the Oracle Blockchain Platform (20)
Mais de Juarez Junior (20)
Blockchain, Hyperledger and the Oracle Blockchain Platform
- 1. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Blockchain, Hyperledger and the Oracle
Blockchain Platform
Juarez Barbosa Junior
Principal Developer Advocate, Blockchain
Oracle EMEA
juarez.barbosa@oracle.com
https://www.linkedin.com/in/jujunior
@juarezjunior
June 2019
- 2. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracleâs products remains at the sole discretion of Oracle.
- 3. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Agenda
Enterprise Blockchain
Hyperledger Fabric
Blockchain App Development
Oracle Blockchain Platform
1
2
3
4
- 5. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. 5
The Promise of Blockchain
"The technology most likely to
change the next decade of
business is not the Social, Big
Data, the Cloud, Robotics, or
even AI. It is the Blockchain!â
âHarvard Business Review
"The Impact of Blockchain Goes
Beyond Financial Services,"
May 2016
- 6. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. 6
The Promise of Blockchain
"We are in the process of
developing a New Operating
System (OS) for the planet.â
â Jeremy Wilson
Vice Chairman of Corporate Banking
Barclayâs Bank
Blockchain for Finance conference,
October 2017
- 7. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. 7
The Promise of Blockchain
Blockchain technology is coming to
change all sorts of industries âŠ
comparable to the change from hand-
written paperwork to electronic
databases.
Inc Magazine, May 2018
Global Spend
2018: $1.5B 2022: $11.7B
Added Business Value
2026: $360B 2030: $3.1T
65% of companies over >10K
employees considering or
actively engaging in blockchain
deployment
- 8. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Eliminating intermediaries means reduced transaction costs and
near real-time transaction execution
Increased confidence in the information and reduced fraud
opportunities
Increased adutiability and trust
Automated business processes in a trusted way. Represent any
asset digitally
Eliminates manual efforts and delays due to reconciliation
needs since data consistency is a key attribute of the distributed
ledger
Blockchain Technology
Disruptive Characteristics / Benefits
Decentralized, peer-to-peer network
No central, controlling authority
Distributed Ledger
All participants maintain a copy of the ledger
Immutable transaction history
Impossible to make changes to existing
transactions in a blockchain without detection
Transparent
Transactions on a blockchain are visible to the
authorized participants
Smart Contracts
Business logic deployed on a blockchain and
shared and validated by participants
- 9. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Two Key Types of Blockchain
PermissionedPermissionless
âą Anyone can join the network and have a
copy of the ledger
âą This involves computer resource
intensive processes to protect the
Blockchain incl. mining
âą Additional mechanisms to protect
network from overload if smart contracts
used
âą Typically B-2-C, C-2-C (eg. Bitcoin,
Ethereum)
âą Closed ecosystem: members are
invitation-only
âą Less intrinsic protection needed, thus
greater scalability (protection through
firewalls, identity management, defined
smart contracts)
âą Typically B-2-B (eg. Hyperledger/Oracle)
- 11. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
What is Hyperledger Fabric?
âą Fabric â open-source platform for distributed ledger solutions that is
intended as a foundation for developing blockchain solutions
â Provides a permissioned blockchain model with membership
services
â Designed with modular architecture allowing components, such as
consensus and membership services, to be pluggable
â Programmable â leverages containers to host smart contracts for
automating business processes
â Focuses on a scalable implementation by separating smart contract
execution from block creation
â Provides private channels for conducting confidential/private
transactions with invited members
â Open-governed community for enterprise blockchain hosted by The
Linux Foundation
â No cryptocurrency required!
Permissioned, Open-Source, Enterprise, B2B
- 12. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Linux Foundation
âą Open-governed community for enterprise blockchain hosted by The Linux Foundation
â Governance model broadly accepted within industry
â Oracle as a member has a voice in decisions and participates in technical committees
âą Fabric project â open-source platform for distributed ledger solutions that is intended
as a foundation for developing blockchain solutions
â Other projects as part of Hyperledger Foundation ecosystem (Indy, Iroha, Sawtooth)
Open-Source
- 13. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Components of a HyperLedger Fabric Blockchain
13
Peers
Maintain the state of the
network and a copy of the
ledger
âą Endorsers: simulate and endorse
transactions
âą Committers: verify endorsements
and validate transaction results, prior to
commiting transactions to the blockchain.
- 14. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Components of a HyperLedger Fabric Blockchain
14
Peers
Ledger
(World State)
A shared, permissioned ledger that is an
append-only system of records and serves
as a single source of truth.
âą Chain: transaction log. structured as hash-linked blocks,
where each block contains a sequence of N transactions. The
block header includes a hash of the blockâs transactions, as
well as a hash of the prior blockâs header.
âą State DB: âWorld Stateâ is modeled as a versioned
key/value store (KVS). It reflects the current data about all the
assets in the network. This data is stored in a database for
efficient access. (LevelDB and/or CouchDB).
â Keys are simple names or composite, i.e., constructed
keys.
â Values are arbitrary blobs, JSON often used.
âą History DB: Maintains a history of the values of a key
Currently in Fabric just a pointer into ledger.
- 15. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Components of a HyperLedger Fabric Blockchain
15
Peers
Smart Contracts
Ledger
(World State)
Server side code, smart contracts
(chaincode â business logic) can
be written in:
âą Go
âą NodeJS
âą Java
Client side code can be written in:
âą Go
âą NodeJS
âą Java
âą Python
- 16. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Components of a HyperLedger Fabric Blockchain
16
Peers
Consensus
Smart Contracts
Ledger
(World State)
The process of reaching agreement on
the next set of transactions to be
added to the ledger:
âą Transaction endorsement
âą Ordering
âą Validation and commitment
- 17. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Components of a HyperLedger Fabric Blockchain
17
Peers
Consensus
Smart Contracts
Ledger
(World State)
Membership
Service
Controls enrollment of network
members (organizations) and provides
related cryptographic services.
Implements a CA architecture with
Root CA and intermediate CAs
â Enrollment (ECerts).
â TLS (TCerts).
- 18. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Components of a HyperLedger Fabric Blockchain
18
Peers
Consensus
Smart Contracts
Ledger
(World State)
Applications
(D-apps)
Membership
Service
Clients are applications that act
on behalf of a person to propose
transactions on the network:
âą Java SDK
âą NodeJS SDK
âą Go SDK
âą Python SDK
- 19. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Ledger
X
âą Collaborative network of organizations
using a common blockchain
â Oracle cloud or heterogeneous nodes
âą Create a new network or add to an
existing network
âą Ensure privacy by creating channels with
distinct policies and data access
spanning multiple orgs
OBP Interactions â Creating Business Network
BCS A BCS B BCS C
Org
A
Org
B
Org
C
P P P P P P P
P P P P
Consortium: X (A+B+C); Channel: CH1
Consortium: Y (A+C+D); Channel: CH2
P PLedger
Y
O
O
O O
O O
HLF D
Org
D
P P
P
Oracle Public Cloud
On Premises
- 20. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Hyperledger Fabric - Transaction Flow
Client Application
Fabric SDK
Keys
Membership Service
Peers
Endorser
Simulates TX
World
State
Committer
Applies changes
Ordering Service
Certificate
Authority
Federated
Identity
4.0 - Deliver TX Batch
Validate Signatures
and Authorization
Membership
Services container
Peer container
Orderer container
Orders TXs into
batches
according to
consensus
Container
Legend
Customer Code
3.0 - Submit Endorsed TX
Includes RWset and endorser
signatures
Ledger
5.0 â Writes ledger block
5.1 - Updates State
6.0 â Commit Notification
Fabric Code
Smart contract container
Smart Contract
(Chaincode)
- 21. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Propose Transaction
- 22. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Execute Proposal
- 23. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Key Value RW Set Version
Tamer 500 V2
Loic 400 V5
Transfer 100 from Tamer to Loic:
âą Read Tamer Balance.
âą Read Loic Balance.
âą Deduct 100 From Tamer Balance.
âą Add 100 to Loic Balance.
RW Set Simulation
Read Set:
âą Tamer, V2
âą Loic, V5
Write Set:
âą Tamer, 400
âą Loic, 500
Note: Only RW Set is calculated, but no changes are reflected on ledger/world state DB.
Ledger
400
500
- 24. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Execute Proposal
- 25. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Proposal Response
- 26. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Order Transaction
- 27. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Deliver Transaction
- 28. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Validate Transaction
- 29. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Key Value RW Set Version
Tamer 500 V2
Loic 400 V5
Validate
Current Ledger Asset
Version = Read Set Asset
Version
Commit
âą Reflect Assets Values
from Write Set to Ledger
âą Update versions
Validate & Commit
Read Set:
âą Tamer, V2
âą Loic, V5
Write Set:
âą Tamer, 400
âą Loic, 500
400
500
Benefits
âą Detect Phantom Writes.
âą Eliminate Double Spending.
V3
V6
Ledger
- 30. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Notify Transaction
- 32. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 32
Blockchain Technologies
Blockchain Technologies -
Hyperledger
- 33. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Three Major Blockchain Technology Implementations
Characteristic Ethereum Hyperledger Fabric R3 Corda
Description Generic blockchain platform Modular blockchain platform Specialized for banking
Governance Ethereum developer and banks via
the EEA (Enterprise Ethereum Alliance)
Linux Foundation R3 Membership
Mode of Operation Permissionless (Public) or Permissioned
(EEA)
Permissioned Permissioned
Consensus Mining PoW (Proof of Work) and others
POS (Proof of Stake)
Ledger Level
Multiple approaches (e.g., Kafka-based
ordering service)
Specific understanding of
consensus based on notary nodes
Privacy No Yes, confidentiality domains allow members
to conduct private transactions over
confidential channels
Mandatory, all transactions are
visible only to participants
Smart Contract
Languages
Solidity GO, Java, NodeJS Kotlin, Java
Currency Ether or Tokens via SC None built-in; Currency and tokens via smart
contracts
None
Who is Using Fintechs, Banks, Enterprises Enterprises, Banks Banking only
Frothy ICOs (Initial
Coin Offerings)
Yes No No
- 34. Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Smart contract developers who create chaincode
âą Deploy through console or through SDK
âą Test through Web Services/REST APIs
âą SQL-based rich queries for world state with full validation on
commit
Application developers will develop/integrate end-user
apps, which execute transactions via smart-contracts
âą Client SDK (Java, Node.js, Go, Python)
âą Web Services/REST APIs
âą Rich queries on history DB
âą Business-user friendly smart contracts leveraging rules engine
technology for human-readable smart contracts
âą API-driven common application layers
âą Issuing and tracking tokens and other assets
âą Tracking documents and collaboration surrounding them
âą Automated deployment or upgrades of smart contracts
leveraging DevOps integration of CI/CD tooling
Smart Contract and Application Development
34
Client
SDK
Keys
Application Developers Smart Contract
Developer
REST Proxy
(HLF SDK)
BCS
Console
Blockchain Network
REST
Dev mode
Unit testing
with mock
ledger
- 36. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. 36
APIs & SDKs to
integrate with any
applications
Pre-assembled,
Automatic
provisioning
Admin console for
management,
Business UI
Build in IdM,
Granular access
controls
An Enterprise Blockchain Cloud Can Help Address These
Challenges
Production
Ready
Easy to
Integrate
Easily
Control
Access
Easy to
Monitor and
Manage
Support <
Participants,
Support < TRX
Performance
& Scalability
- 37. Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
âą Build Trusted Business Networks
â Simple Provisioning
â Complete Blockchain Platform in a Few Clicks
â Add Partner Organizations
â Support Hybrid Networks with Open Source
âą Automate with Smart Contracts
â Business Logic for Blockchain
â Event Notifications
â Quickly Build and Deploy Chaincode
â Define Endorsement Policies
âą Conduct Private Transactions
â Confidentiality Domains
â Easily Control Member Access Privileges
â Running Chaincode Across Multiple Channels
â Dynamically Create Channels
With OBP Customers CanâŠ
âą Integrate Blockchain in Applications
â REST API-driven Development
â SDK-based Development (Java, Node.js, others coming)
â Extend SaaS Apps through PaaS4SaaS, OIC adapters
â Build New Apps in PaaS App Dev: JCS, MCE, ACCS, VBCS, PCS
âą Leverage OOTB Support for Blockchain APIs
â Netsuite SuiteCloud Platform.
â Oracle Digital Innovation Platform for Open Banking
â Oracle FLEXCUBE Core Banking platform
â (Upcoming) Intelligent Track & Trace SaaS
âą Configure, Run, Monitor Blockchain Network
â Intuitive, Comprehensive Admin Console & REST API
â Dynamic Configuration and Administration
â Easy Monitoring & Troubleshooting
- 38. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
OBP - Comprehensive Blockchain Platform
38
Membership
Service
Membership Service
Applications
Validating Nodes/ Peers
Distributed Ledger
(Single Version of Truth)
Smart Contracts
(aka Chaincode)
Ordering Service
Ordering Service
REST Proxy
Operations
Admin/Operations Console
Integrated backplane of supporting services
Oracle value-add
Rich integration tools for SORs & new apps
App
App
SDK
REST proxy
REST
Flexible, global, interoperable deployments
Autonomous, Oracle-managed PaaS
SQL-based rich queries over K-V ledger
P P
P
Pre-assembled Dependencies
- 39. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. |
Flexible, Global Blockchain Network Topologies
39
Customer DatacentersOracle Cloud Datacenters
On-premises or
3rd party cloud
Consortium member
remote OBCS node*
Open source deployed
on-premises or on a
3rd party cloud
*
- 40. Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Autonomous Features
Self-Driving
â Auto provisions all components & dependencies
â Integrated identity management
â Embedded back up, auto-recovery, monitoring
â Automatically scales out without downtime*
â Auto tunes performance settings to goals*
Self-Securing
â Adaptive intelligence-enabled cyber threat detection
and remediation through Identity Management Cloud integration
â Automatic data encryption in-transit and at-rest
â Automatic zero-downtime security patching
Self-Repairing
â Automated downtime protection â HA, auto-recovery
â Zero-downtime patching and upgrades
*Coming soon
- 41. Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Integration Accelerators for OBP
SaaS
SAAS APPLICATION
INTEGRATION TOOLKITS
âą Sample templates &
design patterns
âą Sample smart contracts &
integration components
ORACLE INTEGRATION
CLOUD
âą Adapters for Oracle &
3rd party applications
in cloud and on-prem
âą Turn application events
into REST calls to run
blockchain transactions
App App
SaaS
PaaS
ON-RAMPS WITH
EMBEDDED APIS
OPEN BANKING
API PLATFORM
REST API-DRIVEN
INTEGRATION
âą Invoke txnâs in sync
& async mode
âą Get txn status
âą Query ledger data
SaaS
PaaS
JAVA AND NODE.JS
CLIENT SDKS
âą Invoke txnâs asynchronously
âą Get txn status
âą Query ledger data
âą Subscribe to events
âą Add channels/peers
âą Enroll new members
PaaS
On-premises
SaaS
PaaS
Public or private
cloud
Legend
- 42. Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Console for administration, operations and
monitoring the blockchain network
Admin tasks
âą Bring up/down blockchain network and manage nodes
(peers, orderers, CA)
âą Configure network channels and policies
âą Deploy/instantiate/upgrade smart-contracts
âą Add/configure peers, orderers, CA, REST proxy
âą Join organizations to network and on channels
Monitoring & troubleshooting
âą View network topology
âą Monitor status of peers, orderers and other network
components
âą Monitor operations metrics
âą View ledgers blocks
âą View log files for troubleshooting
Administration/Operations
42
- 43. Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Automated Deployment/Upgrade of Smart Contracts
âą Package â create a zip pkg of the source directory on the
development side
âą Install
â Copies source package to requested peers
â Creates deployment spec
âą Instantiate
â Builds (compile/link) the GO code, creating a binary
â Binds it to a channel
â Creates execution container and load the binary
â Runs Init method in the chaincode, which can create new data
values in the ledger
âą Export REST end point for deployed chaincode
âą Invoke transactions from client SDK or REST proxy
â Calls Invoke method in the chaincode, which can run
functions that update or query the ledger
âą Upgrade â select existing chaincode on a channel, provide
new version
â Install & instantiate steps are automatic
- 44. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. Oracle Confidential. Internal Use Only.
Projects
44
Multi-brand loyalty
network
E-COMMERCE
Maritime shipping
documentation
LOGISTICS
CORP. FINANCE & FINANCIAL SERVICES
Excise Licensing
and Taxes
IMPORT/EXPORT
Solar Energy Project
Tracking & Rewards Solution
PROJECT MANAGEMENT
Food Provenance &
Quality Tracking
SUPPLY CHAIN
Bank
Guarantee
Funds
Transfer
Sample of ISVs
adopting OABCS
PHARMACEUTICALS Anti-counterfeit
drugs tracking
- 45. Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Learn More
http://oracle.com/blockchain
http://cloud.oracle.com/blockchain
http://developer.oracle.com/blockchainNext Steps
https://www.f6s.com/oraclescaleup
https://cloud.oracle.com/en_US/tryit