Demystifying Blockchain: The Building Blocks
In the first installment of this three-part series, we discussed the function and importance of a blockchain node, as well as the process of running an independent node; the post can be found here.
As we now know, blockchain has proven to have the potential to reimagine how companies operate. At its core, blockchain leverages a shared digital ledger of transactions that are immutable and distributed across the entire network of nodes on a given blockchain. Data is recorded and secured through network nodes that hold a copy of the blockchain, therefore making the transaction more secure by the number of nodes in a given blockchain that participate in the validation of blocks.
These transactions are executed without relying on third parties. From an enterprise perspective, this has the potential to streamline business processes at scale, such as tracking supply chain goods or settling cross border payments. With that being said, enterprises must consider the exchange of data between the blockchain and external systems. However, blockchain itself does not access data from external sources, meaning a mechanism that provides data to blockchain is required. This can be achieved by using oracles — let’s explore further…
Blockchain Oracles
One of the principal challenges associated with blockchain today is addressing how on-chain smart contracts can make use of external off-chain data in order for those smart contracts to have real-world applications. An oracle makes it easier to connect real-life data with on-chain activities. With oracles, users are able to make blockchains more useful in their daily lives.
Simply put, blockchain oracles are computerized systems that connect data from outside of a given blockchain (off-chain), with blockchain activities (on-chain). The blockchain uses this data to automatically execute transactions.
Oracles come in many forms. They act as a two-way line of communication transmitting data to and from the blockchain, and they can work on both hardware and software, differentiated by software oracles transmitting data from digital sources such as websites, servers, or databases, and hardware oracles delivering and relaying information from IoT devices, like barcode scanners or thermometers.
Importance of an Oracle
To see the relevance of oracles, consider the following example: a federal agency seeks to ensure that an individual accessing their services is who they claim to be, by checking the individual’s physical ID card. This agency could leverage an oracle to run a query against known government databases to validate that the ID information is accurate. Once the person is found in that database, a smart contract could then be executed that is dependent on the validity of the ID being in the database.
Oracles serve as a critical piece of technology that will aid in the continued adoption of blockchain as they provide smart contracts with the safe and accurate data that they need to operate. Without oracles, blockchains would become stand-alone entities, unable to communicate or interact with the outside world.
As additional use cases become more apparent, such as identity validation, insurance claim uses, derivatives and more, the need for reliable off-chain communication becomes a critical need.
Applications of an Oracle
Oracles serving as the middleware layer between blockchains and real-world data have many use cases. As they become more common, they have the potential to change the way many industries are run. Here are some of the current applications of blockchain oracles:
Decentralized Finance (DeFi): Today, DeFi is undoubtedly the biggest use-case for blockchain solutions. Price feeds in particular leverage blockchain oracles to power DeFi protocols specializing in lending, derivatives, and stable coins.
Oracles are the lifeblood to DeFi, most notably because they power on-chain price feeds that allow DeFi applications to call in an instant current or historical prices of various cryptos or real-world assets when executing a smart contract. Any time cryptocurrency is leveraged to receive a payment for an item, oracles are an essential tool.
NFTs: NFTs are moving from static entities to dynamic NFTs. In these cases, oracles are used with external data/systems as a mechanism for giving access to events, brand discounts, the tokenization of non-crypto assets such as real estate among other possibilities.
Insurance: Oracles can be used to get information such as weather information that can be used in insurance related use cases. Insurance companies can leverage this technology to report when a certain weather-related event has happened, triggering the execution of the smart contract and in turn settling a claim.
Blockchain Oracle Limitations
The main challenge with oracles is that users need to trust these off-chain sources of information, whether they come from an online source or a sensor. Since oracles are just middleware that are not part of the blockchain consensus mechanism, they are not subject to the same security measures as the underlying blockchain.
This problem is commonly referred to as the “Oracle Problem” and is typically associated with centralized oracles, as they are controlled by a sole data source for a smart contract.
Smart contracts were created to eliminate counterparty risk, and to facilitate transactions without over-reliance on third parties. Oracles allow these smart contracts to be enacted between trustless parties. However, overly centralized oracles represent a single potential point of failure. Thus, any compromise in data integrity to the oracle will result in a loss of privacy and security — key pillars of blockchain as an emerging technology.
A decentralized oracle very well seems to be the solution to the “Oracle Problem.” A decentralized oracle uses network nodes to obtain off-chain data and relay it back to the blockchain to execute smart contracts. Using many sources of information helps to reduce counterparty risk.
Decentralized oracle solutions such as Chainlink, Band protocol, MakerDao, and many others, attempt to solve this problem by leveraging consensus-based oracles, decentralized marketplaces, and novel methods of authenticating oracle data. These solutions leverage a model very similar to that of any Proof-of-Stake blockchain. Independent network nodes are used to fetch data from multiple sources then aggregate and deliver a validated set of data through a single data point to help facilitate the execution of a smart contract, effectively eliminating any single point of failure.
The Role of Data Providers
Data providers such as Amberdata, Kaiko, Alpha Vantage serve as the backbone for decentralized oracle solutions. These providers are responsible for monitoring blockchains for incoming data requests from smart contracts, retrieving said off-chain data, and relaying the findings back on-chain, where a smart contract can now use the retrieved data for execution. These data providers help keep the integrity of a given blockchain through data availability, where they are focused on providing frequently updated data always available for end users, and data correctness, focused on accuracy of outcomes of objective data sets.
Amberdata in particular is multifaceted in its approach to data production. They offer both third-party and first party services. Third-party oracles such as chainlink leverage multiple data providers like Amberdata and others by aggregating data outputs and forming consensus on those outputs through their own consensus mechanism. In contrast, first-party oracles such as API3, Pyth Network, and Flux Protocol leverage Amberdata by providing a direct external API, where developers and projects can directly access off-chain data all while being cost-effective and reducing risk.
Closing Remarks
Oracles are instrumental to the success and broad adoption of blockchain technology. As a result, it is critical that they are secure, accurate, and have high levels of data integrity.
As blockchain adoption continues, oracles will be a key piece of infrastructure in ensuring the success of enabling blockchains to solve real-world problems. Their full disruptive impact will be felt in the coming years.
In the next piece, we dive further into understanding the state of blockchain security and its importance in the adoption of the technology.
If you’re an investor or builder in the space and would like to connect, feel free to reach out to me at Ernest@Boldstart.vc or on twitter @ErnestAddison21