What is Identity Index?

IDX is an evolution in decentralized identity.

Michael Sena
4 min readJul 28, 2020

Identity Index (IDX) is an effort to propose a standard for creating a unified, identity-centric index of resources. IDX is the missing component needed to deliver the vision of a truly user-centric web. If you would like to participate and help evolve the standard, join the conversation at the link above.

Background

Over the last 4+ years of working in Web3, I’ve been involved in various decentralized identity projects and initiatives including Ceramic, 3Box, uPort, and the Decentralized Identity Foundation. Every product I’ve built has always relied on DIDs, given users control of their data, and sought to enable a re-architecture of the web around users instead of platforms.

However, one thing has become immensely clear. Decentralized identity has a glaring problem.

The missing piece

DIDs are the W3C standard for globally-unique decentralized identifiers that commonly identify an entity across the web. A DID is the minimum requirement for establishing an interoperable, platform-agnostic digital identity. However, a digital identity is much more than a decentralized identifier.

An identity is the complete set of resources that give context and capability to a DID including all of its keys, accounts, profiles, social graphs, data, settings, services, and more. Oftentimes, these resources are scattered across the web on many different centralized platforms (application servers) and decentralized networks such as 3Box, Ceramic, Textile, Ethereum, IPFS, Arweave, and others.

Decentralized identity depends on the ability for users to bring their identifier and resources to an application, as opposed to the current “Web2” paradigm of applications and platforms controlling identities and data. However to date, this has not been possible.

Currently there is no standardized and decentralized way of associating resources to a DID. This limits an application’s ability to permissionlessly query, discover, and resolve a DID’s many resources. In turn, this limits the value of decentralized identities. We believe this is one of the reasons “Web3” has not realized its full potential.

What is Identity Index?

Identity Index (IDX) (CIP-11) is a standard for constructing a unified, identity-centric index of resources. IDX is decentralized, cross-platform, and DID-agnostic so it can be used by any DID, to map to any resources, on any platforms.

By standardizing how resources are associated to a DID, IDX solves discovery, routing, and resolution. This enables any app to lookup a DID and seamlessly interact with its resources regardless of where they exist or which application first created the data. As a result, IDX can unlock true identity-centric interoperability across the web.

How does it work?

IDX achieves this by specifying a top-level resource directory, called the Root Index (CIP-12), which links to various subdirectories including a:

  • Profiles Index (CIP-13): contains links to a DID’s profiles (i.e. basic, work)
  • Keychains Index (CIP-15): contains links to a DID’s keychains (i.e. auth)
  • Accounts Index (CIP-14): contains links to a DID’s accounts (i.e. crypto, social, domains)
  • Connections Index (CIP-18): contains links to a DID’s social connections (i.e. follows)
  • Collections Index (CIP-16): contains links to a DID’s data collections (i.e. app data)
  • Services Index (CIP-17): contains links to a DID’s services (i.e. notifications or backup)
  • Settings Index (CIP-24): contains links to a DID’s settings documents (i.e. internationalization)
  • and more…

Motivation & Goals

The motivation for specifying the IDX standard is as follows:

  • Elevate DIDs into complete identities with the full set of resources and capabilities needed to be broadly useful
  • Provide a DID-centric framework for indexing resources that is flexible, extensible, decentralized, cross-platform, and DID-agnostic
  • Simplify resource discovery and routing, wherever resources may exist (centralized servers, decentralized networks, etc)
  • Provide a standard interface for developers to use when interacting with any DID
  • Enable DIDs to easily integrate with other technologies, networks, platforms, and wallets
  • Make it easy to build with decentralized identities

Join us

IDX currently exists as a draft of a specification that will continue to evolve over the coming days, weeks, and months with your feedback. We’d love to have you join us on this journey. Here are some resources to get started.

Special thanks to those who have already contributed in various ways.

--

--

Michael Sena

Breaking down digital silos @ceramic. Helping developers #BuildBetter apps @3box. Happy contributor to the decentralized web. Fair data advocate.