ご無沙汰しております、VESS Labsの Minamoto です!プロダクトのリリースが続々と控えておりヒリヒリしてき始めたこの頃です。ストレスとプレッシャーには何歳になっても慣れませんね😩
さて前回は、「〈わたし〉は誰のもの?」というフレーズから、DID (Decentralized Identifier) にまつわる考え方や言葉の整理を行いました。そして今回のテーマは、「具体的にDIDの〈かたち〉を見ていこう」です!具体的にDIDがどのような文字列で成り立っているのかや、DIDを形作るいくつかの概念を説明していきます。
(前回の内容をまだ見てないという方はこちらから👇)
DIDの〈かたち〉
前回の記事で説明した通り、DIDとは Decentralized Identifier(分散型識別子)の略であり、ブロックチェーンなどの技術を用いて第三者的機関を介さずに、ある実体を指し示す一意な文字列(ID)を取り扱うための規格です。
そしてこのDIDは主に以下のような4つの要素によって構成されています。
Scheme: これはこの文字列がDIDであるということを示す単純な接頭語。
DID Method: DIDには様々な方式があり、あるDIDがどの方式を採用しているものなのかを伝えるための文字列です。
Specific identifier: あるDIDメソッド圏内で特定の実体を指し示す一意な文字列です。これがパブリックチェーンのウォレットアドレスとなる場合があります。例えば、did:ethrメソッドでは普段使っているEthereumのウォレットアドレスが割り当てられます。
DID Document: Specific Identifierで示されたDIDに関する情報を記述するためのドキュメント。認証方法や公開鍵といったDIDに関する様々な詳細情報が記されています。各DIDごとに用意されているより詳しい説明書のようなものです。DID DocumentはDIDそのものに記述されているわけではなく、DIDを介して参照されます。
代表的なDID Method
ブロックチェーンにBitcoinやEthereumなど様々な種類があるのと同様にDIDにも様々なDIDメソッドがあり相互運用できるものも、できないものもあります。2023年2月現在、DIDメソッドは150種類以上ありますが今回はその中からいくつかご紹介します。
did:web メソッド
did:webメソッドは、 did:web:vess.id のようにウェブサイトのドメイン名を使ってDIDを生成することができます。
このDIDメソッドではDIDは分散型台帳を使わずに、既存のウェブサイトのドメインから生成できます。従って、厳密には “Decetralized” ではないのですが、信頼性の高いドメインを用いることで実用的なDIDとして頻繁に活用されています。
did:key メソッド
did:keyメソッドは、did:key:z6MkhaXgBZDvotDkL5257… のように”key:”以降のSpecific Identifierが公開鍵そのものになっているDIDメソッドです。
このDIDメソッドは、最もシンプルなDIDメソッドの一つで認証や宣誓においてDIDに記されている公開鍵をそのまま使うことができるのでDIDドキュメントを参照する必要がありません。このように比較的簡単に利用することができるためdid:keyも頻繁に使われているメソッドの一つです。
did:ion メソッド
did:ionメソッドは、Microsoftがビットコインを基盤にして開発しているIONが提供しているDIDメソッドです。did:ion:EiC4gAQxXVCn… のようなDIDからビットコインのブロックチェーンを介してIPFSに保存されいてるDIDドキュメントにアクセスできる仕組みです。
パブリックチェーンを用いたDIDメソッドでは最も有名なメソッドの一つです。
did:pkh メソッド
did:pkhメソッドは SpruceIDやCeramicNetworkのメンバーが中心となって推し進めているDIDメソッドです。
このDIDメソッドでは、EthereumやTezos, Solonaなどのブロックチェーンのウォレットアドレスを元にDIDを作成することができます。did:keyメソッド同様、Specific Identifierに公開鍵(ウォレットアドレス)を含むため、DIDドキュメントを必ずしも作成する必要がありません。
まとめ
今回は、より具体的にDIDがどのような要素で構成されているのかを見ていきました。これ以上に詳しい解説は、是非W3Cの規格を読んでいただくのがベストかと思います!
また、DIDメソッドは現在でも150種類以上あり、今後どのメソッドがメインで使われていくのかもわかりません。
私も全然知らないDIDメソッドばかりですので、また面白いDIDメソッドを見つけたら解説したいと思います!
それでは、今回もお読みいただきありがとうございました! ✊
参考文献
今週の著者 → Minamoto
VESS Website : https://vess.id
VESS Twitter: @vess_id
VESS Discord: https://discord.gg/dAhxxmfc4p
Email : info@vess.id
御社サービスのVESSはどのDIDメソッドを利用しているのでしょうか?Ceramic Networkの3かnftでしょうか?Ceramic NetworkはipfsにユーザーストレージをDIDに紐付けるようですが、資格証明等の発行者と保有者を一体化させてVCをすることをお考えなのでしょうか?
ドキュメントを少し読んだだけですが、同じことを考えていましたのでお尋ねします。見当違いの可能性もい大いにあります、そのときはご容赦ください。