The Matrix series presents a dystopian view of mankind’s future, where human beings are subjugated by sentient machines and used as power sources for these mechanical overlords. The machines keep humans oblivious to the dark truth through a computer-generated illusion that resistance fighters call The Matrix.
The series introduced a series of memorable characters, but there is one that aptly relates to the plot of this very article: The Oracle.
Portrayed by the late Gloria Foster, the Oracle plays a crucial role in the Matrix universe, as her powers of prediction enable her to offer Neo a glimpse into his future, foreseeing a key choice that he will have to make if the Matrix is to be defeated.
The Oracle is quite pivotal within the film’s lore, as she introduces the concept of choice, which is contrary to the Architect’s own wishes of fate and inevitability.
Much has been debated about the Oracle’s foresight ability, particularly whether or not it is of a deterministic nature. In other words, if the outcome of the events she predicts is solely determined by previously existing causes, or does free-will play a part.
This quandary serves as the perfect introduction to the topic of this piece: The deterministic nature of blockchain, and how blockchain Oracles interact with the world outside their own.
Determinism, or the Poetry of Blockchain
Few people, if any, would associate blockchain with poetry. But then again, few would have the required level of imagination or savoir-faire to do so. There is poetry in everything we see, in every element that forms the fabric of reality, if only we can glimpse into the most intimate and deeper intricacies of the world that surrounds us.
In Philosophy, the Determinism theory dictates that every event and every action is the inevitable result of previous events or actions. From this, we can infer that every future event or action can be predicted pre-emptively, or retrospectively. Determinism is closely related to causality, the relation between cause and effect.
Blockchain is deeply deterministic, and this is a crucial aspect of this technology. In simple terms, if you take the entire history of the blocks and replay it locally in your own node, you should see the same state as any other node in the network. In other words, if the same operation is performed across different nodes, all nodes should return the same result. Otherwise, consensus would be impossible to achieve and blockchain would become a gigantic 21st century Tower of Babel.
The same concept applies to smart contracts. The language used to write them must be deterministic. Why? Because each node must be able to find the same result when given the same input for a contract method. Once again, this is necessary to attain consensus, and this is why consensus is such a pillar of the entire blockchain concept.
But the limitation is that when smart contracts themselves need data from beyond the confines of the blockchain, someone, or something, must bring this data in.
Blockchain Oracles: From the inside looking out
If one were able to look into a blockchain, the image would probably be not too dissimilar to that wall of cascading phosphorescent green code seen in The Matrix. Data comes in and spreads across the blockchain to be validated and added as a new block.
This incoming data needs to be watched, to ensure its purity and legitimacy before it is accepted. Smart contracts may need data from the outside world in order to execute their instructions. Such data sources are referred to as “Inbound Oracles”.
These entities supply “off-chain” data (that is, data from the world outside the chain) to smart contracts which enables them to execute their instructions on the blockchain. For example, inbound oracles allow data pertaining to real-world events to be called to the blockchain, with use cases ranging from automated trading based on the current price of an asset, to gambling dApp payouts in the event of a win. Smart contracts contain the rules, and oracles provide them with the data they need to trigger and execute those rules.
Conversely, Outbound Oracles work in the opposite direction: They inform an entity outside the blockchain of an event that occurred within it. Put it another way, Outbound Oracles inform off-chain actors about events that took place on-chain.
Oracles are the ferrymen, the Charon of the blockchain if you will. They fetch the data that smart contracts require and transport them between the two realms, Blockchain and the real world.
MOM, the Oracle of Authenticity on the Blockchain
MOM is the world’s marketplace, decentralised on the Ethereum blockchain.
MOM enables you to buy and sell phones, computers, TVs, video games, cars, and very soon luxury products and more, on a peer-to-peer basis, affordably.
The platform is powered solely by smart contracts and one global medium-of-exchange token, the Multicoin (MTCN).
Product manufacturers such as auto makers, luxury brands, computer companies etc. that need to validate the ownership of any product, or buyers looking to purchase a pre-owned item, can interrogate MOM (the single source of immutable truth) via a specific Smart Contract call and ask; “Is product with ETH address 0x1234… genuine?”, to which MOM will return a True , (if it can backtrace ownership history to the genesis transaction) or False, (if not,) answer along with the mathematical proof so you don´t even need to trust MOM, you trust the immutable laws of nature and math. To access this service, customers will pay in MTCN.
This functionality effectively turns the MOM into an outbound Oracle of authenticity for the world.
— Fernando Sanchez and Peter Alfred-Adekeye