1

I was reading since every node has to execute a smart contract and receive the same result, Ethereum smart contracts can't go out to the Internet to verify data. So how do these sites that bet on sports game outcomes deal with this (e.g. https://cryptosportz.com/ )? Or maybe not even betting but weather or other facts that are available online, but would be hard to figure out without online access?

0

They're using Oracles: external services that are authorized to modify some data (like the result of a football game) in the smart contract.

Update, based on the comment on this post:

I added the above short definition of what an Oracle does, in case the linked article disappears (although, a search for ethereum oracles should yield other interesting results). But I wouldn't duplicate other people's blog posts in the answer either.

Yes, anybody can build an oracle. Oracles are basically doing 2 things:

  1. scraping data off a site
  2. writing that data into a smart contract.

The smart contract expects that data to be recorded at one moment in time and when it is, it executes some code (like settling the bet).

  • I have read that SO discourages the posting of links because they tend to break or change and prefers relevant parts being copied and pasted into the answer. So specifically can anyone create an oracle? Why are they better than scraping data off a web site? Where do oracles get their data from, if not web sites? – Dave Jun 13 '18 at 18:52
  • @Dave They essentially are data-scrapers. If I'm not mistaken, they are called oracles as that is the role they serve smart contracts, external validators because on contract validation is expensive. – Meshugah Jun 14 '18 at 20:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.