Oracles

Oracles

Target release

Venus

Epic

Document status

DRAFT

Document owner

@Medha Parlikar (Unlicensed)

Designer

Developers

QA

Goals

  • Reduce Risk, Growth

Background and strategic fit

An Oracle is a trusted contract/program that produces a result with some reliability.  In Ethereum, Oracles watch the blockchain for events and respond to them by publishing the the results of a query back to the smart contract.  When smart contracts need to interact with the 'off-chain world', Oracles can provide these results back to the blockchain.  Oracles can be used in Trusts or Escrows.  For example, a Trust contract will hold monies until an Oracle indicates that a condition in the trust contract has been met.  

Assumptions

Requirements

Title

User Story

Importance

Notes

Title

User Story

Importance

Notes

1

Operates on and off the blockchain

As a contract developer, I require the ability to check if an external condition has been met so that my contract can execute to completion

Must Have

2

 Trusted Oracle

 As a contract developer, I have to know how much I can trust any given Oracle so that I can trust the data it returns.

Must Have

  •  

User interaction and design

Questions

Below is a list of questions to be addressed as a result of this requirements document:

Question

Outcome

Question

Outcome

Oracle Trust will be determined via reputation in addition to type check?

Not Doing