This repository provides event proof and block header proof api for light client based Hashi Adapter.
packages/server
: Prover API logicpackages/relayer
: Listen to event and generate proof for verification on adapter contract. There are two kinds of light clients supported: SP1 Helios and DendrETH, and two kinds of proof supported: Event proof forMessageDispatched
event from Yaho and Block Header proof.- Block header proof: Based on given slot and it's corresponding beacon block header (Beacon block state root) from light client contract, prove the Execution block header (block hash) of the corresponding execution block number.
MessageDispatched
event proof: Generate event proof emitted from Yaaho contract based on the beacon block header from light client.
Before running the application, ensure you have the following installed:
Clone the repository:
git clone https://github.com/crosschain-alliance/dendreth-proofs-api
Install
nvm use
yarn install
Navitage to each individual packages
cd packages/server # or cdd packages/relayer
cp .env.example .env # configure the .env file
yarn start
- DendrETH Adapter & SP1 Helios Adapter: https://crosschain-alliance.gitbook.io/hashi/deployments/oracles#zk-light-clients
- Contract code: https://github.com/gnosis/hashi
- Modified version of SP1 Helios to support Gnosis Chain & LUKSO: https://github.com/crosschain-alliance/sp1-helios
docker-compose up --build
Feel free to submit issues and pull requests. For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the MIT License. See the LICENSE file for details.