ioID Identifier & DID Document Structure
ioID Identifier
Each ioID is a Decentralized Identifier (DID) formatted as:
did:io:<identifier_string>The identifier_string is derived from a combination of:
A unique project name
A project-specific device identifier (e.g., serial number, IMEI, MAC address)

Example
did:io:5RJ1UfUCLX68KeFMmuvaVsm6m5Y7yH1bkF5CC4WpHXxa
This did:io format uniquely and immutably identifies a physical device in a decentralized manner.
DID Document
Each did:io identifier is associated with a DID Document, a JSON-LD metadata object stored securely on IPFS. The document describes key attributes of the device and its ownership.
It may include:
Public keys or verification methods
Authentication and authorization settings
Device owner or controller information
Associated services (e.g., data feeds, project memberships)
Machine-bound account (MBA) references
DID Doc Example (Without Public Key)
DID Doc Example (With Public Key)
Summary
did:ioidentifiers are globally unique, decentralized, and resolvable via IPFS-hosted DID Documents.These documents define who controls a device, how it authenticates, and what services or projects it belongs to.
Public keys are optional but enable advanced use cases like self-sovereign devices or on-device signing.

