Categories: BlockChain

Decentralized Identity Management, Blockchain – Why Bother

This blog represents details on Decentralized Identity Management and why you should care? Given that IBM, Hyperledger has joined Blockchain Identity Consortium makes it much more important to quickly go over the concepts related with decentralized identity management. Check out a related Hyperledger project, Project Indy, on supporting independent identity on distributed ledgers.

Traditional Centralized or Federated Identity Management System

Conventional identity management systems have always been based on centralized authorities such as corporate directory services , certificate authorities (CA) , or domain name registries. Each of these centralized identity management systems acted as a “root of trust”.

In order to have the identity management work across different systems, there is something called as federated identity management. According to Wikipedia post of Federated Identitya federated identity in IT is the means of linking a person’s electronic identity and attributes, stored across multiple distinct identity management system.

What is Decentralized Identity Management System?

Following are some of the key points to understand decentralized identity management in better manner:

  • In decentralized identity management system, there are no centralized authorities anymore. The “root of trust” lies with Distributed Ledger. The copies of ledger are maintained by multiple participants, and thus, distributed ledger. Note that Blockchain is one of the classic example of Distributed Ledger Technology.
  • Entities no more identify themselves with traditional centralized authorities such as CAs, domain name registries etc. They rather identify themselves with the distributed ledger.
  • Each entity is assigned as Decentralized Identifiers (DIDs).
  • DIDs can be used to point what is called as DID Document.
  • DID Document may consists of one or more service endpoint that can be used to interact with the entity. This comes in a JSON format. Every DID document must have an associated DID. This is how a DID document would look like:
    {
      "@context": "https;//w3id.org/did/v1",
      "id": "did:example:123456789abcdefghi",
      "authorizationCapability": [{
        // this entity is a delegate and may update any field in this
        // DID Document using any authentication mechanism understood
        // by the ledger
        "permission": "UpdateDidDocument",
        "entity": "did:example:zxyvwtrkpn987654321"
      }],
      "credentialRepositoryService": "https://vc.example.com/abcdef",
      "authenticationCredential": [{
        // this biometric can be used to authenticate as DID ...fghi
        "id": "did:example:123456789abcdefghi/biometric/1",
        "type": "PseudonymousBiometricTemplate2017",
        "owner": "did:example:123456789abcdefghi",
        "biometricService": "https://example.com/authenticate"
        "biometricTemplateShard": "Mjk4MzQyO...5Mzg0MDI5Mwo="
      }]
    }
    
  • Following are some of the key terminologies in relation with DID:
    • DID path
    • DID fragment
    • DID normalization
    • DID persistence

For details, read the W3C Community Group Draft Report on Decentralized Identifiers. Check out a related W3C Community Group draft on verifiable claims.

Ajitesh Kumar

I have been recently working in the area of Data analytics including Data Science and Machine Learning / Deep Learning. I am also passionate about different technologies including programming languages such as Java/JEE, Javascript, Python, R, Julia, etc, and technologies such as Blockchain, mobile computing, cloud-native technologies, application security, cloud computing platforms, big data, etc. I would love to connect with you on Linkedin. Check out my latest book titled as First Principles Thinking: Building winning products using first principles thinking.

Share
Published by
Ajitesh Kumar

Recent Posts

Retrieval Augmented Generation (RAG) & LLM: Examples

Last updated: 25th Jan, 2025 Have you ever wondered how to seamlessly integrate the vast…

1 week ago

How to Setup MEAN App with LangChain.js

Hey there! As I venture into building agentic MEAN apps with LangChain.js, I wanted to…

2 weeks ago

Build AI Chatbots for SAAS Using LLMs, RAG, Multi-Agent Frameworks

Software-as-a-Service (SaaS) providers have long relied on traditional chatbot solutions like AWS Lex and Google…

2 weeks ago

Creating a RAG Application Using LangGraph: Example Code

Retrieval-Augmented Generation (RAG) is an innovative generative AI method that combines retrieval-based search with large…

3 weeks ago

Building a RAG Application with LangChain: Example Code

The combination of Retrieval-Augmented Generation (RAG) and powerful language models enables the development of sophisticated…

3 weeks ago

Building an OpenAI Chatbot with LangChain

Have you ever wondered how to use OpenAI APIs to create custom chatbots? With advancements…

3 weeks ago