Title: eIP 56: Add the Tellor Oracle
Author(s): Michael Zemrose & Ryan Hill
Related Discussions: **
eip 48 , eip 18**
Submission Date: 03/08/2023
Simple Summary
This proposal calls for the addition of Tellor as an oracle pricing type to the Euler protocol. It is submitted by Michael Zemrose & Ryan Hill, who are part of the Business Development team at Tellor.
Abstract
Currently, Euler leverages the ability to choose the oracle for each individual market between Uniswap or Chainlink. Adding Tellor would enhance the options in the following manner:
- Censorship-resistance
- Manipulation resistance
- Flexibility of adding new feeds
Motivation
The design of certain oracle solutions can be limiting for the Euler protocol. Whether it’s relying on a multi-sig, being tied directly to limited onchain liquidity, or being at risk of attacks by the chain’s validators; getting oracles right is a hard task full of trade-offs. Tellor adds a dynamic layer for Euler’s users in multiple ways that open up more possibilities and solve different problems the current oracle options fall short on. Namely: flexibility and censorship-resistance (including manipulation).
- Flexibility - Currently, Euler users are tied to limited optionality when it comes to their pricing type. This is because if Chainlink does not already provide a price-feed, they are forced to reside with the default Uniswap option, whose risk has been thoroughly discussed in the eip 18. Adding the Tellor oracle enables users of these smaller markets another option, as Tellor is permissionless. This means anyone can incentivize Tellor’s decentralized network of reporters to provide pricing data for any price pairings they like. This maps well to Euler’s motto of allowing users to lend and borrow almost any crypto asset.
- Censorship-Resistance - What allows the Tellor protocol to be both decentralized and censorship-resistant is built into the design on a smart contract level. It’s permissionless, in that, becoming a data reporter in our system, adding new data feeds, and using the oracle are all completely unbound from requiring any approval by a third party including the Tellor team. Data reporters are required to stake a bond in our smart contract, and that can be slashed through its dispute mechanism. This dispute mechanism robustly secures the data feeds and it also means that none of the data that gets reported by the oracle is trusted, rather it is scrutinized by an open network of incentivized actors.
Tellor has been a prominent secondary solution to Chainlink in the space, most notably Liquity and Ampleforth, so if the Euler community has been comfortable with the addition of Chainlink, they should feel assured they are in good company. With respect to Euler’s appreciation for permissionless fundamentals, adding Tellor to the mix addresses this specifically.
In adding the Tellor oracle pricing type as an option for Euler markets, the Euler community will have more optionality when it comes to oracles for newer markets (and new chains) open to it that align with its own principles of permissionless access to lending markets.
What price feeds does Tellor support?
Tellor can be used to get any price feed (or any other verifiable data) onchain. It’s a permissionless oracle, so it wouldn’t have to go through us to get set up.
New pairs can be added to our reporting client easily so that reporters can be ready to submit the data automatically when and update on the new feed is requested.
Specification & implementation
If passed, the respective contracts should be updated to reflect the new Tellor pricingType, similar to the code changes reflected in eip14.
This oracle alternative was made possible by the recently passed eIP 14 and the implementation is similar to that called for in eIP 16 1 1.
Conclusion
These changes will add a third oracle option for all markets on Euler, providing users access to an extra dynamic of pricing data that is flexible, permissionless, and censorship-resistant. We are eager to receive any and all feedback as we ultimately only want to see this proposal move forward if it adds significant value for the Euler community.