New Chain Deployment Proposal: Deploy Verax on Internet Computer Protocol (ICP)

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:

  1. the ICP developer toolkits don’t natively support solidity, and we shall rewrite the core/contracts with Mokoto/Rust.
  2. ICP use different ID management including a two-layer hierarchy (the account & the identity). We need to design carefully in this place.
  3. 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.
  4. 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.

References and Links

I think this is a pretty awesome proposal, I think it’s great to bring the benefits of on-chain attestation registries to non-EVM chains. ICP is a great network as I think it’s an under rated with vibrant communities. If love to see how the registry will be used by various identity and reputation protocols on ICP and what dapps make use of it.

With respect to the subgraph, so long as we can issue graphQL queries against indexed attestations, schemas etc. it should be ok.

Do you know what considerations there might be from a multi-sig perspective?

1 Like

We’re not sure it’s a good idea to venture to a network with a different arch at the moment, but if PADO needs it and it means more adoption, we’re up for it!

2 Likes

Thanks for the feedback! for the multi-sig, I think that not be a big issue, as we can use the ICP multi-sig tools or even directly write the related logic in the ICP canisters, as long as we can use the ICP-compatible key pair to maintain the registry.

Thanks @ars9 , there are risks to transferring verax to a non-EVM layer 1, but we will try to find corresponding components/solutions on the way. And we are happy to make the nice framework more public for future interoperability consideration on attestations