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

Wallet API, Verifier APIで実現するIDカード on iPhoneの世界

Wallet API, Verifier APIで実現するIDカード on iPhoneの世界

近年、デジタル空間における個人認証の需要が増す中、iOSではiOS 15.4からWalletアプリへ運転免許証や州IDの搭載ができるようになりました。
更には、iOS 16からWallet APIを通じた個人情報の共有、そしてiOS 17からはVerifier APIを用いた対面での個人情報の共有が可能となりました。
これらの機能はまだ米国でしか使えませんが、マイナンバーカード機能がiPhoneに搭載されることが発表されるなど、日本でもIDカードのデジタル化に対する期待が高まっています。

そこで、このセッションでは上記のデジタルIDに関連する機能が日本でも利用可能になった場合に備えて以下の内容を話します。

デジタルIDを支える国際標準 ISO18013-5の概要
Wallet API, Verifier APIで可能になるユースケースの紹介
Wallet API, Verifier APIの具体的な実装例
ISO 18013-5に準拠した対面での個人情報共有機能を実装する際に得られた知見の共有
このセッションを通じて、日本におけるデジタルID時代を一緒に妄想し、将来に備えましょう!

Shuhei Shitamori

August 23, 2024
Tweet

Other Decks in Programming

Transcript

  1. iPhoneΛϞόΠϧeID Readerͱͯ͠࢖͏ w ํ๏ w J04"1*Λ࢖͏ w *%7FSJ fi FS"1*

    w 7FSJGZXJUI8BMMFU"1* w ํ๏ w ඪ४ن֨ʹ४ڌͨ͠ϦʔμʔΞϓϦΛࣗ࡞͢Δ
  2. ༻్ʹԠͨ͡3छྨͷID Veri fi er API w %JTQMBZ3FRVFTU w %BUB3FRVFTU w

    3BX%BUB3FRVFTU 23 ಋೖ͠΍͢͞ қ ೉ ॊೈੑ ௿ ߴ
  3. ID Verifier API ର໘͢ΔϢʔβʔͷຊਓɾ೥ྸ֬ೝ Display Request w ૬ख୺຤͔ΒಡΈऔͬͨݸਓ৘ใΛγεςϜ6*্ʹදࣔ͢Δ w ݸਓ৘ใͷอଘ͸ෆՄ

    w දࣔͰ͖Δ߲໨ w ࢯ໊ w ೥ྸ /ࡀҎ্͔ w إࣸਅ 24 3FBEFS୺຤ )PMEFS୺຤ ϦΫΤετ *%৘ใ
  4. ༻్ʹԠͨ͡3छྨͷID Veri fi er API w %JTQMBZ3FRVFTU w %BUB3FRVFTU w

    3BX%BUB3FRVFTU 26 ಋೖ͠΍͢͞ қ ೉ ॊೈੑ ௿ ߴ ID Verifier API ର໘͢ΔϢʔβʔͷຊਓɾ೥ྸ֬ೝ
  5. Data Request w ݸਓ৘ใͦͷ΋ͷΛฦ٫͢Δ w ࢯ໊ ೥ྸ إࣸਅʹՃ͑ͯੜ೥݄೔ ੑผ΋औಘͰ͖Δ w

    ͨͩ͠ɺར༻৚݅͋Γ w ๏తͳຊਓɾ೥ྸ֬ೝͷඞཁੑ w "QQMF΁ͷར༻ਃ੥͕׬ྃࡁΈ 27 ID Verifier API ର໘͢ΔϢʔβʔͷຊਓɾ೥ྸ֬ೝ
  6. ༻్ʹԠͨ͡3छྨͷID Veri fi er API w %JTQMBZ3FRVFTU w %BUB3FRVFTU w

    3BX%BUB3FRVFTU 29 ಋೖ͠΍͢͞ қ ೉ ॊೈੑ ௿ ߴ ID Verifier API ର໘͢ΔϢʔβʔͷຊਓɾ೥ྸ֬ೝ
  7. RawData Request w ະݕূͷੜσʔλΛऔಘ͢Δ w ݕূΛࣗΒߦ͏ඞཁ͕͋Δ෼ɺ "QQMF͕αϙʔτ͠ͳ͍ϞόΠϧF*%ʹ΋ରԠͰ͖Δ w ࢯ໊ ೥ྸ

    إࣸਅ ੜ೥݄೔ ੑผʹՃ͑ͯॅॴΛऔಘͰ͖Δ w ར༻৚݅͸%BUB3FRVFTUͱಉ͡ 30 ID Verifier API ର໘͢ΔϢʔβʔͷຊਓɾ೥ྸ֬ೝ
  8. w ࢯ໊ ೥ྸ إࣸਅͷΈඞཁ"/%औಘͨ͠৘ใ͸දࣔ͢Δ͚ͩ ➡︎ %JTQMBZ3FRVFTU w ੜ೥݄೔ ੑผ͕ඞཁ03औಘͨ͠৘ใΛอଘ ➡︎

    %BUB3FRVFTU ͨͩ͠๏తͳඞཁੑ͕ͳ͍ͱͩΊ  w ॅॴ͕ඞཁ03"QQMF͕αϙʔτ͠ͳ͍ϞόΠϧF*%΁ରԠ ➡︎ 3BX%BUB3FRVFTU ͨͩ͠๏తͳඞཁੑ͕ͳ͍ͱͩΊ ID Veri fi er API
  9. iPhoneΛϞόΠϧeID Readerͱͯ͠࢖͏ w ํ๏ w J04"1*Λ࢖͏ w *%7FSJ fi FS"1*

    w 7FSJGZXJUI8BMMFU"1* w ํ๏ w ඪ४ن֨ʹ४ڌͨ͠ϦʔμʔΞϓϦΛࣗ࡞͢Δ
  10. Verify with Wallet API w ฦ٫஋͸҉߸Խ͞Εͨੜσʔλ w αʔόʔʹૹΓɺ෮߸ɾݕূΛߦ͏ඞཁ͕͋Δ w औಘՄೳͳ߲໨

    w ࢯ໊ ೥ྸ إࣸਅ ੜ೥݄೔ ॅॴ ੑผ Χʔυ൪߸ ༗ޮظݶ΋ʁ  w ࣄલʹ"QQMF%FWFMPQFSͰ .FSDIBOU*%ͱͦΕʹඥͮ͘ূ໌ॻͷ࡞੒͕ඞཁ 37
  11. Verify with Wallet APIͷݺͼग़͠ํ 38 1. ஍Ҭͱऔಘ͍߲ͨ͠໨ɺ ѻ͍ํΛࢦఆ 2. ࣄલʹ࡞੒ͨ͠

    merchant IDͰ ϦΫΤετΛ࡞੒ 3. ҉߸Խ͞Εͨ ະݕূੜσʔλΛड͚औΓ αʔόʔଆͰޙଓॲཧ
  12. ϞόΠϧeIDΛར༻Ͱ͖ΔiOS API ·ͱΊ 40 *%7FSJ fi FS %JTQMBZ *%7FSJ fi

    FS %BUB *%7FSJ fi FS 3BX%BUB 7FSJGZXJUI 8BMMFU Ϣʔεέʔε ର໘Ϣʔβʔͷຊਓɾ೥ྸ֬ೝ ΞϓϦ্Ͱͷ ຊਓɾ೥ྸ֬ೝ औಘͰ͖Δ ߲໨ ࢯ໊ɾ೥ྸɾإࣸਅ ࠨʹՃ͑ͯ ੑผɾੜ೥݄೔ ࠨʹՃ͑ͯ ॅॴ ࠨͱಉ͡ ଞ΋औΕΔ͔΋ σʔλอଘ ✖ γεςϜ6*΁දࣔ 􀀀 ར༻৚݅ ͳ͠ ๏తͳຊਓ֬ೝͷඞཁੑ Ξοϓϧ΁ͷར༻ਃ੥ ࠨʹՃ͑ͯ ࢦఆΧςΰϦ ର৅ϞόΠϧ F*% "QQMFͷαϙʔτ͢Δ*% ೚ҙͷ*% "QQMFͷ αϙʔτ͢Δ*%
  13. iPhoneΛϞόΠϧeID Readerͱͯ͠࢖͏ w ํ๏ w J04"1*Λ࢖͏ w *%7FSJ fi FS"1*

    w 7FSJGZXJUI8BMMFU"1* w ํ๏ w ඪ४ن֨ʹ४ڌͨ͠ϦʔμʔΞϓϦΛࣗ࡞͢Δ
  14. ϞόΠϧeID Reader ΞϓϦΛࣗ࡞͢Δ ηογϣϯ ߏங Τϯίʔυ σίʔυ ҉߸Խ ෮߸Խ ݕূ

    ௨৴ ඞཁͳٕज़ 23ίʔυ εΩϟϯ  /'$5BHεΩϟϯ $#03ม׵ ҉߸ٕज़ ূ໌ॻ ϋογϡԽ #MVFUPPUI  /'$ ར༻Ͱ͖Δ ϑϨʔϜ ϫʔΫ "7'PVOEBUJPO  $PSF/'$ αʔυύʔςΟ ϥΠϒϥϦ 4XJGU$#03 $SZQUP,JU $SZQUP,JU $PSF#MVFUPPUI  $PSF/'$
  15. ϞόΠϧeID ReaderΞϓϦࣗ࡞ͷϙΠϯτ w ଞͷݴޠͰ࣮૷͞Εͨ3FBEFSϥΠϒϥϦΛࢀߟʹ͢Δ w /PEFKTIUUQTHJUIVCDPNBVUIMBCNEM ,PUMJOIUUQTHJUIVCDPNXBMUJEXBMUJE JEFOUJUZ w αϯϓϧσʔλΛ࢖֤ͬͯॲཧ͝ͱʹ࣮֬ʹ࣮૷͢Δ

    w *40*&$ר຤ IUUQTXXXNEMNFEFCVHHFSTFDUJPO w μϛʔF*%ΛൃߦͰ͖ΔαϯϓϧΞϓϦͰ࣮ػಈ࡞֬ೝ͢Δ w IUUQTHJUIVCDPNPQFOXBMMFUGPVOEBUJPOMBCTJEFOUJUZDSFEFOUJBM
  16. ࣗ࡞ϞόΠϧeID Reader σϞ w ઃఆ w ͱ͋Δ֗ͷΧʔυήʔϜ԰ w సചରࡦͷͨΊʹաڈͷߪೖऀͷࢯ໊Λ׽ࣈͰه࿥ w

    ߪೖر๬ऀͷຊਓ֬ೝ࣌ʹաڈʹߪೖࡁΈͩͱΘ͔Ε͹ΞϥʔτΛग़͢ w ϞόΠϧF*%ϗϧμʔଆ͸ҎԼͷΞϓϦΛ࢖༻ IUUQTHJUIVCDPNPQFOXBMMFUGPVOEBUJPOMBCTJEFOUJUZDSFEFOUJBM