Off-chain data - Acurast

I wanted to use this forum to share more about the project we are currently working on to gather feedback.


What we have seen in the ecosystem and also heard from teams over the last months is that is currently challenging to bring off-chain data and computation on-chain, especially if the underlying infrastructure is not EVM based. Even then there are some limitations on what can be brought and accessed on-chain, the developer is not in control to just define endpoints or a set of computational parameters on an on-demand basis.

Additionally, it’s also counterintuitive to rely and trust a small subset of individuals for making data points available on-chain.


We propose with Acurast a solution that addresses the mentioned pain-points, on a high-level the solution has the following components.


Data Transmitter

The Data Transmitter utilizes a Trusted Execution Environment essentially enabling developers to define where data is being fetched from or what computation they want done. All in-code and run in the Acurast Trusted Virtual Machine, enabling any use case to be brought on-chain. The on-chain output is verifiable by anyone. It’s an open system that enables everyone to become a Transmitter and participate.

Acurast Protocol

The Acurast Protocol is a dedicated Substrate protocol, where we aim for a parachain slot, that gives the chain access to communicate with other chains. The chain itself does not have any smart contract capabilities, its role is for the verification of the data and for the marketplace with a dedicated reputation system.


The Marketplace, is where data consumers (developers) and data transmitters meet. The developer defines a job that contains a script, with the instructions written in-code and a service level agreement as well as a reward. Here both parties match when they have found a price both agree on. These jobs can be create and executed on-demand.

Acurast Pallet

The Acurast Pallet receives the output of the Data Transmitters where it can be used or forwarded to another environment such as WASM or EVM. The Pallet is also the gateway through XCMP to the Acurast chain and the marketplace for the creation and reward payment of jobs.

More details can be found in our initial Docs or on GitHub.

Happy to share more details here, but would be very interested to hear your thoughts.