The future of web3 identity and wallets
November 7, 2022
Identity is a fraught concept in web3. When and how should you identify the individual behind a wallet?
Solutions like ENS, POAP, Noox, and Gitcoin Passport try to address this question by providing web3 users with unique identifiers and tracking reputation with on-chain activity, while Quests on Layer3 help you measure your on-chain progress. Numerous initiatives have been powered by the idea that your wallet activity is supposed to be a representation of who you really are.
As web3 apps continue to evolve, however, a singular wallet will no longer represent a user’s digital identity or reputation.
Empowering true self-custody means that users will have different wallets for different functions, needs, and security levels. We see this emerging user behavior at Layer3 and we think it’s here to stay.
One may want to try DeFi apps on their “hot” wallet, but store NFTs in a cold storage wallet like Ledger or Trezor. A wallet on Cosmos is naturally incompatible with your EVM wallet (for now), but they are both yours. You may want to use a multi-sig to coordinate transactions with your DAO or participate in on-chain governance, but leave an individual wallet for personal use, like trading NFTs or earning digital collectibles. Yet, all these wallets belong to you: Should they be technically be considered separate in your on-chain reputation?
Similarly, if users have no choice but to attribute all of their on-chain activity to a singular wallet, they have little to no control over the types of data they reflect to the outside world, in circumstances that are not so different to its non-crypto predecessors. Some, like Disco, are attempting to solve for decentralized identity in this way—but still assumes that users prefer to use only one wallet in doing so.
Down the line, Account Abstraction could also mean that creating a wallet isn’t part of the onboarding process at all, with protocols and platforms potentially having the ability to create app-specific wallets for a myriad of uses, and validate transactions in an entirely novel way.
- Account abstraction, in general, is the ability to set the validity conditions of a transaction programmatically. Cami does a great high-level overview of the concept here.
Attributing individual identity to a single wallet was originally a sybil prevention measure, but just like how many of us do not confine ourselves to one platform, bank, or nation outside of crypto, we will also not confine ourselves to one wallet.
Personally, I think that protocols are mistaken to attempt to solve sybil and botting at the individual wallet level, and many waste precious time and resources trying to determine if a wallet is “trustworthy” or not. A sophisticated bot could easily avoid these obstacles by emulating what is considered as trustworthy on-chain behavior, including transacting or committing large amounts of crypto to the task (a commonly used signifier for whether a wallet can be trusted).
Crypto protocols and ecosystems will have to solve the multi-wallet problem at the level of UX and functionality, and see multi-wallet usage as a feature of developing web3 user behavior.
When a wallet is just an interface to interact with block data, the possibilities for their usage are endless.