Come with questions. Leave with answers.
What is the Oracle Dilemma?
In case you’re new to blockchain, data stored in blockchain cannot be altered, only added to. As this data is added and secured, it forms a chain of blocks of referencing data that are interlinked together cryptographically, and this is where the name comes from. And this is also where the problem appears.
The problem is not obvious to those outside of the blockchain industry and many blockchain developers themselves are not even aware of this problem until they encounter a particular need: blockchain itself is limited in its capabilities since it is unable to connect to data in the outside world. In other words, Oracles are the means in which to connect external, real-world data into blockchain thereby greatly expanding the possibilities of what you can do with the technology.
You can’t easily bring external data into the blockchain because it’s a closed-loop system. If you are a developer new to blockchain reading this… surprise! It’s not as simple as creating an API to link your external data to your smart contract… This is a good thing for those who want to keep their data secure. It poses a challenge for those trying to create decentralized apps or smart contracts though.
Cross-chain Blockchain Oracles. Oracles are systems of nodes and protocols you can use to connect external data to blockchain or even create communication channels, interoperability, between multiple closed-loop systems.
These attack vectors will continue to hamper the market and will be targeted until a secure solution is enabled. This is due to the limitations of current Oracle solutions:
Lack of Transparency
No entity is able to provably examine the precision of price reported by Oracles, leading to undetectable misbehavior.
Price Delay & Deviation
Transfer of asset pricing from off-chain to on-chain can cause small deviations. Time delay from the event until it is placed on the external chain is significant in a dynamic market.
Lack of Accountability
Oracles should be accountable for their actions. Security should be further guaranteed by the base protocol layer.
All existing blockchain Oracle solutions are trying to balance the tradeoff between decentralization, scalability, security, and finality. No one has been able to crack this quadrilemma until Supra (more to be shared soon!). As blockchain developers ourselves, we knew it was critical to bring a better Oracle solution to the market.
Why is “Decentralized Finance” important?
DeFi puts the power of finance back into the hands of ordinary people. Instead of being forced to use banks and other centralized institutions, customers can hold onto—and invest their own money directly and securely.
In essence, DeFi means that you own your own money and have access to a new universe of ways to invest it. By increasing industry competition, DeFi also empowers independent developers and entrepreneurs to provide better banking and investing solutions for everyone.
In addition to providing revolutionary new products and services, DeFi also forces traditional financial (TradFi) institutions to up their game and provide better services to their customers.
What are oracles?
Blockchain oracles are services that connect blockchain smart contracts to real-world data. Since blockchains are typically closed systems, they rely on additional layers of infrastructure to acquire and ingest data. Most smart contracts need outside, real-world data to operate, such as the current price of cryptocurrency for an exchange contract, or the outcome of a certain real event for a betting platform.
Blockchain oracles can be either centralized or decentralized. Centralized oracles are controlled by a single entity and generally rely on a single data source for their information. In contrast, decentralized oracles use multiple, independent data sources that do not coordinate with each other. This can be ideal for smart contracts that need faster, more accurate data.
What are smart contracts?
A smart contract is a computer program stored on a blockchain. Smart contracts automatically execute commands when specific conditions are met. Common smart contracts include agreements between buyers and sellers to swap tokens or to execute legal contracts.
Smart contracts can also send cryptocurrency to a certain address when a certain real-world event occurs, such as in the case of blockchain or DeFi insurance for hacking or weather events.
Smart contracts form the core of blockchain and DeFi applications, as no human intervention is needed to execute the contract after both parties agree to it. This creates “trustlessness” since you do not need to trust a third-party to execute a transaction, only the quality of the smart contract itself. Smart contracts cannot be changed once they are created, which helps avoid manipulation by bad actors.
This FAQ is just getting started.
We’ll be adding more top questions regularly. If you have any specific questions, please contact us.