PSの米谷俊輔です。
今回はWeb3.0におけるデジタルアイデンティティを管理する技術、DIDsについて調べてみましたので解説します。
DIDsとは
DIDs (分散型識別子: Decentralized Identifiers) は、分散型台帳技術 (主にブロックチェーン) を使った識別子 (IDを識別するための情報) です。Web2.0までのように認証サービスを提供するIDプロバイダー (IdP) に依存せず、利用するユーザが自身のデジタルアイデンティティ※1を管理し※2、国や事業者等に掲示する情報をユーザー自身が制御することができます。
DIDsはSSI (自己主権型アイデンティティ: Self-Sovereign Identity) ※3を実現する手段として注目されています。
※1: デジタル化した個人などに関連した属性情報 (例: ID、パスワード、メールアドレス) の集合
※2: 実際の運用において学歴や資格等の情報は有効かつ信頼性のある方法で検証が必要であり、信頼できる認証機関やデータ提供者が関与することが求められます。
※3: 国や事業者等の認証機関や管理者に依存することなく、自身の個人情報を自身で管理・保管を行い、あらゆる決定権を持つべきであるとする考え方。
以降の説明の理解を深めるためにDIDsとDIDの違いについて最初に説明します。
DIDとDIDsの違い
Web3.0においてDecentralized IdentifiersはDIDまたはDIDsと表記されます。この表記はDIDを理解する上で障害になることがあります。
DIDは「分散型アイデンティティ: Decentralized Identity」、「分散型識別子: Decentralized Identifier(s)」と異なる意味の複数の言葉を示す略語として使用され、いずれの意味であるかは文脈から理解する必要があります。一方DIDsは「分散型識別子: Decentralized Identifiers」を示す略語であり、意味を明確にしたい場合に利用する傾向があります。
この記事ではDecentralized IdentifiersはDIDsで統一して表記します。
次からDIDsについて解説を始めます。最初にDIDsの特徴です。
DIDsの特徴
DIDsはSSIを実現する手段であることは前述しましたが、SSIでは以下の「SSIの10原則」※4が提唱されております。
※4: 2016年にSSL/TLSの専門家であるクリストファー・アレン氏が「The Path to Self-Sovereign Identity」の記事中で提唱した原則
No. | 原則 | 説明 |
1 | 実在 (Existence) | ユーザーは独立した存在である。 |
2 | コントロール (Control) | ユーザは自身のIDを管理することができる。他のユーザがIDを管理する存在であってはならない。 |
3 | アクセス (Access) | ユーザーは自身のIDに紐づくすべてのデータにアクセスすることができ、ユーザーに隠されたデータや制限がない。 |
4 | 透明性 (Transparency) | IDを管理・更新するシステムおよびアルゴリズムは透明性が担保されている。 |
5 | 持続性 (Persistence) | IDは永久に、少なくともユーザーが望む限り存続する。これは「忘れられる権利」と矛盾しない。 |
6 | 携帯性 (Portability) | IDに紐づくすべてのデータはサービス間で利用可能である。またユーザが自身のIDを管理し続けられることを保証する。 |
7 | 相互運用性 (Interoperability) | IDは可能な限り広く利用できる。 |
8 | 同意 (Consent) | IDに紐づくすべてのデータは共有される際にはユーザの同意が必要である。 |
9 | 最小化 (Minimalization) | IDに紐づくすべてのデータは開示範囲を最小限とする。 |
10 | 保護 (Protection) | ユーザの権利は保護されなければならない。ID ネットワークのニーズよりも個人の自由と権利が優先される。 |
出典: https://www.w3.org/TR/did-core/#design-goals
「SSIの10原則」を私的にまとめるとSSIは、「特定の国やシステムに依存しない独立した存在である。」、「ユーザーは自身のIDに紐づくすべてのデータを把握し、管理することができる。」、「様々なサービス間で相互運用が可能で、ユーザーが望む限り存続する。」、「SSIに紐づいたデータの提示はユーザの同意が必要、且つ最小限の範囲に限られる。」、「これらを実現するSSIを管理するシステムおよびアルゴリズムは堅牢かつ透明性を担保されている。」といった特徴があると考えます。SSIを実現する手段であるDIDsはこの原則に準じた特徴を持つと考えられます。
またDIDsは国際技術標準化団体のW3C (World Wide Web Consortium) により2022年7月19日に「Decentralized Identifiers (DIDs) v1.0」として標準規格が公表されました。W3Cが定めた標準規格はDIDsを理解・利用する上で重要な基準となると考えます。
「Decentralized Identifiers (DIDs) v1.0」の要旨(全文はこちら) では「SSIの10原則」の他に「DIDsは検証可能な分散型デジタルIDを可能にする新しいタイプの識別子である。」、「DIDsは、DID subjectと DID documentを関連付けるURIであり、その表題に関連する信頼できるやり取りを可能にする。」の特徴が追加されています。
「DIDsは検証可能な分散型デジタルIDを可能にする」という特徴からDIDsには、検証可能なID、検証不可能なID、検証可能だが検証しないIDがあるということが分かります。検証可能なIDとは氏名、住所、血液型、生年月日、写真、認証番号、資格、学歴、職歴、病歴などパーソナリティに結びつくIDのうち、行政や信頼できる機関より検証に必要なデータが発行されるものが対象となります。
検証可能な分散型デジタルIDを実現するために必要とされている技術がVC (検証可能な資格情報: Verifiable Credentials) です。
VCとは
VCは行政や信頼できる機関より発行されたデータを使い安全にIDの真正を検証する技術およびフォーマットであり情報そのものとは異なります。
VCもDIDsと同様にW3Cの「Verifiable Credentials Data Model v2.0」により標準規格が公表されています。
「Verifiable Credentials Data Model v2.0」におけるVCの仕組みについて解説します。
VCの仕組み
「Verifiable Credentials Data Model v2.0」ではVCの仕組みの一例を以下の図のように表しています。
図1. The roles and information flows forming the basis for this specification.
出典: Verifiable Credentials Data Model v2.0 | W3C
図1には3人の人物「Issuer」 (発行者)、「Holder」 (保有者)、「Verifier」 (検証者) および1つのデータベース「Verifiable Data Registry」 (検証可能なデータの保管データベース) が登場します。VCの仕組みにおけるそれぞれの役割は以下の通りです。
Holder (保有者)
- DIDの利用ユーザ―を想定
- Verifiable Data Registryにスキーマを利用してID情報を登録します。Issuerに対しID情報に対するVCs (VCで検証されるデジタル証明書) の発行を依頼します。
- Issuerが発行したVCsを保管し、Verifierに対しID情報およびVCsを提示します。
Issuer (発行者)
- 行政や信頼できる機関等の検証に必要なデータの発行元を想定
- Holderの依頼を受けてVerifiable Data Registryに登録されたID情報を検証し、VCsを発行します。
Verifier (検証者)
- 認証システム等、HolderのID情報を要求元を想定
- Holderが提示したID情報に対しVerifiable Data Registryに登録されたスキーマおよびID情報を検証します。
- Holderが提示したVCsを検証します。
Verifiable Data Registry (検証可能なデータの保管データベース)
- スキーマおよびID情報を保持します。
VCの仕組みによりVerifierはIssuer問い合わせることなく、Holderが提示したID情報の検証を行うことができます。
まとめ
DIDsの解説をまとめると以下となります。
- DIDsは、分散型台帳技術を使った識別子です。
- DIDsは「SSIの10原則」に準じた特徴を持つと考えられる。
- 「Decentralized Identifiers (DIDs) v1.0」はW3Cにより公表されたDIDsの標準規格である。
- DIDsの検証可能な分散型デジタルIDを実現する技術がVCである。
- VCとDIDsを組み合わせることでID情報の真正が保証される。
いかがでしたでしょうか。今回はDIDsから関連すSSIやVCの簡単な解説を行いました。DIDsやVCについてはこれからもさらに技術的な解説を行う予定です。
Web3.0時代のIDであるDIDsが社会に普及することによりID情報の主導権はユーザー自身の手に取り戻されることが期待されます。また今までID情報を管理してきたIdPは個人情報流出のリスクから解放されることが考えられます。今後もDIDsをはじめとしたブロックチェーン技術について注目していきたいと思います。