project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4

Crow

Crow is a wallet infra that combines passkeys, RIP-7212, EIP-7702 and ERC-7683 to create a truly seamless multi-chain experience. Users can interact with any blockchain without managing private keys or worrying about which chain their assets are on.

Crow

Created At

ETHGlobal Bangkok

Winner of

Blockscout - Blockscout Explorer Big Pool Prize

Prize Pool

Project Description

This project combines passkeys, RIP-7212, EIP-7702 and ERC-7683 to provide users with the most seamless cross-chain experience. It allows users to easily onboard (no seed phrase), and spend funds at any chain without caring about where funds are currently at (invisible cross-chain value and message transfer).

Despite numerous hacking incidents in the blockchain ecosystem, the largest loss of funds to date has actually stemmed from users losing their seed phrases rather than from security breaches. While blockchain technology offers robust security, the traditional seed phrase system places a significant burden on users to securely store and manage complex recovery phrases.

To address this critical issue, our solution integrates Passkeys - a modern authentication standard that's rapidly becoming ubiquitous in our daily digital interactions. This approach leverages the security and convenience of device-native biometric authentication (such as FaceID, TouchID, or Windows Hello) that users are already familiar with.

Key advantages of this approach:

  1. Eliminates the risk of lost or stolen seed phrases
  2. No complex phrases to backup or remember
  3. Built-in security features of WebAuthn standard
  4. Seamless account access across authorized devices

In today's Ethereum ecosystem, which has evolved around rollup-specific scaling solutions, users face significant interoperability challenges across different rollups. Currently, users need to constantly move funds between completely separate networks to interact with different rollups, resulting in a fragmented and inefficient user experience.

To address this interoperability challenge, we've enhanced our account contract by implementing ERC-7683 standards. This implementation enables a seamless cross-chain experience where users can create intents on their origin chain (where their funds are located) and execute transactions on any supported destination chain. By integrating the ERC-7683 interfaces into our account contract, users can interact with any protocol without manually bridging assets - the system handles all cross-chain logistics automatically.

This enhancement represents a significant step toward making cross-chain interactions as simple as single-chain transactions. Users no longer need to maintain separate balances across different rollups or manage complex bridging operations, significantly improving capital efficiency and reducing the overall complexity of cross-chain operations.

How it's Made

Our project currently operates on two networks: Odyssey and Mekong. We specifically chose these networks as they are among the first to support, RIP-7212, EIP-7702, and ERC-7683, which are crucial for our implementation.

The deployment process follows a two-step approach: First, we create a new Externally Owned Account (EOA), then we authorize it with the public key of a Passkey generated on the user's device. This authorization is implemented through our proxy contract, which allows us to update the account's functionality. After this update, users have an EOA that fully supports Passkey authentication.

Furthermore, our authorization contract implements the ERC-7683 interface, enabling seamless cross-chain operations. When a user initiates a cross-chain transaction, they interact with the settlement contract on the origin chain to start the process. The user also provides a signature authorizing their account to operate on other networks. A relayer, upon observing this signature and the intended transaction, interacts with the settlement contract to generate the necessary data and executes the user's request on the destination chain. This infrastructure enables rapid cross-chain operations with minimal user intervention.

We specifically integrated ERC-7683 into the account contract to ensure that msg.sender is the account itself during execution. This architectural decision is crucial as it allows transactions to be executed as if they were native to the destination chain, providing a seamless experience where users' actions are authenticated and executed consistently across different networks. By maintaining the account's identity across chains, we enable users to interact with any protocol on any supported network while preserving their authorization and permissions.

background image mobile

Join the mailing list

Get the latest news and updates