Author[s]: @PADO Labs
Title: Deploy Verax on ICP
Type: Non-EVM Chain Deployment Proposal
Proposal Summary
We propose to launch Verax on ICP, the Internet Computer Protocol
Overview of the Proposal
ICP has been very active within its ecosystem which has more than $6.747b market cap and is ranked within top-20 according to the CMC data. Although ICP doesn’t have a big TVL, but it has popular applications like social and games, and has the most active developers beyond Ethereum (https://www.cryptomiso.com/).
Motivation
We believe there will be many dApps and use cases on ICP to leverage the attestations in the next stage. Also, we think it is worth exploring the possibility of deploying Verax on Non-EVM L1, e.g., to make more voices of attestation outside the Ethereum community.
Technical considerations
We plan to launch the MVP of Verax on ICP, there will be some technical challenges including:
- the ICP developer toolkits don’t natively support solidity, and we shall rewrite the core/contracts with Mokoto/Rust.
- ICP use different ID management including a two-layer hierarchy (the account & the identity). We need to design carefully in this place.
- subgraph will be a key component to indexing the on-chain attestations, and we need to find a similar solution in IC ecosystem. And the current verax browser might not be able to integrate the ICP attestation data due to this incompatibility of subgraphs.
- native features like ABI encodings, and signature algorithm support, should be considered carefully and make proper trade-offs.
Implementation and deployment will be carried out on the ICP Testnet and then be formally merged into the ICP mainnet.
There could be potential risks that cannot implement the full functionalities of verax.
Design Considerations
No new design will be considered in this work. We will propose a detailed design proposal once the technical challenges have been clarified together with the related solutions.
Deployment Considerations
ICP supports smart contracts so called “canisters”, we will follow the traditonal way to first depoly the registry on the testnet and then move it to the mainnet. However, potential technical risks still exist.
Next Steps
The PADO team will handle the design, implementation and deployment process if the proposal gets approved.