Blockchain oracles are one of the critical components helping bridge the divide between the real and digital worlds. Oracles are third-party services that provide blockchain platforms with information about external real-world events as well as external digital events. Data from oracles power . Smart Contracts and DAOs Oracle Definition A blockchain oracle is a trusted third-party service that provides smart contracts with authenticated external data sources from the real world through an API. Oracles connect smart contracts with events in the outside world. Smart contracts often need to be triggered by an external event. Oracles can be created to provide a wide range of data to smart contracts. For example, an oracle could provide real-world weather data, outcomes of events, outcomes of legal cases, financial statistics, economic data, interest rates, market data, performance data from a vehicle or machine, and so on. The important thing to remember about oracles is that most smart contracts are meant to be executed when a condition is met in the real world. Oracles are trusted sources that can provide authenticated data about real-world events. Software Oracles Software oracles provide digital information to blockchains. The information they provide exists on other websites, servers, databases, etc. Some examples of the data that software oracles provide include prices of stocks, exchange rates, cryptocurrency prices, and prices. NFT Hardware Oracles Hardware oracles help connect blockchain platforms with events in the real world. This data is gathered from the real world using sensors and reading devices and transmitted to blockchain platforms. Hardware oracles can send data to blockchain platforms from the following sensors: thermometers, RFID readers, barcode scanners, electronic sensors, and other . IoT devices The Blockchain Oracle Problem Blockchain platforms' decentralized and distributed nature makes them secure and trustworthy. Data provided by a centralized oracle presents security issues; for example, if the centralized oracle provider is compromised, then it could send erroneous data into the blockchain. The incorrect data could then compromise the integrity of the blockchain. Solving the Blockchain Oracle Problem: Decentralized Oracles Decentralized oracles help solve the blockchain oracle problem. While developing a smart contract, you could use a decentralized oracle to provide data to it, or you could enable it to get data from multiple oracles and only trigger an event when the majority or all of the oracles offer the same input. There has been some debate about oracles getting compromised. In the case of larger bets, smart contracts can add multiple oracles to ensure that numerous sources or oracles validate the same outcome. For example; if two users place a bet in the form of a smart contract and the triggering event is the outcome of a basketball game, then we could write a smart contract that requires five oracles to participate, let’s say ESPN, NBC Sports, CNN Sports, BBC Sports, and Yahoo Sports. The smart contract can require all five oracles to signal the exact outcome before it can be executed. Other Types of Blockchain Oracles send data from the real world or another digital platform into a blockchain platform or smart contract. Most oracles, as of this writing, are input oracles. Input or Inbound Oracles On the other hand, send information from a blockchain platform or smart contract to an external source. Output Oracles For example, if a smart contract is concluded, an output oracle can trigger an event in the real world – such as giving access to a website or a hotel room once payment has been received. are focused on interoperability between blockchain platforms. Cross-Chain Oracles These types of oracles enable users to build applications and services that are accessible and functional across different blockchain platforms. are currently only provided by Chainlink. Some computation is impractical to do on-chain because of legal, financial, or technical constraints. Compute-Enabled Oracles Compute-enabled oracles provide decentralized services using secure off-chain computation processes. Rather than simply presenting the results of a query, compute-enabled oracles can perform intricate and complex calculations off-chain and then send the result to a blockchain platform. are suitable for specific situations. As their name suggests, they are oracles that are calibrated to work with a single smart contract. Contract Specific Oracles They are created from scratch with the objective of serving a very specific use case. are people with specialized knowledge who can act as oracles; their reputation is the key factor that incentivizes them to present the correct information to smart contracts. Human Oracles Popular Oracle Providers While Chainlink is the biggest oracle provider as of this writing, the following protocols also provide various oracle-based services: Universal Market Access, Winklink, Band Protocol, iExec Cloud Platform, Tellor, DIA, Truebit, Terra, and Flare. Several other platforms are under development. Oracle Uses There are numerous possible use cases for oracles. Below are the use cases with the highest levels of adoption as of this writing: uses oracles to get financial data about various assets, markets, and user creditworthiness. DeFi can connect their off-chain operations to their on-chain logic through input and output oracles. Enterprises & DAOs This could allow them to automate their logic and perform complex operations using their digital and real-world assets. use oracles to update their metadata or features based on real-world events and assign randomized traits to them. Dynamic NFTs utilizes oracles to generate verifiable randomness to create randomized events and unpredictable and engaging gameplay in on-chain games. Gaming applications and smart contracts verify the occurrences of insurable events using input oracles. Examples of this are legal data, data from physical sensors, satellite imagery, and API calls from websites. Insurance projects use hardware and software oracles to receive environmental data. Sustainability This data includes satellite imagery, sensor readings, temperature and humidity data, and weather information. Computation of this data allows these protocols to dispense rewards to users engaging in conscious consumption or other practices outlined by the platforms. Several carbon credit-based protocols are also using oracles to enhance their operations. Conclusion Oracles are a critical tool helping bring the digital and physical worlds closer together. They are also helping extend the capabilities of blockchain networks. Oracles combined with smart contracts help secure contractual agreements, simplify arbitration, and create a level of automation. Input and output oracles used together help create that can operate and utilize digital and physical assets autonomously and efficiently. systems -- Shaan Ray Also published here