February 7, 2025
–
3 min read
The ICP-EVM Proxy is a PoC bridging ICP and Ethereum ecosystems. It translates ICP canister data into Ethereum-compatible formats, enabling cross-chain interaction and use of tools. Opeing doors for cross-chain dApps and simplified on-chain event tracking.
Ever wished you could seamlessly blend the power of the Internet Computer with the Ethereum ecosystem? We get it. Blockchain interoperability is a huge challenge, but it's also where some of the most exciting innovation happens. That's why we're glad to talk about the ICP-EVM Proxy, a proof-of-concept (PoC) that's paving the way for exactly that kind of cross-chain magic.
Working across different blockchain platforms can feel like trying to speak a dozen different languages. The ICP-EVM Proxy acts as a translator, allowing ICP canisters to "talk" to Ethereum. Thanks to the translation of ICP canister data into Ethereum RPC methods, users can leverage familiar DEX tools like Dexscreener to analyze and interact with this data.. No need to completely rewrite your codebase or learn a whole new stack – that's a win for everyone.
The ICP-EVM Proxy solves a real problem. It's built on a solid foundation of interconnected components:
The Counter Canister: A simple Rust-based canister that demonstrates core ICP functionality. Every action (like incrementing a counter) triggers an ICRC-3 event, giving you a clear way to track what's happening.
The DEX Canister: A mini decentralized exchange (DEX) built on ICP using Rust. It lets you create currency pairs, mint and burn tokens, and logs every transaction with ICRC-3 events. It's a great example of how to build DeFi applications on ICP.
The Logger Canister: This is the central hub for all event logs. It captures and stores the ICRC-3 logs from both the Counter and DEX Canisters, making it easy to access and analyze data.
The EVM Adapter Proxy: This is the real MVP. Written in Go, it bridges the gap between ICP and Ethereum. It grabs those ICRC-3 logs and translates them into a format Ethereum understands. It also exposes Ethereum RPC methods, allowing your Ethereum tools to seamlessly communicate with ICP.
The SubQuery Indexer: Built with Node.js, this service indexes and organizes all the EVM-compatible data. Thanks to its GraphQL API, querying blockchain events becomes incredibly simple. Think of it as your personal blockchain data librarian.
Imagine a developer interacting with the DEX Canister, maybe minting some tokens. Here's what happens behind the scenes:
The DEX operation triggers an ICRC-3 log.
The Logger Canister stores this log.
The EVM Adapter Proxy picks up the log and translates it into an Ethereum-friendly event.
The SubQuery Indexer processes and indexes this data, making it available for querying via GraphQL.
This PoC opens up a world of possibilities:
ICP dApps can integrate with existing Ethereum analytics tools.
Truly cross-chain applications become a reality.
Standardized logging makes on-chain event tracking a breeze.
This is a PoC, so there are some limitations:
Basic ICRC-3 logging and limited error handling are in place.
Throughput isn't optimized for production-level applications (yet!).
In-memory log storage isn't ideal for long-term data.
The DEX is still basic (no order matching, for example).
But don't let that discourage you! This is just the beginning. The ICP-EVM Proxy is a significant step towards a truly interconnected blockchain world. As the project matures, we can expect improvements in scalability, security, and performance. For more information on this and other developments visit our website, follow us on X, LinkedIn.
Read More
Brussels Takes Center Stage: Key Highlights from EthCC, Polkadot Decoded, and More
Brussels hosted key Web3 events, highlighting progress in UX, AI integration, and blockchain innovations from Polkadot Decoded and Fil Brussels, aiming for a user-friendly Web3 future.
Filecoin Upgrade v22: Dragon
Lotus v1.26.2 introduces the Filecoin upgrade v22, Dragon, enhancing ecosystem efficiency and security. It adds Direct Data Onboarding and Actor events, setting new blockchain standards.
Filecoin Network v27 “Golden Week” Upgrade: Here's What to Expect
Get ready for Filecoin’s next step forward: NV27 “Golden Week”. Going live Sept 24, it strengthens miner security, streamlines sector operations, and improves developer tools. Upgrade to Lotus v1.34.0 today.
Other Articles
News
October 21, 2024
Zondax engineer Raul introduces ICP Push Metrics, a project simplifying ICP node management by enabling nodes to push metrics securely without firewall changes. Learn how this innovation improves security and efficiency, and explore its potential impact on the ICP developer community.
News
November 4, 2024
LaBitConf set the stage for our side event with Filecoin Orbit at Crypster Club. Nearly 50 attendees enjoyed Web3 talks, games, and Argentine treats like fernet and medialunas. Insights from Filecoin and Zondax made it memorable.
News
March 6, 2024
For developers and users engaged with the Polkadot blockchain, the challenge of runtime upgrades is a familiar obstacle. These upgrades, essential for network evolution and security, often disrupt the functionality of Polkadot and parachain applications. That’s where the new Polkadot app comes in, designed to seamlessly manage all parachains and relay chain, immune to most of the disruptions caused by runtime upgrades. This app aims to unify the ecosystem through a single application, marrying
News
LaBitConf set the stage for our side event with Filecoin Orbit at Crypster Club. Nearly 50 attendees enjoyed Web3 talks, games, and Argentine treats like fernet and medialunas. Insights from Filecoin and Zondax made it memorable.
News
For developers and users engaged with the Polkadot blockchain, the challenge of runtime upgrades is a familiar obstacle. These upgrades, essential for network evolution and security, often disrupt the functionality of Polkadot and parachain applications. That’s where the new Polkadot app comes in, designed to seamlessly manage all parachains and relay chain, immune to most of the disruptions caused by runtime upgrades. This app aims to unify the ecosystem through a single application, marrying