2022年7月19日に、W3C(World Wide Web Consortium)が分散型IDの仕様を「Decentralized Identifiers(DID)」として公開した。しかし「IDが分散している」とは一体どういうことなのか。少々分かりにくい分散型IDについて解説しよう。
IDを複数サービスで使う
まず現状の課題認識から始める。現在デジタルな世界では、利用者がどのような属性を備えているかといった「アイデンティティー」は、企業の情報システムや特定のクラウドサービスの中などに閉じた形で利用される。この閉じたグループを「信頼のサークル(トラストサークル)」と呼ぶ。企業や大学など、組織内で利用するには必要十分だ。
しかしサークルの外側にあるサービスを利用したり、サークル外の組織や個人と取引したりするには、別の手段で信頼を確保する必要がある。例えば米グーグルのサービスで認証済みだったとしても、米マイクロソフトのサービスを利用するにはマイクロソフト側でも認証が必要になる。こうした信頼のサークルが乱立しているのが現状だ。
本来利用者自身は同一人物である。仮にグーグルのアカウントが失効しても、グーグルに依存せずにサービスの利用を継続できないか。その問題を解決する際に使われる技術の1つが分散型IDだ。
多義的に使われるID
では実際に分散型IDとはどういうものなのかを見ていこう。最初に「ID」とは具体的には何を指すのかを確認しておく。
IDは文脈によって異なる捉え方をする必要があり、それが誤解を招く要因にもなっている。例えば身分証明書をIDと呼ぶこともあるし、識別子(Identifier)のことをIDと呼ぶこともある。さらに個々の利用者の属性という意味で使うアイデンティティーをIDと呼ぶこともある。
企業内のID管理などの文脈ではアイデンティティーを指すことが多い。システムを利用する際の権限は、アイデンティティーとポリシーに基づいて決定される。例えば従業員の属性をルールにのっとってどのように管理するかを定めるのがID管理というわけだ。
しかし分散型IDにおける「ID」は識別子を指す。改めてW3Cが定めた仕様を思い起こせば、タイトルに「Decentralized Identifiers」と明記しているのだ。
独立したデータベースで管理
つまり分散型IDとは、事業者の垣根を超えて利用可能な識別子ということになる。では誰がこの識別子を管理すべきか。特定の事業者が持つデータベースで管理されるのではなく、事業者の都合により左右されない独立したデータベースで管理されるべきだろう。
この要件に合致するのがブロックチェーン(分散台帳)である。ブロックチェーンを動かすノードが、特定の事業者に依存しない形で運営されている、すなわちパブリック型のブロックチェーンが分散型IDには適している。
ただし信頼のサークルから解放される、あるいは特定の認証サービスに処理を集中させずスケーラビリティーを確保するという課題解決に使うのであれば、必ずしもブロックチェーンを利用する必要はない。