Dave Jones

Apr 18, 2019

6 min read

Solving the ‘Oracle Problem’: Bonding Zap for Data and Profit

The biggest hurdle to the mainstream adoption of smart contracts is the ‘oracle problem’: The challenge of delivering trusted data to the blockchain. The decentralized Zap marketplace (token ticker $ZAP) is an innovative market solution for incentivizing the creation and curation of useful oracles.

In order for smart contracts and decentralized applications to operate based on real-world events, there must be a trusted way of conveying the state of those events to the blockchain. Many solutions have been proposed, ranging from trusted intermediaries (totally centralized, i.e. Bloomberg delivering financial data) and distributed consensus protocols (totally decentralized, i.e. the settlement protocols proposed by Gnosis and Augur). There are advantages and disadvantages to each approach, especially depending upon the event in
question.

Rather than select one oracle model to work for all situations where the blockchain needs data, the Zap marketplace is designed as an easy to use market that incentivizes the creation of new oracles and incentivizes the curation of existing oracles, with the thesis that the market (or end users) will select for the ideal and most honest oracle for each type of data.

Rendering of a third-party gateway to the Zap marketplace

In order to launch or interact with a specific oracle on the decentralized Zap marketplace, you must first bond $ZAP tokens to that oracle, locking that $ZAP and producing a number of “dots”. A dot is an access token payable to the oracle for a single query. Dots cannot be exchanged between addresses, and are not divisible. Anyone who wants to access an oracle’s data must first bond $ZAP to that oracle, producing a private supply of dots.

In summary:
• Dots are produced by bonding (locking) $ZAP to an oracle.
• One dot is equal to one call to that oracle.
• Dots can be produced at any time according to a price set by the smart contract.
• Dots get more expensive as more are produced.
• The $ZAP bonded to produce dots is held by the oracle.
• At any time, dots can be redeemed (destroyed) in exchange for $ZAP held by the oracle.

This non-intuitive functionality was inspired by Simon de la Rouviere’s work on Curation Markets for optimizing the spread of useful information in social networks, and the goal is quite similar: incentivizing the spread of useful oracles for decentralized applications.

How does this work in practice? Let’s look at a sample oracle live sports scores. In the process of creating the oracle, the data provider decides on a dynamic exchange rate of $ZAP for Sports Score dots.

Alice is building a fantasy football Ðapp that requires real-time data of player stats as the season progresses. She decides she needs a lot of dots and bonds 20 $ZAP to produce 20,000 dots at an average price of 1 $ZAP per 1000 dots. This increases the total supply of dots from 20,000 to 40,000 and the price from .8 to 1.2 $ZAP per 1000 dots.

Later, when the football season is in full swing and many competing Ðapps are using the Sports Scores Oracle, Bob produces 20,000 dots, paying an average of 4 $ZAP per 1000 dots, and in the process raising the price to 5.1 $ZAP per 1000 dots.

Alice still has an interest in the data, but decides that each call is worth significantly less than the current price per dot. After all, the current price is more than 5 times what Alice originally paid. So Alice decides to redeem 10,000 dots for 46 $ZAP, reducing the supply to 90,000 and the price to 4 $ZAP per 1000 dots. Alice profits substantially while retaining a large supply of dots and always has the option of producing more dots should the need arise.

Perhaps the most exciting aspect of the Zap bonding mechanism is that oracle creators decide for themselves the supply/price function. With thousands upon thousands of individual oracles, the Zap ecosystem is likely to become a testing ground for economic incentivization. Depending on the oracle, creators might prefer a steeper curve to reduce the number of calls, or a simple linear function allowing for unlimited growth. In time, users will discover and gravitate toward bonding variables that incentivize both truth and profit, and in the process potentially discovering entirely novel cryptoeconomic mechanisms.

Certain oracles, like a stock ticker that updates every minute, might have relatively inexpensive dots, measured in fractions of a $ZAP, where more valuable oracles, like football stats for settling high-stakes smart contract mediated bets, might have dots worth many hundreds of $ZAP each.

Because the value of data is time-sensitive, the $ZAP/dot exchange rate will necessarily fluctuate over the lifetime of an oracle. Because dots cannot be traded on exchanges, the mechanism for determining the exchange rate is hardcoded into the oracle contract itself.

The default exchange rate is a linear curve combined with a gradual exponential curve, such that price increases as supply increases. This may seem counterintuitive to the economics of supply and demand, but because dots cannot be exchanged and only function as access tokens for the oracle that produces them, in this case the supply is the demand.

Rendering of a third-party gateway to the Zap marketplace

As more users bond to the oracle, demanding data, the price increases. Eventually, the price per dot will become higher for some users than the value of the data. But users can at any time redeem any number of dots for $ZAP at the current exchange rate, reducing the supply of both $ZAP and dots controlled by the oracle. This enables early adopters to profit from identifying and bonding to useful oracles, even if they don’t end up making use of the data themselves.

In short, the $Zap/Dot bonding mechanism is designed to attract users to the platform in a virtuous cycle, and to act as a curation tool for the behaviour and quality of oracles;
• Incentivize data providers to populate a young ecosystem with new oracles.
• Incentivize speculators to fund oracles they predict will be useful in the future.
• Incentivize oracle creators to launch honest and high-quality oracles

— — — —

The decentralized Zap marketplace is directly accessible at http://admin.zap.org with $ZAP bonded to oracles live on mainnet today. Try it out yourself!

Also be sure to check out:
https://oraclemarketcap.com/
https://myoraclewallet.com
https://www.zap.org/
https://t.me/ZapOracles

And our own, un-official Zap Community channels at https://discord.gg/QTGsczR and https://twitter.com/ZapUnofficial!