Hardora Oracle is a decentralized mobile-first hardware oracle for off-chain data computation and data access.
The Hardora Oracle is a decentralized mobile-first hardware compute-enabled oracle for off-chain data computation, such as verifiable true random number generation. The emphasis is on a decentralized, hardware-based, and mobile-first oracle for any DApps on the Venom Workchain to access offchain data.
The following issues were identified with current oracles:
Highlighted below are some of the core elements of the Hardora blockchain network, which are:
The image below shows how the mobile Oracle communicates with a blockchain node in order to interact with the Oracle smart contracts running on various workchains of the Venom masterchain.
The Hardora Oracle Network consists primarily of three core elements: an Oracle controller (smart contract), a mobile device, and a hardware device. In order to create a scalable and decentralized Oracle network, the Hardora Oracle network was designed to run on a mobile device, which is accessible to over 6 billion people worldwide and is connected to the internet almost all the time. This is important in countries where people don’t have access to a robust internet infrastructure to provide the constant service required by an Oracle network.
The blockchain node (RPC/graphql) serves transaction data from the venom validator nodes to the mobile Oracle node app, which is basically a wallet but much more. The mobile device itself is the physical device on which the node app runs, similar to how smart contracts run on workchains on the Venom blockchain. The node app on the device is connected to a dedicated hardware device similar to a hardware wallet, which performs non-deterministic calculations off-chain while the node app itself performs deterministic computations that can be computed by other Oracle nodes. The node app, through an open and trusted API, can query data like price data and sport data, among many others, for use by DApps running on the Venom blockchain. The essence of the Hardora oracle is to provide off-chain data that would otherwise be expensive to execute or impossible to access by DApps running on blockchain nodes.
Combining a mobile device and a dedicated hardware device ensures we can serve quality data that is either deterministic or not, based on the demand of the DApps requesting those data. The data services provided by the protocol will include generating random numbers, computing the hash of a file, verifying data stored in a decentralized database like Polybase, and many others. More use cases explaining the kind of data that can be obtained and processed by the Hardora oracle will be highlighted in the next session.
The Hardora protocol consists of a smart contract element that can run on any Venom workchain. The Hardora smart contract receives requests from a smart contract through an internal inbound message, processes them, and sends them out to the next mobile Oracle validator available. This request is sent to the mobile node as an external outbound message request, similar to how a website interacts with a wallet for sign-in, in order to extract the command data from the request. The data requested by DApps on any workchain can either be deterministic or non-deterministic.
The smart contract (on-chain oracle) communicates with the mobile nodes through RPC servers connected to the current nodes of the network on which the smart contract runs. The RPC server sends the outbound external message to the mobile node app. The requested data is obtained, computed, and verified before being sent through another inbound external message to the Oracle smart contract through an RPC node.
There are several use cases for the hardora oracle including those highlighted below. The Hardora Oracle is highly scalable and can support thousands of DApps at the same time just by allowing more mobile oracle validators. The architecture allows the Hardora oracle to support more data feeds as the need arises and is thus designed to scale with the Venom network. Some of the use cases that can be implemented ahead of the mainnet launch include:
Important link and address