The Universal Identity System is a scalable DID standard for the Ethereum ecosystem:
- Free Setup: no gas fees to create or update
- Scalable Design: minimal onchain data storage
- Verifiable Signatures: EIP-3668 for offchain data lookups
The UIS DID standard supports all EVM account types: EOA, Contract, and Smart Wallets.
Decentralized Identifiers (DIDs) are a new type of identifier that enables verifiable, decentralized digital identity. Existing DID methods like did:web
, did:pkh
, and did:ethr
have paved the way for decentralized identity but come with their own set of challenges:
did:web
: Relies heavily on centralized web infrastructure, which can lead to centralization risks and dependencies on domain name systems.did:pkh
: Lacks flexibility in adding new verification methods, limiting accessibility and scalability.did:ethr
: While more decentralized, it can be costly and less scalable due to onchain operations for every identity update.
These limitations hinder widespread adoption and scalability, prompting the need for a more balanced solution.
UIS addresses these challenges by striking a balance between onchain and offchain.
It maintains the core principles of self-sovereign identity while achieving scalability through trusted centralized services. By combining elements of did:web
, did:pkh
, and did:ethr
, UIS forms a modern DID standard capable of scaling to millions of users.
This is a list of the most frequently needed commands.
Build the contracts:
$ forge build
Delete the build artifacts and cache directories:
$ forge clean
Compile the contracts:
$ forge build
Get a test coverage report:
$ forge coverage
Format the contracts:
$ forge fmt
- Carl Fairclough | Oscillator, Inc
- Vitor Marthendal | District Labs, Inc
- Kames Geraghty | District Labs, Inc
This project is licensed under MIT.