My image

Acria Network Technical Specification

This paper outlines a decentralized, trustless oracle network that utilizes cross-chain technology to provide multiple blockchains with real-world off-chain data.

1. Abstract

One of the most pressing issues when developing smart contracts is the lack of real-world data. But due to technical limitations, such as the consensus protocol, no blockchain has been able to solve this major limitation.

The Acria Network aims to solve exactly this problem with the help of so-called oracle nodes. In addition to that, it aims to implement cross-chain support in order to supply various blockchains with real-world data. Cross-chain functionality will be achieved via the Polkadot ecosystem and Ethereum.

An important advantage of the Acria Network compared to common solutions is the complete lack of middlemen. This in turn increases the quality and trustworthiness of the data provided.

2. Aims

The Acria Network has, in order to achieve all its goals, many design goals which will be outlined below.

2.1. Cross-Chain

Every single process has to be optimized to allow cross-chain communication with various different blockchains. On top of this, as many crypto currencies as possible should be use-able as collateral and therefore stake-able.

2.2. Easy to use

By allowing the user to use their preferred cryptocurrency as collateral we completely eliminate the hassle of acquiring the currency used by the network. In addition to this, every end-user program is optimized to be simple and as straightforward as possible to use.

2.3. Extensibility and Scalability

By design, the Acria Network is designed to allow the easy implementation of publicly available data by the initial distributor of that data. This guarantees that the network is always up to date with the needs of its users. On top of this it is able to keep the latency very low and the throughput high.

2.4. Trustworthy

The Acria Network only allows the owner of the data to operate an oracle node. The other users are then allowed to stake their preferred currency on those oracle nodes.

Should the operator of the oracle publish incorrect data, some of the stakers gains will be slashed. Therefore the stakers give validity to the data provided by the oracle node as they prefer to only stake on the most trustworthy nodes.

2.5. Defi (Decentralized Finance)

Most Defi projects are confronted with the total lack of real-world data on the blockchain. The Acria Network aims to fuel those Defi projects with this desperately required real-world data.

In order to ensure this, the Acria Net takes various measures to ensure that every project is able to implement that data no matter on which blockchain it is.

Due to this design goal, the Acria Network also accepts most cryptocurrencies as fees.

3. Oracle Nodes

Oracle nodes are an integral part of the Acria network. Oracles are so to say the link between on-chain data and off-chain data. Oracle nodes achieve this by supplying the blockchain with required real-world data such as exchange rates for various currencies or even the current population of various countries.

3.1. The Issue of Third Party Oracles as Middlemen

The existing solutions offered to provide blockchains with real-world data heavily rely on oracles which function as middlemen that only supply real-world data that is available via various APIs.

This heavily limits the amount of data that can be utilized as well as the trustworthiness of the data provided via those solutions.

3.1.1. Vulnerability

Most common oracles aggregate the data provided by middlemen from various sources into a single data set. This approach is more or less just a consensus algorithm and like other consensus algorithms, it is also susceptible to various attack vectors.

One such attack vector is the cooperation of various oracle operators to publish incorrect data or more commonly the operation of various oracles by a single malicious entity (Also called Sybil attack).

This allows the conclusion that each added layer of middlemen would allow the execution of collusion and Sybil attacks. Therefore, the only solution to this problem in terms of security is the complete removal of those middlemen.

3.1.2. The Problem of decreasing Rewards

With every additional node providing the same set of data the reward for that data also decreases and therefore makes malicious actors more likely to occur.

This is because an operator might be able to earn more by the one-time payoff due to misreporting than by the long term reward of honestly reporting the data.

Therefore the total payoff of reporting honestly has to be more than the potential one-off „reward“ of misreporting. With current solutions, this is not possible as it would require the actual network fee to increase which would make some data too expensive to be worth it.

The thought-process of a completely rational node operator can be seen below.

Figure 1: The thought-process of a completely rational node operator

The decision process of the operator can be modeled as a decision process with states = {ACTIVE, INACTIVE} and action space = {reporting hones, reporting dishonest}.

Figure 2: Decision Process

The decision process can be seen in Figure 2. rh is the reward for reporting honest and rd is the reward for reporting dishonest. So that the operator is never reporting dishonest the following condition has to be true for each cycle:

Cd is the cost for misreporting and γ calculates the diminishing returns and is set between [0.1,0.9]. This is true for every oracle system. It can be shown that Cd has to be high to discourage dishonest reporting. This means that the costs for reporting incorrect data should be as high as possible. For oracle systems that rely on middlemen the costs for reporting wrong data are very low and can be even 0. The middlemen can be anonymous and are using data from external APIs. This means that reporting wrong data has nearly no consequences for the node operator. In Acria the node operator also is the data provider and cannot act anonymously. So if the node operator acts maliciously the consequences can be fatal for the node operator. So we have shown that Acria optimizes so that operators always act honestly.

3.1.3. Ineffective Redundancy

Current solutions require a huge amount of redundancy which in turn also increases the cost of the data. Although, this redundancy is not increasing the reliability of the source data. It is only decreasing the likelihood of misbehaving oracles. The actual level of correctness of the source data is with those solutions completely unchanged.

The suppliers of APIs generally have an off-chain and private reputation and also an off-chain business to maintain. On top of this, with the increased monetary reward because no middlemen are involved, they, therefore, require far less redundancy than current solutions.

3.1.4. The Fallacy of Decentralization

With current off-chain data solutions, the overall decentralization depends on the weakest link. That said, the common belief that those solutions are completely decentralized is therefore wrong.

This is in part caused by the fact that users and also developers oftentimes don‘t know from where the provided data comes from. Which in turn also decreases the trustworthiness of the data.

In the graphic below one can see that with current solutions 2/3 of the whole process is centralized. Namely, the Data Source and the API is centralized.

Figure 3: Common off-chain data process

The whole process is far more streamlined on the Acria Network. Here is only the data source Itself centralized all other components are decentralized and enforce each other.

Therefore, the process on the Acria Network is as decentralized as possible.

Figure 4: Acria Network off-chain data process

3.1.5. Transparency

Besides, the middleman providing the data might breach the terms of service of the API provider as they most of the time don‘t allow the redistribution of their offered data.

The middlemen are therefore most of the time not even able to provide the source of the data due to legal implications. This further diminishes the trustworthiness of the provided data.

3.2. Slashing

If a validator misbehaves by supplying malicious data or due to excessive downtime their delegated stake, as well as the stake of everyone staking on this node, will be completely or partially slashed.

The various reasons due to which slashing may occur are in detail explained below.

3.2.1. Slashing due to Excessive Downtime

If a validator is not often enough supplying data to the network his share gets slashed in accordance with his downtime. On top of this, the reward gets slashed by the square root of the downtime in hours.

This means for example that if an oracle node is in total for 1 hour not supplying data to the network its reward gets slashed by ~4.2 Percent. If the downtime is 2 hours the reward gets slashed by ~16.67 Percent.

The formula to calculate the reward after slashing is as follows.

Although, the total slashing can‘t be higher than 100% percent. This means that if an Oracle Node is not available for more than ~4.9 hours its complete daily reward gets slashed.

By this means, we ensure that the data provided by the Acria Network is at all times as reliable as possible.

3.2.2. Slashing due to Malicious Data

If an oracle node provides erroneous data multiple times in a row its daily reward gets slashed as well. Depending on the severity some of the collateral might also be slashed.

Due to multiple oracle nodes providing the same data to the network it is fairly easy to spot malicious data. On the other hand, faulty data supplied by the data source is more difficult to detect. To combat this the Acria Network, by utilizing multiple data sources, uses various algorithms to detect such faulty data.

3.3. Running an Oracle Node

Only the distributor of the real-world data is able to operate an oracle node. All other users are able to stake various cryptocurrencies on that node to provide it with credibility.

In order to run an oracle node, one has to obtain Acria Network Tokens and has to lock them in a smart contract. Those deposited tokens represent the initial trustworthiness.

Other users are now able to join that node with their stake to provide additional credibility to that node.

3.4. Reputation

In addition to the amount of Acria Token deposited, the reputation also increases by the reputation the oracle node earns by attracting new users to stake on it. The reputation also always increases a bit when data gets supplied to the network but also decreases whenever slashing occurs.

This incentivizes and rewards honest oracle operators and also disincentivizes misbehaving.

4. Network Fees

Fees on the Acria Network can be paid in various currencies. This is to ensure that it is always as easy as possible to implement the Acria Network in existing smart contracts, on whichever blockchain they are.

Although, if the fee gets paid via Acria Token it is 50% cheaper. On top of this, the token used for this gets partially burned and ensure a decreasing supply of Acria Token.

The fees collected on the Network get distributed to the oracle nodes and their stakers and therefore guarantee their upkeep and reliability.

The actual price of the reward can mostly be defined by the oracle node operator and generally aligns with its reputation.

4.1. Oracle Node Reward

By default, oracle nodes receive 80 Percent of the fees paid for the data provided by the oracle node. On top of this, they also receive some of the staking rewards earned by the stakers on their node.

Therefore the formula to calculate one's expected staking reward is as follows.

Definitions:

Fn = fees collected by node n

Repn = Reputation of node n

N = set of nodes

U = set of users

Θ = reward pool

Su = stake of user u

The remaining fees are getting distributed among the stakers.

4.2. Staker Reward

Token holders are able to stake on the Acria Network to earn a staking reward. On top of the staking, they can also endorse an oracle node. This, in turn, increases their staking reward but on the other hand, also adds the risk of being slashes due to a malicious node. This ensures that they make their due diligence about the node they would like to endorse.

This in turn adds another layer of trust to the oracle nodes with a lot of stakers.

To ensure that not everyone places their stake on the same node the Acria Network returns diminishing rewards the higher the reputation of the oracle node.

The staking reward is 50 Percent of the total reward pool multiplied by the ratio of staked tokens compared to all the staked tokens on the network. On top of this, the other 50 Percent of the reward pool are getting distributed by the endorsed oracle node.

Therefore the formula to calculate one's expected staking reward is as follows.

4.3. Collateral

It is generally possible to stake every supported cryptocurrency in any combination. Although, at least 50% of the collateral has to be in Acria token. Everything on top of this is not yielding any reward.

This ensures that everyone that would like to stake their for example Bitcoin also has to own the same amount of Acria Tokens.

Due to price fluctuations the amount of Acria token required would fluctuate. To combat this the rate is only calculated when the stake is deposited.

5. Requesting Data

To receive off-chain data on any blockchain that supports smart contracts, one has to first make a request to the corresponding smart contract. Then an oracle node that is able to supply the requested data sends it to the Acria Network.

After this, the data gets algorithmically verified and if required aggregated into a single result on the Acria Chain and gets sent back to the smart contract that requested the data.

The general way in which the Acria Network operates can be seen in the diagram below.

Figure 5: Requesting Data