Despite the fluctuation of the crypto market, blockchain has drawn massive attention and gained unprecedented popularity in the past two years. World Economic Forum even predicts that 10% of global GDP would be stored on blockchain by 2025. However, 10 years after Bitcoin’s commencement, people are still questioning about real-world use cases that blockchains can achieve.
Take a look back, what are the most widely used Dapps nowadays? Fundraising contracts, token exchanges, gambling games, pyramid schemes, and CryptoKitties? Where’re the bragged revolutions in insurance, advertising, supply chains, identity, and more?
It turns out currently blockchain has 2 inherent limitations that preventing real-world commercial use cases: 1. Scalability problem, which has been widely discussed, with lots of talents and ideas working on it - Plasma, Sharding, State Channels, to name a few. 2. The Oracle problem, without which the blockchain is completed isolated from the rest of the world, it is less-known and only receives minute attention compared to the scalability one. Resolving the scalability problem would make blockchains usable by the mass public while resolving the oracle problem would make blockchains useful with new business models, use cases and more network effect.
Oracle: what and why?
Smart contracts are not so “smart” at all, they are merely a set of tamperproof agreements that would self-execute according to the pre-defined rules once deployed on a blockchain. Their entire input comes from on-chain block data, without any direct access to off-chain information especially the Internet, meaning that they’re isolated from the external real world.
Why? This is due to blockchain’s consensus mechanisms, the underlying virtual machine executing the contract code is designed to be pure deterministic, regardless of spatial and temporal condition - a node might join at any time, syncing and executing all transactions starting from block #1 and must get a unanimous view. However, the real world and the Internet is non-deterministic at all, querying the same API or visiting the same URL is likely to return different results to you in different times. Thus external data can only be brought into blockchain as a data payload of a transaction.
Oracle comes to rescue. In the context of the blockchain, an oracle is a system that answers requests from smart contracts that asking for external resources - for example: exchange rate, geo-location metrics, sports result, weather data, random entropy, etc., and provides responses back on-chain for requesters to use. Without oracle, it has already been proven that smart contracts only have limited use cases.
More generally, the requests may go beyond the scope of data queries, Oracle can actually be asked to execute arbitrary computation. This is also super helpful since on-chain computation has internal cost and time limitations: (i) On-chain computation is thousand times more expensive than off-chain computation i.e. the gas cost for fee-based blockchain like Ethereum. (ii) Although with a Turing-Complete virtual machine, one cannot run arbitrarily complex computation on-chain within one consensus round (i.e. within block time), this is because of the “verifier’s dilemma” and Ethereum caps on-chain computation complexity up to block gas limit, which is currently set to 8 million. Seems a big number, however, a simple SSTORE instruction costs 20K gas thus 8M gas is indeed not a big number.
Thus as a short brief, the oracle can be categorized into: (i) Data feed oracle, connecting smart contracts with off-chain data. (ii) Computation oracle, powering smart contracts with cheaper and unbounded computing power by outsourcing computation-intensive tasks off-chain.
Then here comes a new problem: as oracle is an external third party which is not governed by the blockchain consensus, how can one trust the honesty and fidelity of oracle? The answer is simple: we don’t trust, we verify. There’re already some oracle projects, either centralized or decentralized, targeting the data feed or computation problem - Oraclize, Town Crier, Augur, Chainlink, Truebit, to name a few. They have their own pros and cons, or even some fundamental flaws, which we will explain and compare in future posts.
Introducing DOS NETWORK
DOS NETWORK is a layer 2 chain-agnostic Decentralized Oracle Service network, providing real-time data feed oracle and computation oracle solution to mainstream blockchains. Just highlight several core features below:
- Byzantine fault-tolerant decentralized protocol: A trustless solution without single point of failure or downtime, with node runners come and go on the fly.
- Near real-time and verifiable result: Driven by the secure randomness engine built upon Verifiable Random Function (VRF) and advanced cryptographic primitives, the data request or computation is performed and consented off-chain but verifiable on-chain in a system contract. The delay between receiving request and delivering back response is within two blocks - the optimal one can achieve in theory.
- Scalable at a low cost: Thanks to the group sharding and off-chain consensus, the total data query throughput and computation capacity increases as more nodes joins DOS network.
- Compatible to heterogeneous blockchains: With core protocols operating in off-chain clients, it’s easy to support multiple public chains by adding off-chain adaptors and port on-chain governance contracts at a low overhead.
- Crypto economy: With designed token economic models and cryptographic primitives, it’s highly incentive for node runners to join the network early to earn the “mining” rewards and rapidly grow the network capacity. The network is resistant to sybil attack, with malicious nodes to be detected and forfeited of their stake and honest nodes always to be rewarded.
- And more: A data feed marketplace could even be built to enable lots of premium (paid) data sources to be able to sell their data service to smart contracts and monetize from blockchain traffic as well. After supporting multiple (at least two) chains, then an upper layer application protocol could be designed on top of DOS NETWORK to support cross chain contract call!
Stay tuned for future series of posts and our alpha release on the Ethereum Testnet in the coming week!
DOS NETWORK is building by the team based in Silicon Valley, the heart of innovation. With talented engineers and top cryptographer coming from Google, Amazon, Pure Storage, Carnegie Mellon University and so on, the team members have tons of experiences and insights in distributed system, consensus protocols, and smart contract development, and we’re pushing the boundary forward to deliver a provably secure, highly scalable, near real-time decentralized oracle service compatible with multiple blockchains.
Interested in joining us? Please mail to email@example.com !
Follow us on:
English Telegram: https://t.me/dosnetwork_en
Chinese Telegram: https://t.me/dosnetwork_cn