Skip to content

Latest commit

 

History

History
21 lines (13 loc) · 3.34 KB

3.1.3-oracle-framework.md

File metadata and controls

21 lines (13 loc) · 3.34 KB

3.1.3 Oracle Framework

Blockchain oracles are entities that connect blockchains to external systems, thereby enabling, e.g., smart contracts to execute based upon inputs and outputs from the real world. Integritee aims to maximize interoperability by bridging the gap between Web3 and Web2. We provide a trusted oracle solution, which makes Web2 data available with non-repudiation to all projects in the Polkadot ecosystem and beyond: TEEracle.

TEEracle is a customizable framework to easily build trusted oracles that provide API data to any Substrate-based blockchain in a secure and efficient way. Source-authenticated data is served to our Integritee parachain and can subsequently be consumed by any other parachain in the network, through means of XCMP or read proofs. While TEEracle is currently tailored for projects in the Polkadot ecosystem, we are working on extending our oracle framework to build services that can provide oracle data also to block-chains outside the Polkadot ecosystem.

Our framework allows to implement timestamped custom oracle services, i.e., queries can be customized according to a project's specific needs:

  • Custom data requests: The source of data, the content to be retrieved as well as the returned data type can be customized.
  • Custom schedule: The frequency and duration of the queries can be flexibly adjusted.

TEEracle is relevant to any dApp provider in need of Web2 data. Let’s consider a flight delay insurance dApp. For the smart contract, Web2 information about delays must be transmitted to the blockchain. TEEracle enables to quickly build an oracle service that retrieves the required flight delay data for the smart contract logic. Another example use case that has been built on our network with TEEracle is the query and registration of the USD/TEER exchange rate on our parachain.

Using our framework, the oracle service is instantiated within a Trusted Execution Environment (TEE). The integrity of the TEE and the code executed within (in this case: the oracle service) can regularly be verified on our parachain through our complementary remote attestation service (see Attesteer). By setting the oracle service up in a TEE and verifying the services’ integrity, we can offer the security of a decentralized oracle and match the efficiency of a centralized provider. Some of the benefits of using our trusted oracle framework are the following:

  • Secure and trustworthy by design: Instantiating the oracle within TEEs ensures the service’s cyber security, as the code is processed in a safe environment.
  • Verifiable integrity: The integrity of the oracle service running within TEEs can be verified and registered on our Parachain, fostering transparency and user trust.
  • Superior interoperability: Oracle services built with TEEracle can provide information to any blockchain.
  • Highly flexible and customizable: TEEracle allows building custom oracle jobs – for example, freely choose the data source, content, data type, transformation and schedule.

Setting up the infrastructure for TEEracle-built oracles requires using nodes that support Intel Software Guard Extension (SGX) technology. We readily offer the required secure infrastructure with our subsidiary Securitee (see chapter 3.5).