Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DID/VCを用いた自己主権型アイデンティティの実現

 DID/VCを用いた自己主権型アイデンティティの実現

https://sbtechnight.connpass.com/event/266723/
2023/01/19(木) 18:50〜
増枠!SoftBank Tech Night #10 Web3.0の実用性を探る
@ソフトバンク

SoftBank Tech Night

January 19, 2023
Tweet

More Decks by SoftBank Tech Night

Other Decks in Technology

Transcript

  1. 安酸 円秀 - やすかた かずひで (@kazuhideYS) - CNIT本部 デジタルID戦略部 -

    次世代ID技術を先行で色々試す係 - 2年ほどDID/VCのPoC開発に従事
  2. ID事業者にアイデンティティの コントロール権限を握られている! - プライバシーリスク - ユーザートラッキング - 垢BAN - ID事業者が単一障害点に

    - 情報漏えい - システム障害 中央集権型IDの課題 ユーザーデータの集約 トラッキング 垢BAN 障害 漏洩 Big Tech
  3. - データポータビリティ権 - 個人データは企業ではなく本人のもの - 個人は自身のサービス利用情報等を自由に請求できるべき - 自己主権化 - 個人のアイデンティティのコントロール権限

    - 忘れられる権利・オプトアウト etc. Big Techへの抵抗意識もあり 「個人データは個人のもの」という考え方が発展 GDPR以降:個人データに対する意識変化
  4. Web3技術が自己主権型アイデンティティを実現 Blockchain / 分散台帳 IDと公開鍵 の紐付けを 公開 秘密鍵は 自己管理 非中央集権型

    改ざん不可能 ID+署名で 認証 ユーザーの公開鍵を 取得し署名を検証 図:一般的なSSIの構成
  5. ★DIF(分散型IDファウンデーション )設立 2017 2019 ★W3C DIDWG発足 ★DID仕様 初版ドラフト発表 2022 ★DID仕様

    W3C勧告に ★Web5発表 ★VC仕様 初版ドラフト発表 2021 ★VC仕様(v1.0) W3C勧告に ★VC仕様(v1.1) W3C勧告に 2020 2018 2016 ★Sovrin Foundation設立 ★Microsoft EntraID ★Microsoft ION プレビュー 標準化 ★SMART health card (接種証明のVC実装) DID VC ★DID Japan Community ★Trusted Web SSI標準化の動き ★SSIの10原則 提唱 - 早い段階から標準化に向けて動いていた - ID/データの仕様の統一 → 特定製品に依存しない「真のSSI」
  6. - Decentralized Identifier (分散型識別子、DID) (W3C勧告) - 識別子(ID)の標準仕様 - 個人がどのようにIDを発行・公開・更新・名前解決するか -

    Verifiable Credential (検証可能クレデンシャル、VC) (W3C勧告) - 個人データ(クレデンシャル)の標準仕様 - 個人データをどのように発行・運搬・提示・検証するか 中心となる2つの標準仕様
  7. Decentralized Identifier (分散型識別子, DID) DID Subject (個人・法人・サービス・デバイス etc.) DID (識別子)

    did:ion:123456 DIDは自分自身 で発行・保管 秘密鍵 DID Method (DIDの公開手段、Bitcoin・Ethereum・Sovrin etc.) 公開 DID Document 署名検証用の公開鍵 RP (個人・サービス・アプリ etc.) 公開鍵 参照 Universal Resolver 提示 やあやあ 我こそは... これ本物? 署名検証
  8. DIDの例 did:ion:EiAJfijtCLb……. { "@context": [ "https://www.w3.org/ns/did/v1" ], "id": "did:ion:test:EiAJfijtCLb12DF5E-VJEqwgWOF7hZuthEaaj3fwmA8GsQ", "verificationMethod":

    [ { "id": "#signingKey", "controller": "", "type": "EcdsaSecp256k1VerificationKey2019", "publicKeyJwk": { "kty": "EC", "crv": "secp256k1", "x": "TV1DDzklxP7VN9dGskTC0BzlvBRmimYcqV17zsKoMi8", "y": "hl4TNeGDPfbqrYACCfdfbaoJk5eIt8SGYyfZ2dyFLK0" } } ], "authentication": ["#signingKey"], "assertionMethod": ["#signingKey"], "capabilityInvocation": ["#signingKey"], "capabilityDelegation": ["#signingKey"], "keyAgreement": ["#signingKey"] } どのMethodの DIDか Method内で ユニークな値 公開鍵情報 用途別の 公開鍵指定 名前解決 DID文字列
  9. - DLT系の例 - did:ion … IPFS + ビットコイン、Microsoft主導 - did:sov

    … sovrinネットワーク - 非DLT系の例 - did:key … 公開鍵そのものをIDに (did:key:<公開鍵のmultibase表現>) - did:ethr … EthereumアドレスをIDに (did:ethr:<ethereumアドレス>) - did:web … DID Documentの公開URLをIDに (did:web:example.com → https://example.com/.well-known/did.json) 様々なDID Method
  10. Verifiable Ceredntial (検証可能クレデンシャル, VC) Holder (保持者) Verifier (検証者) Issuer (発行者)

    DID Method クレデンシャル発行 クレデンシャル提示 VC sign(iss) 直接問合せ不要 Issuer・Holderの 公開鍵を取得して 署名検証 クレデンシャル要求 VP VC sign(iss) sign(hol) - 個人データを格納した署名付き文書 (e.g. 身分証明書、利用データ、保証書、委任状、 etc…) - Issuer・Holderの指定にDIDを利用、DIDの公開鍵で検証可能
  11. VCの例 { "@context": [ "https://www.w3.org/2018/credentials/v1", "https://www.w3.org/2018/credentials/examples/v1" ], "id": "http://example.gov/credentials/3732", "type":

    ["VerifiableCredential", "UniversityDegreeCredential"], "issuer": "did:example:00000000000", "issuanceDate": "2010-01-01T19:23:24Z", "credentialSubject": { "id": "did:example:ebfeb1f712ebc6f1c276e12ec21", "degree": { "type": "BachelorDegree", "name": "Bachelor of Science and Arts" } }, "proof": { "type": "Ed25519Signature2020", "created": "2021-11-13T18:19:39Z", "verificationMethod": "did:example:00000000000#key-1", "proofPurpose": "assertionMethod", "proofValue": "z58DAdFfa9SkqZMVPxAQpic7ndSayn1PzZs6ZjWp1CktyGesjuTSwRdo WhAfGFCF5bppETSTojQCrfFPP2oumHKtz" } } JSON-LD形式(右記)の他、 JWT・CBOR形式も策定 発行者 個人データ 発行者の 署名
  12. 個人データの選択的開示 Holder VC(原本) 氏名 住所 生年月日 電話番号 特殊な署名 (BBS+, SD-JWT

    …) VC(選択的開示) b8f5bf1d4d fbdaf999a6 生年月日 bda57efaf7 特殊な署名 (BBS+, SD-JWT …) Issuer Verifier 発行 提示 ex.) 年齢確認のため 生年月日だけ明かしたい 隠す情報はHash値 だけ記載 Hash値 から計算 Hash値 から検証 一部の署名形式でVCの選択的開示をサポート (SD-JWT、BBS+ Signatures etc.)
  13. 自己主権型アイデンティティの利点と課題 利点 - プライバシー向上 - 個人データのコントロール - 自由度の高いID運用 - データポータビリティの向上

    - B2C2Bのサービス間連携 - 今までIDを持てなかった人 (ID難民)の救済 課題 - 個人の負担・責任の増大 - ID・個人データの管理責任 - IDウォレットの 紛失・盗難リスク - 信頼関係の構築方法 - 相手のDIDは本当に正しい? - VCの発行者は信頼できる?