Chapter 10. Oracles and Corda Services

Oracles are independent third-party services that provide information to or attest to information for one or more clients requesting it in a transaction. A client request comes in the form of a node proposing a transaction, which we’ve seen in prior chapters, where the oracle is asked to verify some portion of or insert information into a transaction and then digitally sign it. To all the other participants of the transaction, the oracle’s involvement provides valid, reliable, and authoritative input that the other participants do not and should not have to rely on one another for due to the assumption that parties are economically adversarial.

An example of such an oracle is an authority on stock prices. If a trader wants to buy a stock and another trader wants to sell the stock to the buyer, both traders need to agree on price. In the large public equities market, the two traders can easily obtain the current market price of the stock and trade from a number of providers or exchanges. The provider of the market price would be an ideal candidate for an oracle, making available and/or inserting the pricing information of the stock into the trade transaction. An oracle is ever more required in a distributed or decentralized world where any peer in a Corda network cannot alone be trusted to be the price setter. Would you let a stockbroker freely set the price for stock they’re selling you, or would you like to trade at or near the market price? ...

Get Mastering Corda now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.