On REN you can build a lot of interesting things, recently discussed the possibility to build a decentralized Oracle, I'll just copy the discussion text:
C:
I have been thinking about sMPC-powered, incentivized, permissionless (bft), and on-demand Oracle
m:
What information would that provide? Sounds really interesting
C:
Price feeds to start with, expand over time, ideally in a no-governance no-coordination fashion .. node runners coalesce around a feed in a decentralized fashion .. each node runner opt-in to contribute a feed with skin-in-the-game ("I attest that ETHUSD price is x at this Unix time interval and I am willing to stake $x to back that and willing to get slashed if majority of the network says otherwise).
sMPC is powerful because malicious actors commit to their feeds before discovering what everyone else's feed was. sMPC also protects consumers of feeds such that the network is unaware of what is at stake when such consumers act on those feeds
M:
This makes me think of some sort of Uniswap-style oracle. Let's say each request from the oracle costs some small fee. Each input-provider gets a share of that fee in proportion to how close their input was to the combined inputs. At a certain distance away from the combined input you get into the slashing-region instead, where the farther you are the more you get slashed (we're still talking small absolute slashing). This would incentivize each input-provider to source the best data they can.
C:
Ya this is an interesting model of how reporting/consumption would work internally.. sMPC is useful in making the reporting/consumption happen "in the dark" .. that I believe increases the robustness of the Oracle (e.g. if I collude with lots of stakers to fudge the feed I'm afraid of someone even more powerful lurking in the dark waiting for a sign of misbehavior so they slash the hell out of me and walk away with so much staked money. You as a reporter do not know what others reported nor do u know who consumed the feed)
L:
Using sMPC to build oracles is a really neat idea. The technique used is actually something RenVM already kind of does in a very specific way in order to get truly random numbers in each block.
This isnt the way it does that, but in general, if youre trying to oraclise a numerical value that makes sense to average, you can ask all Darknodes to propose their value in secret, take 2/3rds of the answers, reveal them and order them, take the middle 50% and average the result. This has a 1/3rd safety and liveliness threshold. Its a pretty neat idea because it protects against the classic problem of not revealing data if you know its not favourable. Its also non-punishing for Darknodes that might get the answer slightly wrong because the API/data-source it uses has been attacked.