Acria Network Technical Specification
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.
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.
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.
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.
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 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.
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.
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.
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
The various reasons due to which slashing may occur are in detail explained below.
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.
By this means, we ensure that the data provided by the Acria Network is at all times as
reliable as possible.
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.
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.
Definitions:
N = set of nodes
U = set of users
Θ = reward pool
Su = stake of user u
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.
4.3. Collateral
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.