FIDO 認証と公開鍵暗号 ヤフー株式会社 Yahoo! JAPAN 研究所上席研究員五味秀仁
内容 FIDOアライアンス概要 FIDO 認証 FIDO 認証を いた応 ソリューション 2
FIDO アライアンス概要
FIDO アライアンスとは オンライン サービス利 時にパスワードに代わるシンプルで堅牢な認証を実現するための業界団体 経緯 2012 年 2 に 6 社で発 2017 年 3 現在 全世界で 250 以上の組織 団体が参加するまでに拡 参加団体 融機関 ネット事業者 セキュリティベンダー スマートフォン PC 製造事業者 および 政府機関など多種多様に渡る 本企業 ボード :NTT ドコモ スポンサー : 本印刷 DDS 富 通 ISR 三菱東京 UFJ 銀 楽天 シグマクシス ソフト技研 ヤフー ジャパン 4
FIDO アライアンスのミッション 1. 技術仕様の策定 次世代の認証技術に関する標準化を 指し 認証サーバーや利 者の端末のソフトウェア 式で技術仕様を策定しています ただし FIDO 体は 特定の製品やサービスを開発しません 2. 適合性認定プログラムの実施 FIDO アライアンスで策定した技術仕様を実装した製品やサービスの普及のために 個々の実装の仕様への適合性 および 他の実装との相互接続性を検証する試験を実施しています 3. 標準化団体への提案 上記 FIDO 技術をより多くの利 者の 々に利 していただくために 適切な標準化団体とリエゾン関係を構築して相互に連携しながら 標準技術として普及させていくことを 指しています 5
FIDO アライアンスの 指す認証とは パスワードの課題 利便性 (Usability) 覚えられない 入力不便 安全性 (Security) 再利用可能 漏えいしやすい パスワードへの依存度を減らしつつ 利便性と安全性の両面を向上させる 6
FIDO 認証
認証に関する潮流 性能なセンサーと安全なデータ保管技術による新しい認証形態 ( モデル ) の出現 ローカル認証 : の検証を保有しているデバイスで実施 継続的認証 : の 動情報を絶えず取得し 認証に活 暗黙的認証 : 認証のための明 的な操作 ( タッチ操作やジェスチャーなど ) なしに認証が完了 コンテキスト認証 : が存在するコンテキストに関わる情報を活 して認証 安全なデータ保管領域 コンテキストからのデータ 位置 温度 加速度歩数歩 距離他 コンテキスト 正確でリアルタイムのコンテキストデータを活 することで 認証のあり に変化が起こっている 8
認証モデルの違い : ローカル vs. リモート 従来的な認証モデル ( パスワードなど ) PWD ID PWD 認証 識別 検証 FIDO 認証モデル FIDO クライアント 分離 FIDO サーバー 検証 検証結果 識別 認証器 クレデンシャル ( 認証情報 ) FIDO 認証 * 認証器 : 英語では Authenticator 9
FIDO 認証のコンセプト : 認証の部品化 FIDO 認証器 指紋 FIDO クライアント FIDO サーバー サービス 1 虹彩顔 USBキースマートカード新認証 段 FIDO 標準メッセージ サービス 2 サービス 3 サービス N 認証器が 部品 として組み込まれ 認証のスケーラビリティ ( 拡張性 ) が向上 10
FIDO 認証の技術 : 公開鍵暗号 式を利 FIDO クライアント FIDO サーバー 検証 FIDO 認証 ID 秘密鍵 認証器 署名つき検証結果 情報 公開鍵 を検証し 秘密鍵で署名 公開鍵で署名を検証 が適切な秘密鍵を保有することを確認 ( 検証 ) することによって認証を実現 11
FIDO 認証におけるトラスト関係 認証器 サーバー間にトラスト ( 信頼 ) を構築 認証器 サーバー (Relying Party, RP) トラストの鎖 リンク ( 検証すれば確 ) ( 静的 ) リンク ( 静的 ) リンク ID 秘密鍵 ( クレデンシャル ) 公開鍵 他の 他のサーバー 12
FIDO 認証における処理 FIDO 認証のための前処理最初に 度だけ実施 認証器の登録 認証器を いた認証 (FIDO 認証 ) 認証器の削除 ( 注 : 認証器ごとに上記処理を繰り返すことになる ) 13
認証器の登録 認証器が適切な実装を有した本物であることを確認し FIDO 認証のための鍵を設定 登録前の状態 認証器 サーバー ID 情報 認証器ベンダーが出荷時に 成 配布 14
認証器の登録処理 (2) 検証 認証器 (1) 登録要求 サーバー (4) 認証器証明と認証公開鍵を署名し送信 情報 (3) 認証 の鍵ペア 成認証秘密鍵を認証器に保存 (5) 認証器の真正性確認 ( 署名検証 ) (6) 認証公開鍵の登録 認証公開鍵 ID 15
認証器を いた認証 (FIDO 認証 ) 先の登録処理にて認証 鍵の登録が前提 (2) 検証 認証器 (1) 認証要求 サーバー (4) 検証結果と署名を送付 情報 認証公開鍵 ID (3) 認証 の鍵ペア 成の検証結果を認証秘密鍵で署名 (5) 認証公開鍵で署名検証 (6) 検証できれば ID を抽出 16
FIDO 認証の技術仕様 パスワードレス型 : UAF (Universal Authentication Framework) 1.1 スマホ端末備え付けの認証器で 体 所持認証 ( パスワードなし ) パスワード補完型 : U2F (Universal 2 nd Factor) 1.1 主要ブラウザでの パスワード認証 + セキュリティキーなどの所持認証 (USB Bluetooth NFC 対応 ) ( 出典 : FIDO アライアンス ) 17
新技術仕様 :FIDO 2 Web 認証 API 仕様 : Web ブラウザーが JavaScript を いてクレデンシャル ( 秘密鍵 ) にアクセスするための API FIDO アライアンスが提案 ブラウザでの普及のため 標準化団体 W3C にて策定中 デバイス間連携仕様 : CTAP (Client To Authenticator Protocol) クライアントと外部認証器間の通信をサポートする認証プロトコル FIDO アライアンスにて策定中 *API: Application Programming Interface 18
Web認証API ブラウザーがJavascriptを いてクレデンシャルにアクセスするための抽象的API makecredential() getassertion() 側 認証器 サーバー側 Web認証API ブラウザー サーバー Relying Party, RP クレデンシャル のデバイス 19
Web認証における認証器の登録 1. makecredential() 要求 認証器 Web認証API サーバー RP ブラウザー ID 2. 所定の 段で 検証 認証 秘密鍵 3. 秘密鍵 公開鍵のセットを 成 4. 以下のデータを 成 認証 公開鍵 5. クレデンシャルに関する 6. FIDO認証 公開鍵を登録 署名付きデータを返信 クレデンシャル情報 認証器証明書 公開鍵 署名 (注) 認証器証明のための鍵は図中では省略 20
認証器を いたWeb認証 1. getassertion()要求 認証器 Web認証API サーバー RP ブラウザー ID 認証 秘密鍵 2. 所定の 段で検証 3. 以下のデータを 成 4. アサーションを含めた 署名付きデータを返信 5. 署名検証 6. IDの抽出 クレデンシャル情報 アサーション 検証 結果の証明書 署名 認証 公開鍵 (注) 認証器証明のための鍵は図中では省略 21
CTAP (Client To Authenticator Protocol) 外部認証器とクライアント プラットフォーム間の通信プロトコルを規定 ブラウザー JavaScript によるクレデンシャル操作要求 のデバイス USB/Bluetooth/NFC を いた通信 外部認証器 のデバイスと別デバイス クレデンシャル ( 秘密鍵 ) 22
CTAP のユースケース ( 例 )PC 上のアプリケーション利 時の認証を スマートフォンで う サーバー FIDO 認証 PC ( クライアント ) Bluetooth 公開鍵 秘密鍵 スマートフォン ( 外部認証器 ) は らの保有するデバイスを認証器として い デバイスをまたがって認証できる ( 特定のデバイスに認証機能を集約させることができる ) 23
スマートフォンも つの認証器に 認証器 指紋 虹彩 Web 認証 API サーバー サービス 1 顔 USB キー スマートカード サービス 2 サービス 3 スマートフォン サービス N スマートウォッチ スマホ認証器 により さらに認証のスケーラビリティ ( 拡張性 ) が向上 24
認証器のバリエーション 内蔵認証器 外部認証器 デバイス 着脱型 認証器 クライアント 無線型 認証器 Web 認証 API クライアント Web 認証 API CTAP (Client To Authenticator Protocol) 25
FIDO 認証を いた応 ソリューション
認証 : セキュア トラストアプリケーションのための基盤 般的なアクセス制限つきシステム アクセス要求 サーバー 認証 ID アクセス応答 (OK/NG) シングルサインオン の権限確認 ( アクセス制御 ) 認証後のさらなる 動 個 属性共有 パーソナルサービスの提供 サーバー 認証が起点になり 様々なオンライン上の 動につながる 27
FIDO 認証のセマンティクス ( 意味 ) が本 であると主張通りの であることを検証したということ が認証器のすぐそばにいる ( 存在する ) こと が 分のアイデンティティ ( 本 性 ) コンテキスト 取引などに関して確認した ( 同意した ) ということ 認証器 チャレンジ ( ランダムな 字列 ) 署名付きチャレンジ ( アサーション ) サーバー (RP) コンテキスト クレデンシャル 証明 FIDO 認証は のアイデンティティやコンテキストを証明する機構を備える 28
認証器の応 展開 既存 新規の認証 式を実装した認証器の展開を期待 体認証 動特性 ウェアラブル機器 ( 例 ) 証明書ベースの認証を実装した認証器 ( 韓国 KICA のユースケース ) 認証器 体認証 API PKI モジュール 証明書 暗号化した秘密鍵 FIDO 認証 ( 改変なしに拡張 ) 証明書の発 ( 従来の PKI プロトコル ) サーバー (RP) 証明書の検証 ( オンライン証明書状態プロトコル OCSP) 指紋センサー 虹彩センサー 認証局 (CA) 29
FIDO 認証と ID 連携 RP/IdP ( アイデンティティプロバイダー ) 連携 RP ( サービスプロバイダー ) FIDO クライアント 認証器 認証コンテキスト FIDO サーバー アサーション発 認証アサーション 認証コンテキスト アイデンティティサービス FIDO 認証 ID 連携 ( フェデレーション ) シンプルで堅牢な認証 シームレスで安全なサービス FIDO 認証と ID 連携を組み合わせると 認証コンテキストは認証器から連携 RP へと伝搬 30
証明情報の伝搬 RP/IdP 連携 RP ( アイデンティティプロバイダー )( サービスプロバイダー ) 認証器 クレデンシャル コンテキスト 証明 アイデンティティコンテキスト取引 ( トランザクション ) 証明 証明 証明 認証器で 成されたの証明情報を使えば インターネット規模でトラストなアプリケーションを提供することができる 31
取引 ( トランザクション ) 認証 MITM (Man-in-the-Middle) 攻撃から取引データの改ざんを保護 ( 既に UAF 仕様でサポート 海外の銀 で導 事例あり ) 元の取引データ 振込先銀 : AAA 銀 座番号 : 123456 額 : 10000 円 提 された取引データを確認秘密鍵を使って署名を 成 のデバイス マルウェア クライアント 認証器 秘密鍵 改ざんされた取引データ 振込先銀 : XXX 銀 座番号 : 7654321 額 : 1000000 円 署名 元の取引データの署名 RP ( 銀 ) 署名付き取引データを改ざんしても 署名検証により改ざんを検出し 不正送 を防 可能 32
身分証明書 氏名 : 山田太郎住所 : 東京都港区赤坂 9-7-1 年齢 : 30 歳性別 : 男 証明書発行元 : ヤフー株式会社証明書配布先 : ABCサービス株式会社 証明書発行時刻 : 2013 年 8 月 10 日 13 時証明書有効期限 : 2014 年 8 月 10 日 13 時まで 証明書識別番号 : s8e3d5y9z0g3 本人画像 (2013 年 1 月 10 日撮影 ) オフラインでの本 確認 リアルタイムで 体による FIDO 認証を いれば 現実世界のサービスへのアクセス時に 本 確認 が可能となる ( 例 ) 電 チケット ( オンライン ) 同 物? ( 検証要 ) 身分証明書 本人画像 (2013 年 1 月 10 日撮影 ) 氏名 : 山田太郎住所 : 東京都港区赤坂 9-7-1 年齢 : 30 歳性別 : 男 証明書発行元 : ヤフー株式会社証明書配布先 : ABC サービス株式会社証明書発行時刻 : 2013 年 8 月 10 日 13 時証明書有効期限 : 2014 年 8 月 10 日 13 時まで証明書識別番号 : s8e3d5y9z0g3 FIDO 認証 チケット購 ( オンライン ) ( オフライン ) チケットおよび本 確認情報の提 電 チケットサーバー 電 チケット FIDO サーバー ID イベントでの 場ゲート 認証ログ チケットおよび本 確認情報の検証 他の ( オフライン ) なりすましの防 33
FIDO 認証モデル 公開鍵暗号を いた認証 まとめ 部品化した認証器によるローカル認証 Web 認証 API と CTAP ブラウザを通じたクレデンシャルの操作 多様なデバイス形態と通信プロトコルによる認証器をサポート FIDO 認証を いたソリューション展開 認証器の導 展開 アイデンティティ連携システムの拡張 アイデンティティ コンテキストの証明 34