Full auditability powered by Corda & Oraclize: a trust-minimised
approach to Trusted Computing
Thomas Bertani
London - September 12th, 2018
Problem: the ā€œwalled gardenā€ limitation
DECENTRALIZED
APPLICATION
BLOCKCHAIN
Due to technical limitations, decentralized applications are walled in their own
garden and cannot fetch external data directly. Still, data-rich smart contracts are
enabling decentralized applications to have a concrete impact on the real-world.
Practically speaking, blockchain oracles provide a connection between blockchain
applications and any other context, like the Web.
Oraclize, today: the leading oracle service for blockchain apps
DECENTRALIZED
DATA-RICH
APPLICATION
BLOCKCHAIN
Oraclize implements an high security layer which enables the delivery of data to
blockchain applications. Along with data, Oraclize delivers ā€œauthenticity proofsā€ -
strong cryptographic guarantees protecting against data tampering.
Thanks to its security guarantees, to it being general purpose and to its integration
with multiple blockchains, Oraclize is today the most widely used oracle service,
being adopted by both blockchain startups and enterprises.
Oraclize on Corda?
What do oracles really bring to the
ledger?
ā— real world data
ā— data coming from different
contextes/networks
ā—‹ Internet
ā—‹ another blockchain
ā—‹ ..
ā— non-repudiable permanent
claims around some facts
ā— deterministic results on
non-deterministic
computations
ā€œoracles: network services that link
the ledger to the outside world by
providing facts that affect the
validity of transactions.ā€
(R3 Corda docs)
Corda is not a blockchain, but it has
a ledger in need of deterministic
logics. As such, its context cannot
reach out to non-deterministic
datasources.
Oracles 101: introducing three distinct entities
application
Requires the data.
(i.e.: a CordApp)
oracle
Provides the data.
(Corda Service)
data source
The data.
(Ledger agnostic)
Warning: security should NOT be compromised
DATA-RICH
CORDAPP
CORDA TESTNET
Being security one of the key features we wanted to get in the first place, it is important
that such security is not compromised when interacting with an external context.
When going from PoC to production, having a reliable technology is essential.
Oraclize implements an high security layer which enables the delivery of data to different
contexts. Along with data, Oraclize delivers ā€œauthenticity proofsā€ - strong cryptographic
guarantees protecting against data tampering.
The Oraclize solution
Oraclize acts as a data-carrier connecting two
contexts (like a given Corda network to a Web API) in
a standard and reliable way.
Along with the data that was requested, Oraclize
delivers ā€œauthenticity proofsā€ - strong cryptographic
guarantees protecting against data tampering.
a complete vendor-agnostic solution to authenticate
processes without relying on central points of failure
Trust model: authenticity proofs on data.. and offchain executions!
Based on TLS Notary Based on Trusted Computing Based on native signatures
Guarantees the authenticity of data
via a fully auditable challenge game
around the TLS handshake process.
Guarantees the authenticity of
data via multiple techniques
(sw/hw isolation):
ā— Qualcomm TEE
ā— Android SafetyNet
ā— Ledger Nano S Attestation
ā— Samsung Knox
ā— Intel SGX
Guarantees the authenticity of data
thanks to a specially crafted protocol,
defined by an IETF standard
proposal:
ā€œcavage-http-signatures-09ā€.
The signatures are provided by the
datasource directly and are on-chain
verifiable.
The Oraclize approach
DECENTRALIZED
DATA-RICH
APPLICATION
BLOCKCHAIN
+ thin connection
layer with multiple
blockchain
platforms
+ extends the
network
capabilities
+ Web APIs
+ different protocols
(IPFS/SWARM, ..)
+ auditable offchain
computation
+ multiple authenticity proofs (based on TLS Notary, on
Trusted Computing and on native signatures)
+ authenticity proof verification tool
Trust model: authenticity proofs
A
AA
B
BB
C
CC
The capabilities of an isolated context can be
extended thanks to claims backed by
attestation techniques (Trusted Computing, ..).
Oraclize leverages those techniques to offer a
reliable data-transport-layer connecting the two
worlds, where the security is granted by
cryptographic guarantees proving the
authenticity of data.
Today, Oraclize supports authenticity proofs
based on a variety of technologies.
Trust model: the importance of attestators diversity
It all comes down to attestation: the authenticated claim of an attestator which moves the trust away
from the operator to the attestator.
IF operator == attestator:
these techniques overcomplicate things (a signature is enough)
IF attestators come together in a consortium:
explicit agreement and intent to cooperate make this diversity weaker
IF independent third party uses these techniques as a service (Oraclize):
stronger claims obtained by the chaining of claims
Amazon
(TLSNotary)
Google
(SafetyNet)
Qualcomm
(Android
proof)
Ledger
(Ledger
proof)
Chain of claims coming from:
Bundling all these into a box: the Oraclize engine
TLS Notary
Qualcomm TEE
Intel SGX
Ledger TEEOther
Multiple layers of protection.
A
AA
B
BB
C
CC
Getting started: Oraclize on Corda
https://github.com/oraclize/corda-api
Demo / 1
Demo / 2
Trust model: authenticity proofs verification
Trust model: auth proofs verification on Corda
Thanks to the Corda architecture, verifying authenticity proofs before using
the data (coming from the oracle) is convenient, making the whole process
secure and seamless.
Find us on the R3 Marketplace
Oraclize on Corda?
What do oracles really bring to the
ledger?
ā— real world data
ā— data coming from different
contextes/networks
ā—‹ Internet
ā—‹ another blockchain
ā—‹ ..
ā— non-repudiable permanent
claims around some facts
ā— deterministic results on
non-deterministic
computations
ā€œoracles: network services that link
the ledger to the outside world by
providing facts that affect the
validity of transactions.ā€
(R3 Corda docs)
Corda is not a blockchain, but it has
a ledger in need of deterministic
logics. As such, its context cannot
reach out to non-deterministic
datasources.
Oraclize
World’s most widely
adopted blockchain
oracle service
Service running since
2015
Integrated with a variety
of blockchain platforms
Presented at 100+
conferences around the
world
500,000+ data-requests
processed on the
Ethereum Mainnet only
De-facto standard to
connect Dapps with
the real-world
DECENTRALIZED
DATA-RICH
APPLICATION
BLOCKCHAIN
Oraclize acts as a ā€œdata carrierā€, connecting
decentralized applications and Web APIs in a
standard, reliable and secure way.
Current status ~ the Oraclize adoption on Ethereum
850+ devs in
our community
500k+ API
requests from
Ethereum
mainnet
700+ public
GitHub
repositories
operating for 3
years
on mainnet (!)
tens of thousands
of
testnet queries
every day
Our numbers
ā— integrations with 6+ different blockchains:
ā— - Ethereum (both public and private) / BlockApps Strato / Quorum
ā— - Bitcoin
ā— - Rootstock
ā— - EOS
ā— - R3 Corda
ā— - Hyperledger Fabric
ā—
ā— authenticity proofs based on 4 different technologies/attestators
Ecosystem
Questions?
info @ oraclize.it
Twitter: @oraclizeit

DevDay: Full Auditability Powered by Corda & Oraclize: A Trust-Minimized Approach to Trusted Computing, Thomas Bertani

  • 1.
    Full auditability poweredby Corda & Oraclize: a trust-minimised approach to Trusted Computing Thomas Bertani London - September 12th, 2018
  • 2.
    Problem: the ā€œwalledgardenā€ limitation DECENTRALIZED APPLICATION BLOCKCHAIN Due to technical limitations, decentralized applications are walled in their own garden and cannot fetch external data directly. Still, data-rich smart contracts are enabling decentralized applications to have a concrete impact on the real-world. Practically speaking, blockchain oracles provide a connection between blockchain applications and any other context, like the Web.
  • 3.
    Oraclize, today: theleading oracle service for blockchain apps DECENTRALIZED DATA-RICH APPLICATION BLOCKCHAIN Oraclize implements an high security layer which enables the delivery of data to blockchain applications. Along with data, Oraclize delivers ā€œauthenticity proofsā€ - strong cryptographic guarantees protecting against data tampering. Thanks to its security guarantees, to it being general purpose and to its integration with multiple blockchains, Oraclize is today the most widely used oracle service, being adopted by both blockchain startups and enterprises.
  • 4.
    Oraclize on Corda? Whatdo oracles really bring to the ledger? ā— real world data ā— data coming from different contextes/networks ā—‹ Internet ā—‹ another blockchain ā—‹ .. ā— non-repudiable permanent claims around some facts ā— deterministic results on non-deterministic computations ā€œoracles: network services that link the ledger to the outside world by providing facts that affect the validity of transactions.ā€ (R3 Corda docs) Corda is not a blockchain, but it has a ledger in need of deterministic logics. As such, its context cannot reach out to non-deterministic datasources.
  • 5.
    Oracles 101: introducingthree distinct entities application Requires the data. (i.e.: a CordApp) oracle Provides the data. (Corda Service) data source The data. (Ledger agnostic)
  • 6.
    Warning: security shouldNOT be compromised DATA-RICH CORDAPP CORDA TESTNET Being security one of the key features we wanted to get in the first place, it is important that such security is not compromised when interacting with an external context. When going from PoC to production, having a reliable technology is essential. Oraclize implements an high security layer which enables the delivery of data to different contexts. Along with data, Oraclize delivers ā€œauthenticity proofsā€ - strong cryptographic guarantees protecting against data tampering.
  • 7.
    The Oraclize solution Oraclizeacts as a data-carrier connecting two contexts (like a given Corda network to a Web API) in a standard and reliable way. Along with the data that was requested, Oraclize delivers ā€œauthenticity proofsā€ - strong cryptographic guarantees protecting against data tampering. a complete vendor-agnostic solution to authenticate processes without relying on central points of failure
  • 8.
    Trust model: authenticityproofs on data.. and offchain executions! Based on TLS Notary Based on Trusted Computing Based on native signatures Guarantees the authenticity of data via a fully auditable challenge game around the TLS handshake process. Guarantees the authenticity of data via multiple techniques (sw/hw isolation): ā— Qualcomm TEE ā— Android SafetyNet ā— Ledger Nano S Attestation ā— Samsung Knox ā— Intel SGX Guarantees the authenticity of data thanks to a specially crafted protocol, defined by an IETF standard proposal: ā€œcavage-http-signatures-09ā€. The signatures are provided by the datasource directly and are on-chain verifiable.
  • 9.
    The Oraclize approach DECENTRALIZED DATA-RICH APPLICATION BLOCKCHAIN +thin connection layer with multiple blockchain platforms + extends the network capabilities + Web APIs + different protocols (IPFS/SWARM, ..) + auditable offchain computation + multiple authenticity proofs (based on TLS Notary, on Trusted Computing and on native signatures) + authenticity proof verification tool
  • 10.
    Trust model: authenticityproofs A AA B BB C CC The capabilities of an isolated context can be extended thanks to claims backed by attestation techniques (Trusted Computing, ..). Oraclize leverages those techniques to offer a reliable data-transport-layer connecting the two worlds, where the security is granted by cryptographic guarantees proving the authenticity of data. Today, Oraclize supports authenticity proofs based on a variety of technologies.
  • 11.
    Trust model: theimportance of attestators diversity It all comes down to attestation: the authenticated claim of an attestator which moves the trust away from the operator to the attestator. IF operator == attestator: these techniques overcomplicate things (a signature is enough) IF attestators come together in a consortium: explicit agreement and intent to cooperate make this diversity weaker IF independent third party uses these techniques as a service (Oraclize): stronger claims obtained by the chaining of claims Amazon (TLSNotary) Google (SafetyNet) Qualcomm (Android proof) Ledger (Ledger proof) Chain of claims coming from:
  • 12.
    Bundling all theseinto a box: the Oraclize engine TLS Notary Qualcomm TEE Intel SGX Ledger TEEOther Multiple layers of protection. A AA B BB C CC
  • 13.
    Getting started: Oraclizeon Corda https://github.com/oraclize/corda-api
  • 14.
  • 15.
  • 16.
    Trust model: authenticityproofs verification
  • 17.
    Trust model: authproofs verification on Corda Thanks to the Corda architecture, verifying authenticity proofs before using the data (coming from the oracle) is convenient, making the whole process secure and seamless.
  • 18.
    Find us onthe R3 Marketplace
  • 19.
    Oraclize on Corda? Whatdo oracles really bring to the ledger? ā— real world data ā— data coming from different contextes/networks ā—‹ Internet ā—‹ another blockchain ā—‹ .. ā— non-repudiable permanent claims around some facts ā— deterministic results on non-deterministic computations ā€œoracles: network services that link the ledger to the outside world by providing facts that affect the validity of transactions.ā€ (R3 Corda docs) Corda is not a blockchain, but it has a ledger in need of deterministic logics. As such, its context cannot reach out to non-deterministic datasources.
  • 20.
    Oraclize World’s most widely adoptedblockchain oracle service Service running since 2015 Integrated with a variety of blockchain platforms Presented at 100+ conferences around the world 500,000+ data-requests processed on the Ethereum Mainnet only De-facto standard to connect Dapps with the real-world DECENTRALIZED DATA-RICH APPLICATION BLOCKCHAIN Oraclize acts as a ā€œdata carrierā€, connecting decentralized applications and Web APIs in a standard, reliable and secure way.
  • 21.
    Current status ~the Oraclize adoption on Ethereum 850+ devs in our community 500k+ API requests from Ethereum mainnet 700+ public GitHub repositories operating for 3 years on mainnet (!) tens of thousands of testnet queries every day
  • 22.
    Our numbers ā— integrationswith 6+ different blockchains: ā— - Ethereum (both public and private) / BlockApps Strato / Quorum ā— - Bitcoin ā— - Rootstock ā— - EOS ā— - R3 Corda ā— - Hyperledger Fabric ā— ā— authenticity proofs based on 4 different technologies/attestators
  • 23.
  • 24.