NeoDID is the fourth Morpheus service: a privacy-preserving identity and authorization layer for Neo N3. It is designed as an independent contract and independent SGX/CVM service, not an extension of the Oracle contract.
Current codebase status: NeoDID now has an independent N3 contract skeleton NeoDIDRegistry, SGX worker routes for bind and action-ticket, and frontend proxy routes. This is the minimal product foundation for the master-nullifier / action-nullifier architecture.
Core Model
Master Nullifier: binds a private Web2 identity to a Neo vault account without exposing the raw Web2 account identifier on-chain.
Action Nullifier: derives a separate, task-specific nullifier so the same user can act through disposable wallets without linkability across tasks.
Independent Registry: the contract stores identity bindings and action-ticket usage separately from Oracle/DataFeed state.
Independent Contract
NeoDID is implemented as a standalone contract module:
The Phala worker now exposes these authenticated NeoDID routes:
GET /api/neodid/providers
GET /api/neodid/runtime
POST /api/neodid/bind
POST /api/neodid/action-ticket
Supported Identity Sources
NeoDID is designed to support social accounts, exchange identities, and verified contact channels. The current service catalog includes:
twitter
github
google
discord
telegram
binance
okx with alias okex
email
Each provider can map into different claim types, such as follower thresholds, verified-email status, exchange KYC levels, VIP tiers, or asset-holder attestations.