分散型アイデンティファイアー (DIDs: Decentralized Identifiers) (前編)

Akimitsu Shiseki
Kaula Lab
Published in
12 min readOct 16, 2022

【概要】2022年7月19日、W3C (World Wide Web Consortium)からDecentralized Identifiers (DIDs) Core Specification v1.0のW3C勧告 (W3C Recommendation)が発表され分散型アイデンティファイアーが標準化されました。なぜ新しいアイデンティファイアー (識別子) が必要になり、それによってこれまで出来なかった何が出来るようになり、その実現のための技術的なイノベーションは何だったのかについて解説していきます。

************* 目次 ****************
【1】アイデンティファイアーとネットワーク
【2】DIDネットワークとToIPスタック
【3】DIDの4つの要件
【4】DID利用のメリット
【5】DIDの利用例
*************************************

【1】アイデンティファイアーとネットワーク

アイデンティファイアー(識別子)はそれ単独で存在することはありません。何らかのネットワークの中で対象を識別するためにアイデンティファイアーは存在します。例えば電話番号は電話ネットワークの識別子であり、eメールアドレスはeメールネットワークの識別子です。つまり分散型アイデンティファイアー(DIDs)もそれが識別子として機能するネットワークがあり、それが従来のネットワークと異なるために新しいアイデンティファイアーが必要になったのです。そのネットワークはDIDネットワークと呼ばれますが、その特徴を知ることがDIDsを理解する第一歩になります。

【2】DIDネットワークとToIPスタック

DIDネットワークは「デジタル技術による信頼のネットワーク(digital trust network)」です。暗号技術によって守られ、信頼出来る第三者(trusted third party)に依存しないのが特徴です。ここでの信頼は、暗号学的信頼と人的信頼の両方を含みます。暗号学的信頼とは、①DIDがグローバルに唯一の識別子で、対象(subject)および暗号鍵との結び付きが保証されていて、②その鍵によりピアツーピアの(仲介者なしの)セキュアな(なりすましや改竄が不可能な)通信が出来る技術的な信頼を意味します。人的信頼とは、③証明書が信頼出来(免許証やパスポートが信頼できるのと同様)、④ネットワークのガバナンスが信頼出来る(クレジットカードの仕組みが信頼できるのと同様)現実社会の信頼を意味します。

これら4種類の信頼は、前回の記事で紹介したToIP(Trust over IP Foundation)スタックの4レイヤーに対応しています。ToIPスタックをコミュニケーションの両側に備えることで(標準化されたプロトコルを実装することで)インターネットにトラストレイヤーが実現できるのは、TCP/IPスタックにより通信が可能になるのと同様な考え方です。DIDネットワークとは、ToIPスタックによるトラストレイヤーを持つ信頼のネットワークで、その識別子がDIDになります。

(原典: Introduction to Trust Over IP 2.0 by ToIP Foundation 11/17, 2021)

【3】DIDの4つの要件

ToIPの4レイヤーの上位レイヤーは下位レイヤーの上に成り立っています。つまりレイヤー1が全てのレイヤーの信頼の源になります。DIDはレイヤー1で定義されますが、アイデンティファイアーに対する要件は次の4つです。

1. 中央集権的な発行機関が存在しない

2. 永続的であり、それを支える組織の継続的運用を必要としない

3. 持ち主を暗号学的に証明できる

4. 対象(subject)に関するメタデータをリゾルブできる

要件1は、DIDを発行する中央集権的な組織が存在しないことを意味しています。DIDはグローバルにユニークな(唯一無二な)識別子であるURI (Uniform Resource Identifier)の一種ですが、既存のほとんどのURIには識別子が重複しないように管理する中央集権的組織が存在します。例えば電話番号、郵便番号、ドメイン名にはそれぞれその識別子を管理する組織が存在します。しかしDIDにはそのような管理機関が存在せず、利用者は自分で必要な時にDIDを発行して直ぐに利用を開始することが出来ます。またDIDは対象を特定しますが、一つの対象は複数のDIDを持つことが可能です。つまりAさんはBさんとはDID_AB、CさんとはDID_ACを使ってコミュニケーションすることが可能です。これはコリレーション(同一識別子を持つトランザクションを束ねることで対象の個人情報を暴くこと)からプライバシーを守る大切な性質です。例えばマイナンバーは、異なる行政機関、銀行、保険会社、病院などからサービスを受ける際に同じ識別子を使いますが、これにより複数の組織に分散していた個人情報がマイナンバーによって串刺しされ(つまりコリレーションされ)個人のプライバシーが第三者に把握されてしまう恐れがあります。DIDではそのようなリスクの回避が可能になっています。

要件2は、DIDがURI(Uniform Resource Identifier)であるだけでなく、URN (Uniform Resource Name)であることを示しています。URNはURIのサブセットで、グローバルに永久にユニークで、再割り振りがなく、インターネットの内外に関わらずあらゆる対象(subject)に対する識別子であることを意味します。例えば電話番号は、グローバルにユニークですが、電話契約が終了するとその番号は他者に再割り振りされるためURNとは言えません。URLも同様でドメイン名は永久的ではありませんし、対象はインターネット上のリソースに限られます。これに対して、DIDの対象はインターネット上のリソースのみならず、現実世界の人、組織、動物、モノ、自然物、概念、権利など制限がありません。また同じDIDが将来別の対象に再割り振りされることがないため、あらゆる対象の永久的な識別子になります。DIDはそれを支える組織の継続的運用を必要としないURNです。

要件3は、DIDとそれが指す対象との結び付きを暗号学的に証明出来ることを意味します。DIDには公開鍵暗号方式の鍵ペア(公開鍵、秘密鍵)が対応しており、これを利用してDIDが、鍵の管理者、つまりDID subject(またはDID controller)を指していることを証明することができます。

要件4は、DIDから対象に関するメタデータを得られる(リゾルブ出来る)ことを意味します。対象(subject)に関するメタデータはDIDの方式ごとに定められた方法(DIDメソッド)に従ってDIDドキュメントに書かれレジストリ(VDR: Verifiable Data Registry)にDIDと共に登録、公開されます。同じDIDメソッドによって実装されるソフトウエア(リゾルバー)にDIDをインプットすればDIDドキュメントをアウトプットすることが出来ます。つまり対象Aとコミュニケーションする相手は、AのDIDからAのDIDドキュメントを得ることが出来ます。DIDドキュメントには、対象Aの公開鍵、エンドポイントアドレスなどがメタデータとして書かれています。これにより、対象Aとコミュニケーションする相手は、Aの電子署名を認証し、暗号文を複合することが可能になります。Aも相手のDIDから公開鍵を得られるため、双方向のセキュアなコミュニケーションが可能になります。

対象(DID subject)、DID、DIDドキュメント、レジストリ(VDR)の関係は下図のようになります。このDID(did:example:123)のDIDメソッドは exampleになります。図のDID controllerとは、DIDとその秘密鍵の管理者です。通常DID subjectとDID controllerは同一ですが、親が幼児のDIDと秘密鍵を管理するような場合は別になります。DID URLとは、その文字列中にDIDを含み、インターネット上のDIDドキュメントを参照する識別子です。URLの表記法であるパス、クエリーパラメータ、フラグメントを使うことでDIDドキュメントやそこに記述されているメタデータを参照外し(dereference)により直接得ることが出来ます。

(原典: Decentralized Identifiers (DIDs) v1.0 7/19, 2022)

【4】DID利用のメリット

DIDの特徴が理解出来るとそれを利用するメリットが見えてきます。まず中央集権的な発行機関が存在しないことから、DID発行に際して外部の人的サービスへの依存が不要になり、発行申請などの手続きが無くなることで発行までのリードタイムが数十秒に短縮されます。また発行コストはほぼゼロになります。これにより個人やIoTデバイスなど多数のエンティティへのアイデンティファイアーの付与が現実的になります。

永続的であり、それを支える組織の継続的運用を必要としないことは、一度付与されたアイデンティファイアーは対象(subject)が望む限り無条件に使い続けられることを意味します。当たり前のようですが、たとえばSNSが発行するアイデンティファイアーの利用はそのSNSの存続と継続利用が条件であり、また運用サービスの代償として個人情報の提供が必要です。

DIDは公開鍵暗号方式の鍵ペアと結びつく(バインディング)ことで認証とメッセージの暗号化が可能になりますが、アイデンティファイアーと公開鍵との結び付きはこれまで認証局などの信頼出来る第三者(TTP: trusted third party)が発行する証明書によって行われてきました。DIDではこれをTTPへの依存無しに暗号学的に証明可能です。DIDと鍵ペアのバインディングはToIPの上位レイヤーで利用され、レイヤー2ではDID同士のセキュアなコミュニケーション、レイヤー3では証明書(VCs: Verifiable Credentials)の真正性の証明がこれにより実現されます。自己主権型アイデンティティ(SSI: Self Sovereign Identity)の要となる機能がTTPに依存せずにコストゼロで実現できることは画期的なことです。

【5】DIDの利用例

欧州委員会の情報社会・メディア総局 (DG CONNECT: General Directorate CONNECT) が主導する持続可能な製品のためのエコデザイン規則案 (ESPR: Ecodesign for Sustainable Products Regulation) の一環としてDIDを利用した DPP (Digital Product Passport) の準備が進んでいます。欧州委員会 (European Commission) は欧州連合 (EU: European Union) の政策執行機関で日本の内閣に相当します。総局 (General Directorate)は日本の省庁に相当し、DG CONNECT (CONNECT: Communications Networks, and Content Technology) はデジタル技術政策を担当しています。2050年までにカーボンニュートラル実現を目指す欧州グリーンディール (European Green Deal)の一環としてESPRは発表され、今後製品カテゴリーごとに細則 (委任法令: delegated act) が定められる予定です。DIDにより製品を識別し、製造履歴やリサイクル部品の割合などを電子的に記録したデジタルプロダクトパスポート(DPP)で証明することで持続可能な社会を推進します。

また国内ではMOBI (Mobility Open Blockchain Initiative) メンバーのKaulaが国内外のバッテリー循環エコシステムを支えるKABLIS(Kaula Battery Lifecycle Information System)をDID利用により開発中です。KABLISは電気自動車(EV)や定置型蓄電池(電力貯蔵システム ESS: Energy Storage System)のバッテリーの品質をデータに基づき診断し電子的に証明することでバッテリー循環社会を支えます。バッテリーは製造時に温室効果ガスを排出しますが、使用することで抑制できるため、出来るだけ長く使用することがカーボンニュートラル実現に貢献します。

これらの事例では参加企業の機密情報保護とグリーン施策推進の両立、および消費者の製品サービス選別のための信頼できるデータの提供のために非中央集権型システムが採用されています。

以上、分散型アイデンティファイアー (DIDs)の特徴とメリットについて説明しました。(中編)ではそのような特徴を持つDIDを実現するための技術的課題と解決方法について詳しく見ていきたいと思います。

最後までお読み頂きありがとうございます。
記事へのご意見やご質問などがございましたらお気軽に下記までご連絡ください。
info@kaula-lab.com
カウラ株式会社HP: kaula.jp

(カウラ株式会社はEnterprise Ethereum Allianceの会員企業です。)

関連記事

· Web3.0におけるアイデンティティレイヤー(前編)https://medium.com/kaula-lab/web3-0-identity-layer-89494f479c14

· Web3.0におけるアイデンティティレイヤー(後編)https://medium.com/kaula-lab/web3-0-identity-layer-2-4632344ec069

--

--

Akimitsu Shiseki
Kaula Lab

Shiraki Ltd. VP IT Consulting / Kaula Inc. advisor / Blockchain and SSI (self-sovereign-identity) expert