We are aware of the complexities behind using Storage proofs.
Given that soon we will start wrapping the verification of those inside SNARKs having access to a prover will become an additional requirement.
We do not expect dApp developers to handle those complexities on their own, so we built an API which makes the whole flow of using storage proofs much much simpler.
Another significant benefit from introducing such API is the fact that we are able to batch multiple requests and mutualise the cost of interacting directly with the chain and proving among all the users of the API.
This drives the cost of using storage proofs even further down, benefiting every user of the system.
The API in it's current form allows users to specify intends and the API will make sure these intends are executed.
These intends are also called tasks, currently scheduling tasks allows to performs the following actions:
- Proving the existence of a specific account for any block.
- Proving smart contract storage. Coming very soon.
- Proving historical block headers contract storage. Coming soon
- Proving beacon chain parameters. Coming by the end of Q4.
- Making sure commitments are available, either by sending them from/through L1 or relaying them optimistically.
- Proving block headers required for accessing requested data.
- Generating storage proofs and verifying them onchain or inside a SNARK depending on the complexity of the request.