Oracles on PredIQt
One of the central challenges for blockchain-based decentralized applications is what’s known as the oracle problem. Blockchains are closed systems with no knowledge of the outside world; if an application or smart contract wants to reference data that isn’t on the blockchain itself, it must rely on a trusted bridge to deliver that information from the real world to the blockchain. These bridges are known as oracles, and they can often be the weakest or most centralized part of an otherwise fully decentralized system. Blockchain applications that rely on oracles must find ways to minimize the amount of trust required in the bridge that delivers the information, so that they can have confidence that the information brought on-chain reflects reality and isn’t subject to censorship or manipulation.
For blockchain-based decentralized prediction markets like PredIQt, the oracle problem is especially relevant. Nearly every market that is created will likely reference events or data that exist outside the blockchain — political elections, sports matches, asset prices, and more. In order for a market to be resolved, there needs to be some source of truth (the oracle) that takes that outside source of information and logs it on-chain in order to trigger the payout of the smart contract. Centralized prediction markets simply rely on their operating company to resolve markets. This model creates a single point of failure that can be manipulated or censored. In order to avoid those issues, decentralized markets like PredIQt must use new models to ensure accurate information reporting without a central source of authority.
In this article, we’ll provide an overview of the PredIQt approach to oracles. We will discuss the oracle system that we’ve put in place for the beta launch of PredIQt, as well as the various other models that we will integrate and experiment with in the near future.
One of our key learnings from observing other blockchain prediction markets in action is that a single type of oracle is not the right fit for every type of market that can be created on PredIQt. Different markets have different requirements — a week-long market for a single regular season basketball game and a year-long market for the 2020 presidential election involve different stakes and may use different oracle types accordingly.
The goal of the PredIQt protocol is to support any type of oracle that users can integrate. This will allow for maximum flexibility, experimentation, and user options. In other words, PredIQt will enable a market for oracles that fosters competition among various oracle systems to offer the strongest guarantees, fastest resolutions, and most consistency to users.
PredIQt Beta MVP
Towards the end of this month, we plan to launch our MVP beta version of PredIQt, where early users will be able to participate in markets and test out of the functionality of the product. We’re very excited to share this with the community!
The PredIQt MVP will feature a small number of curated markets that will be resolved via a multi-sig contract of trusted EOS community members, including BPs and proxies. A multi-sig is a contract that requires multiple independent parties to sign a transaction before it can be executed. There will be five independent and reputable EOS community members participating in the multi-sig, and markets can only be resolved when at least three out of five agree on the outcome of a market. This system allows us to leverage the public reputations and pre-existing trust that these parties have garnered within the EOS community, as well as the fact that they are independent entities, to create a system that does not rely on any single party but can still provide the speed and flexibility needed in the early states of testing the PredIQt protocol publicly.
The following community members will participate in the PredIQt MVP mutli-sig:
Other Oracle Models
As we move from MVP to public launch, we will add support for new types of oracles that can be utilized by market creators. Further, we expect that members of the IQ Network community will create other systems that can be integrated into PredIQt in the future. Below are a few of the oracle types that we expect to see used in PredIQt markets.
- Distributed Resolution via IQ Tokens
The IQ token is the economic core that powers the entire IQ Network of dApps. Currently, IQ tokens are needed to create markets on PredIQt. In the future, we plan to use IQ tokens to power a decentralized, fully distributed, Schelling-point consensus oracle system that can be plugged into PredIQt markets.
This system will function similarly to the REP system on Augur, where token holders have the ability to post bonds to dispute the outcome of a market, and other token holders can vote on the outcome in subsequent rounds. We will be releasing more information about this system in future blog posts after the PredIQt MVP launch.
- Centralized Oracles
PredIQt markets allow market creators to specify any EOS account as the resolver. As such, it’s possible to have a market that is resolved by a single party. While this creates a single point of failure for any market and involves a certain amount of risk, it is also likely the fastest option for market resolution. In some cases, we may see single centralized resolvers that leverage their public reputations or utilize slashable security deposits as incentives to behave honestly. In other cases, we may see centralized oracles as a first step, with other, more decentralized oracle systems built in as backups in the case that the outcome is contested.
- Trusted Data Feeds
Trusted data feeds like Provable, ChainLink, Town Crier, and others are useful services that allow developers to create oracles that pull information from a centralized source but offer proof that the data has been securely transferred. For example, a market can pull from a web-based API like NBA.com to collect results from basketball games. Users can see proof that the data was not tampered with in the transmission process from NBA.com to the blockchain. In other words, users only have to trust that the data source itself is secure, as the bridge to the blockchain is provably secure and transparent.
These options offer a useful middle ground between centralized oracles and fully distributed ones that may be useful in certain types of markets.
- LiquidApps DSPs
One of the oracle options we’re most excited about is the oracle service being offered by LiquidApps dApp service providers (DSPs). DSPs are blockchain-specialist service providers that cater to dApps built on EOS, providing a variety of off-chain services that dApps require. DSPs are unique in that they offer strong security and auditability guarantees to their clients, both through the use of Merkle trees, as well as a tokenized economic incentive system that underpins the entire network. For oracle services, multiple DSPs can be linked together for redundancy and further decentralization. The LiquidApps team dives further into their oracle software in this article.
- Multi-Signature Oracles
One of the best features of the EOSIO software is the native support for multi-signature transactions. Market creators can utilize this multi-sig feature to distribute market resolution among as many participants as they’d like. Because these features are built into the account system of EOS, PredIQt will offer support for multi-sig resolutions from day one. We’ll also use multi-sig resolutions for the initial markets in our beta launch.
- Resolution-as-a-Service DACs
DACs and DAOs are decentralized organizations that help coordinate distributed groups of individuals towards a common goal. One of the unique things about PredIQt is that it offers a reward to market resolvers that allows for resolvers to offer for-profit resolution-as-a-service. The groups that offer the strongest guarantees to users (both from past reputation for being honest as well as a decentralized architecture) will be used in the most critical markets, which will then generate the most outstanding interest and profit for the resolvers. As such, we believe that we will see DACs created specifically for the purpose of providing PredIQt market resolutions. These DACs could take any number of forms, from a multi-sig of publicly known individuals, to a tokenized and custodian-based system like that of eosDAC, and many other potential forms. In theory, it could even be possible for someone to fork the existing distribution of REP or GNO, port them to EOS, and offer users of those prediction markets the ability to participate in PredIQt resolutions, earning resolution fees for doing so. We are extremely excited about the possibilities for resolution DACs. We’ve discussed the concept with a number of prominent leaders within the EOS community, and we will be releasing more research and thoughts on this topic in the near future.
The PredIQt protocol was designed to offer maximum flexibility to market creators and market participants, avoiding some of the problems that have arisen as a result of one-size-fits-all resolution systems in other prediction market projects.
Ultimately, we will allow the market to dictate which models succeed for different markets. Users will only participate in markets that offer them strong guarantees around market resolution, so market creators have a strong incentive to choose models that users trust.
As PredIQt develops, we look forward to seeing more community members experiment with different approaches to market resolution. If you’d like to get involved or have interesting ideas, join our PredIQt Telegram group, and follow us on Twitter!