OscillatorInc / osc-identity

MIT License
11 stars 2 forks source link

Universal Identity

The Universal Identity System is a scalable DID standard for the future of Ethereum:

The UIS DID standard supports all EVM account types: EOA, Contract, and Smart Wallets.

Why UIS?

Ethereum is the backbone of the decentralized web--it is time for a DID standard that is designed for the future of Ethereum.

Drawing upon years of experience, research and experimentation, UIS is a scalable DID standard that is designed to be gas efficient, scalable, and secure.

Background on DID Standards

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:

These limitations hinder widespread adoption and scalability, prompting the need for a more balanced solution.

The UIS 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.

Getting Started

The UIS smart contracts utilize EIP-3668 for offchain data lookups.

Start Backend:

pnpm ts-node ./server/app.ts

Run Tests:

forge test --via-ir -vvv

Usage

This is a list of the most frequently needed commands.

Build

Build the contracts:

$ forge build

Clean

Delete the build artifacts and cache directories:

$ forge clean

Compile

Compile the contracts:

$ forge build

Coverage

Get a test coverage report:

$ forge coverage

Format

Format the contracts:

$ forge fmt

Contributors

License

This project is licensed under MIT.