Identity
Microsoft
Technology

デジタル・アイデンティティの最新動向 (08-07-2020)

2020-08-22 04:00

マイクロソフトのアイデンティティ規格チームにジョインして、2か月が立とうとしています。今月も濃い学びが多く、私が把握している限りのデジタルアイデンティティの動向をまとめていきます。

① 業界イベントからのラーニング、② 業界アップデート、③ 業界ニュース、の3つの観点から最新動向を紹介しています! 一見、離れているように見えても、基本的には全部、分散型IDに紐づいているので、ご安心を(笑)

業界用語や背景を理解されたい方は、先月の記事:デジタル・アイデンティティの最新動向 (07-10-2020)をご参照ください。

① イベント/Industry Events

A. OpenID Foundation

SIOP Meet-up2

SIOP Virtual Meetup #2が7/28に開催されました。

SIOPによって、ユーザーのOPとRPが直接トークンをやり取りできるようになるため、ユーザー中心のアーキテクチャや分散型IDの世界でもかなり注目されております。SIOPは、OIDCの中で策定されているため、DIDの世界で利用するために、OIDCのコアプロトコルに変更が必要な部分があるのか、あるのであればどこか、が大きな論点です。

ハイライトはMattrのTobias LookerによるSIOP Laundry Listのプレゼン

  • Attesting Keys from the Past (一番先に本格的な議論が起こりそう)
  • SIOP claims binding
  • Finding the SIOP address
  • More flexibility in the assertion format supported
  • Support for Device Flow Style Interaction

SIOPに関しては、いくつか規格案があり、 メインは、① OIDC SIOP, ② DIF OIDC DID Profile 他には、③ Tobiasによるドラフト OIDC Credential Provider、④ RWOT WPの“Using OpenID Connect Self-Issued to Achieve DID Auth”があります。

現在、Gap Analysisも進めているのでまた報告します~

OpenID Tech Night

OpenID TechNight vol.17 が8/20に開催されました。

トピックは、以下3つです。

  • Safari (ITP) & Chrome (SameSite=Lax as default) が Federation に与える影響
  • Bounce Tracking ProtectionにおけるFederationへの課題と最新動向
  • WWDC 2020 参加報告 ~ Sign in with Apple & WebAuthn まわりを中心に

ブラウザがトラッキング対策を強化し、Cookieの利用が制限されていく中で、Federationなどログイン周りにどのような影響が出るのかが大きなテーマ。難易度高め。

私の担当ではないものの、私のチームでもWebAuthn, IsLoggedIn, WedIDの規格化には参加しているので、とても興味深かったです。

質疑応答のNovさんの感じが最高でした。

動画はOpenID Foundation 公式 YouTube チャネルから視聴可能でした!

おまけ

OpenID Connectを単純化するとこうなる:

[ユーザーがブラウザ上でページにアクセスしようとする]

  • ブラウザ:「サーバーさん、ユーザーに要求されて、このページを表示させたいの。」
  • サーバー:「まずは、本当にユーザーが要求しているのか確認したいから、ユーザーのOKをもらってここ(事前に登録してあるエンドポイント)にいって一つ目のトークンをもらってきて。そのトークンをここ(別のエンドポイント)にみせたら、ページを表示してあげる~」
  • ブラウザ「はーい」 [ユーザーに認証画面が表示される]

いろいろ単純化してますけど、Authorization Code Grantのエッセンスがこれだって1年前にされかに教えてほしかったw

B. IETF

IETFは、インターネット技術の標準化を推進する任意団体であり、ざっくり言うと、IETFはHTTP関連、W3CはHTML関連の規格を担当している、と整理すると、理解しやすいかもしれません。詳しくは、こちら:IETFとは

普段は、メーリングリストで議論をするIETFですが、年に数回、対面で議論をする場が設けられます。ただ、このようなご時世ですので、今年はオンライン化され、7/27 - 7/31の間、IETF 108 Onlineが開催されました。

以下、私が議論を追っていたワーキンググループ(WG)です。

dispatch:JSON Pathの標準化

JSONPathという、JSONから欲しいkey,value,lengthなどを取得できる、人気が高く10年以上使われ続けているライブラリがあるのですが、なんと今まで規格化されて来なかったのです。

どうして気にするのかというと、Decentralized Identity Foundation (DIF)で規格化されようとしている、Verifier(RP)がHolder(User)に欲しいクレームを伝えるためのフォーマットを定義しているPresentation Exchangeという分散型ID周りの規格がJSONPathを用いており、規格化されていない規格に頼る規格というものはよろしくないからです。

ただ、IETF 108において、JSONPathを企画かしていこう!という大枠の合意は取れたものの、これからWGのCharter(規格のスコープなどを定めたもの)が策定され、それから議論が始まっていくので、JSONPathが規格化される前に、Presentation ExchangeのV.01がStableになりそうです。

JSONPathについて詳しく知りたい方向けには、このようなQiita記事を見つけました:JSONPath 使い方まとめ

CBOR:FIDOやIoTにおいて大事なめちゃくちゃ興味深いデータフォーマット

W3CのDID-CORE SpecにおいてDID DocumentをマッピングするデータフォーマットとしてJSON, JSON-LDに加えて、CBORが追加されたことや、データサイズを縮小するためにCBOR-LDの議論が始まっていたりするので、最新動向を把握すべく、参加していました。

CBORについて詳しく知りたい方向けには、このような記事を見つけました:CBORとは

GNAP:OAuthの改良版の議論が本格化

OAuthを改良した仕様を策定するためのWGが立ちあがっていたのですが、ついに、複数あるドラフトの中から、どれをベースにして仕様策定を進めていくかの議論が行われました。オンラインだったせいか、1つには決まらず、デザインチームを立ち上げ、そこで、複数のドラフトをもとにベースとなるドラフトを1つ策定していくことになりました。

コンセンサスって難しいですね。

GNAPがこのタイミングで本当に必要かどうかは、いろいろな考えがあり、私も思うところはあるのですが、触れないでおきます。

gaia:全ての人にインターネットアクセスを

実は、IETFの中に Global Access to Internet for All(gaia)とHuman Rights Protocol Considerations(hrpc)というまさに私の興味に直球ど真ん中ストライクなWGが2つあったのです!

gaiaでは、南アフリカで、コミュニティの力を最大限駆使しながら、インターネットアクセスを整備しているZenzeleni Bahlali iNetworksという団体のお話が一番興味深かったです。非営利団体がインターネットアクセスの整備に取り組むのは非常に珍しいことです。

課金モデルの設定や使い方の教え方などに苦労されたお話が生々しく、「Every assumption needs to be revisited」という発言は本当に心から共感しました。

hrpc:インターネット規格 X 人権

hrpsでは、IETFで策定される規格に人権への配慮を如何に入れ込むかという議論がなされていました。IETFが策定するインターネット規格が、国家権力による国民統制という使われ方をされるケースが出てきたことがきっかけで始まった議論であると推測します。

ユーズケースをヒアリングなどをもとに丁寧に調べており、とても質の高いドキュメントです。ただ、気候変動や核兵器の議論と同じで、国家による利用を如何にコントロールするかは、国際関係学や外交など別のドメインへの依存度も高い気がしています。。

※ 他には、secdispatchやACEなども追っていました。

C. その他

OAuth Security Workshop 2020

OAuthに関するノウハウを世界で一番持っている30-40人によるかなりハイレベルな会議、 OAuth Security Workshop 2020。 プロトコルがどうしてそうなっているのか、改善点はどこか、と見極める際にSecurityという観点はかなり大事なので、かなり勉強になりましたが、初日のプレゼンは何とかついて行けたものの、2-3日目のアンカンファレンスはなかなか辛めでした(笑)

現在、公式YouTubeチャネルにアーカイブされている動画たちを用いて絶賛勉強中です。

私が特に着目しているのは、こちらです:

Kuppingercole SSI session

KuppingercoleがFuture of Digital Identity: Self-Sovereign Identity & Verifiable Credentialsというイベントを8/6に開催。

最初の3時間を視聴していたのですが、SSI/VC/DIDという単語の乱用がすごかったですね。SSIと言っているのに、中身はVCの話をしていたり。

Prof. Dr. David ChadwickによるCOVID-19 Certificates for Everyoneという、ブロックチェーンやDIDを使わなくてもOIDCとVCで個人中心のCOVID-19証明ができるアプリが作れる、というセッションが一番面白かったです。 RPが検証できるIssuerの署名が入ったVCをユーザーがOIDCで提示すればそれでいいじゃん、という発見をしてしまった。

一緒に閲覧していた崎村さんの「SSIはraw data(= PP keys pair that is not signed by a third party)」「VCももともとOIDCにある。ID Tokenといいます。」というコメントが最高でした。

② アップデート/Industry Updates

W3C

DID-CORE規格の最新アップデート(as of 08-07-2020)

  • AssertionMethod: used to express a verification relationship which indicates that a verification method can be used to assert a statement on behalf of the DID subject. (When processing of a verifiable credential by a verifier)
  • KeyAgreement: used to express a verification relationship which an entity can use to engage in key agreement protocols on behalf of the DID subject. (When establishing a TLS session on behalf of the DID subject)
  • Capability invocation: used to express a verification relationship which an entity can use to invoke capabilities as the DID subject or on behalf of the DID subject. (When DID sub chooses to invoke their capability to start a vehicle through the combined usage of a verification method and the startCar capability)

JSON vs. JSON-LD

最近、JSON-LDについてもっと知りたいのですが、詳しい方がいらっしゃれば教えてください!

DIF (Decentralized Identity Foundation)

Interop WGが本格始動

利用するツールやミーティングの時間など、ロジ周りの議論がやっと終わり、本格的な中身の議論へ。Test Suitesをどうするのか、Interop Testの在り方はどうであるべきかが最初論点となっております。

また、どのレイヤーの相互運用性(Interoperability)の話をしているのか議論を整理するために、インターネットにおけるOSIの7つのレイヤーのように、分散型の世界のレイヤーを整理しようとしています。

SSI Stackなどがベースになりそうです。

ブロックチェーンのガバナンスモデルとは

前回も言及したかもしれませんが、Blockchain governanceにかなり興味があります。 なぜかというと、ブロックチェーンを実際にプロダクションで利用するとなると、お客様に安心して使ってもらうためには、どのように決断が下されていて、その責任は誰にあって、透明性の担保はどのようになっていて、など開発中には浮かんでこない、技術者が苦手とする(私は得意とする)質問が浮かんできます。

まずは、Emerging Best Practiceの一つとして polkadotのガバナンスモデルについて調べてみました。

ブロックチェーンガバナンスは大きく、On-chainとOff-chainに分けることができ、On-Chainはトークンありきのパターンが多く、Off-Chainはコンソーシアムのような体系が多かったりします。

そんな中、分散型IDの世界におけるブロックチェーンの利用は、トークンなし、コンソーシアムもなし、という場合が多く、かなりチャレンジングな感じです。

ちなみに、私が見てきた中で、一番よく書かれているIdentity周りのTrust Frameworkです:Open Identity Foundation: A Guide to Trust Frameworks and Interoperability

これがどこまで分散型IDの世界でも通用するのか暇なときに考えてみたいです。

③ 業界ニュース

NIST Digital Identity Guidelinesへのコメント

NIST(米国国立標準技術研究所)によるSP 800-63 Digital Identity Guidelinesへのコメント募集期間が終わりました。

W3C CCGとしてもコメントが提出されました。

NISTについて詳しく知りたい方向けには、このような記事を見つけました:NIST(米国標準技術研究所)とセキュリティ(その1)~概要編~

SSI X サプライチェーンに注力したDHSのStart-upプログラム

アメリカ合衆国国土安全保障省(DHS)が主催しているSilicon Valley Innovation Programたるものがあるのですが、蓋を開けてみると、DIDを用いたSSIに取り組んでいるスタートアップたちばかり。

その中のスタートアップでCTOを務めていた友人に話を聞くと、サプライチェーンに以下にSSIを使っていくかとInteroperabilityが大きなフォーカスだそうです。

日本でも政府が似たような動きをしてくれることに期待。

それにしてもSSIを国土安全保障のマターとしてとらえているアメリカ、やりますね。

MyData Operatorsアワード発表される

THE MYDATA OPERATOR 2020 AWARDが7/29に発表されました。

日本からは富士通のPersoniumが認定を受けております!

MyDataが、コンセプトを越えて実世界で実現されていくためのマイルストーンとして私はかなり着目しております。

Learningリソース

今月見つけた有益なリソースはこちら!

はい、相変わらずIdentity Geekなクリスチーナでした!

最近は、公益社団法人日本青年会議所が主催する人間力大賞において文部科学大臣奨励賞を受賞したり、Vogueに取材してもらったり、政府と意見交換の場をいただいたり、Jaxaを案内してもらったり、BBQしまくったりなど、元気にやっております!

※ 個人の見解であり所属する組織の公式見解ではありません