Skip to content

Ethereum addresses with different cases create duplicate identities #2264

@lingcoder

Description

@lingcoder

Bug report

Ethereum addresses with different cases create duplicate identities

Description

Supabase Auth treats Ethereum wallet addresses as case-sensitive strings when creating Web3 identities, causing the same wallet to create multiple identity
records if the address casing differs (e.g., checksum format vs lowercase).

Current Behavior

When a user signs in with an Ethereum wallet:

  1. During migration: identity created with provider_id = "web3:ethereum:0xabcd1234..." (lowercase)
  2. During login via MetaMask: identity created with provider_id = "web3:ethereum:0xAbCd1234..." (EIP-55 checksum)
  3. Result: Same wallet, two different identity records in auth.identities

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions