JavaScriptを用いたスマートフォン向けFIDO UAF Cloudの提案と評価
5
0
0
全文
(2) パスワードリスト型攻撃やパスワードスプレー攻撃 [3] な. が表示される (図 3 ).指紋認証に成功すると登録が完了と. どの不正ログインを狙った攻撃に対して有効であると考え. なる.認証時において,ユーザは,ブラウザで認証画面に. られる.また,ユーザ毎にハードウェアトークンを用意す. アクセスする (図 2 ).認証画面は端末内に制限されずに,. ることやサービス提供者が生体認証のデバイスを用意せず. 他の端末のブラウザで表示できる.ユーザは,認証画面で. に,スマートフォンに搭載された認証器で生体認証を行う. 登録時に入力したユーザネームを入力する.このときにシ. ことができるので利便性も向上すると考えられる.. ステムからユーザの端末に Push 通知を送信する.ユーザ. 一方,サービス事業者にとっては,FIDO UAF 認証サー. の端末内の Android アプリケーションが起動され,指紋認. バなどの専用環境を自社で構築しなければならないため,. 証を促す画面が表示される (図 3 ).端末内で指紋認証が. 導入の際の負担は大きい.FIDO UAF 認証サーバは UAF. 行われ,FIDO UAF 認証サーバで認証を検証する.検証. に準拠したユーザの認証や登録など複雑な処理を行う必要. に成功すると,ログインに成功とみなされる.. があるので,多大な構築コストを要する.また,サーバの 増加に伴い,運用コストの増加も懸念される. 本論文では,FIDO UAF 認証サーバをクラウドで提供し, 各サービス事業者が,ログイン画面に設置した JavaScript を用いるとともに2つの API を実装することのみによっ て FIDO UAF を導入するシステムを提案する.このこと により,各サービス事業者側で FIDO UAF 認証サーバを 構築する必要はなくなり,サーバ構築・運用に伴う費用を 低減することができる. 図 1 登録時のログイン画面. 2. 先行研究・事例 Agrawal と Patidar はユーザのデバイスを用いて生体認 証を行なった際のセキュリティ技術について調査した [4] . パスワード代替方法として,Everts らは,公開鍵暗号を使用 して,Web サービスの認証を行うスマートフォン用のアプ リケーションを開発している [5] .先行研究として,FIDO を使用した研究も進められており,Chifor らは FIDO UAF アプリケーションを開発している [6] .FIDO に関しては,. U2F に準拠したサービスも多く,例えば Google,Dropbox など大手サービス事業者のサービスが挙げられる [7] .ま た ,W3C (World Wide Web Consortium) は,FIDO2 を 中核技術とした WebAuthn (Web Authentication) を策定. 図 2 認証画面. している.このことにより,標準機能として実装され,ブ ラウザやスマートフォンアプリケーションなどでの展開が 期待されている [8] .. 3. 提案システム 3.1 提案システムのモデル 本システムの利用方法について説明する.登録時におい て,ユーザは,登録用のアプリケーションを起動する.アプ リケーションは,Android OS で Android アプリケーショ ンとして実装されている.ユーザが Android アプリケー ションを起動するとログイン画面が表示される.ログイン 画面のフォームにユーザ自身のユーザネームとパスワード を入力して送信する (図 1 ).ここでは,登録時に既存シス テムへの導入を想定し,ユーザパスワードを使用している が,認証時にはパスワードは使用しない.その後,Android アプリケーションの画面が切り替わり指紋認証を促す画面. c 2018 Information Processing Society of Japan ⃝. - 55 -. 図 3. 指紋認証画面.
(3) 3.2 提案システムの登録手順. ( 8 ) App Server は UAF Server から認証結果を返却する.. まず初めに,FIDO UAF の仕様で規定されていない利害 関係者の相互通信部分の登録手順について説明する.登録. 次に,FIDO UAF の仕様を含めた具体的な登録シーケ ンスを図 5 に示す.. 手順を図 4 に示す.提案システムの利害関係者としては, ユーザ,サービス事業者および UAF クラウドプロバイダ の3名である.ユーザは,サービス事業者の利用者である. サービス事業者は,UAF クラウドプロバイダが提供する. UAF 認証サーバ (UAF Auth Server) を用いて,UAF を ユーザに提供する.この図において,ユーザは,Android アプリケーションを使用する.App Server はサービス事 業者がサービスを運用するサーバである.UAF クラウド プロバイダーは,UAF Auth Server を提供する.. 図 4 登録手順. ( 1 ) ユーザは,Android アプリケーションで登録用のログ イン画面にアクセスする.. ( 2 ) App Server は,ログイン画面を表示する.ログイン画 面は WebView を用いて Web ページとして表示され る.このページには,FIDO UAF 用の JavaScript が 含まれる.. ( 3 ) ユーザの Android アプリケーションが,UAF Auth Server に対して JavaScript の取得を要求する.. 図 5 登録シーケンス. ( 4 ) UAF Auth Server が JavaScript を返却し,Android ア プリケーションで JavaScript が実行される.. ( 1 ) ユーザは,Android アプリケーションで登録用のログ イン画面にアクセスする.. ( 5 ) ユーザがユーザネームとパスワードを入力すると, ユーザの Android アプリケーションが,ユーザネー. ( 2 ) App Server は, ログイン画面を表示する.このペー ジには,UAF 用の JavaScript が含まれる.. ム,パスワード,FirebaseToken(Push 通知用のトー クン)およびハッシュ化されたユーザネームを App. ( 3 ) Android アプリケーションは,UAF Auth Server に対. Server に送信する.ハッシュ化されたユーザネーム は,JavaScript の処理によって生成される.. して JavaScript の取得を要求する.. ( 4 ) UAF Auth Server が JavaScript を返却し,Android ア. ( 6 ) App Server は,ハッシュ化されたユーザネーム,Service ID および FirebaseToken を送信する.Service ID. プリケーションで JavaScript が実行される.. ( 5 ) ユーザがユーザネームとパスワードを入力すると,App Server はユーザネームとパスワードを検証する.その. はサービス事業者の識別子となる. . ( 7 ) UAF Auth Server では,事前に Service ID と App ID. 後,ユーザの Android アプリケーションが,ユーザ. (FIDO UAF のエントリーを示す URI) とを紐づけを. ネーム,パスワード,FirebaseToken およびハッシュ 化されたユーザネームを App Server に送信する.. 行っておく.UAF Auth Server は,Service ID から. App ID を取得する.. c 2018 Information Processing Society of Japan ⃝. ( 6 ) App Server は,ハッシュ化されたユーザネーム,Service - 56 -.
(4) ID および FirebaseToken を送信する. ( 7 ) UAF Auth Server は,Service ID から App ID を取得 して,Android アプリケーションに通知する.. ( 8 ) Android アプリケーション において UAF Auth Server から FacetId を取得して検証する.FacetID とは,ク ライアントプラットフォームを確認するために利用さ れる.. ( 9 ) Android アプリケーションが登録リクエストを送る. ( 10 )UAF Auth Server が Challenge を生成して,認証器 マッチングポリシーと Challenge を Android アプリ ケーションに送信する.. ( 11 )Android アプリケーション は 認証器マッチングポリ シーに基づいて適合する認証器を選択して生体認証 を行い,認証器ベンダーの秘密鍵を使用して署名して. UAF Auth Server に送る. ( 12 )UAF Auth Server が認証器ベンダーの公開鍵を用い て署名を検証し,認証用公開鍵を保存する.. ( 13 )App Server は,UAF Auth Server から検証結果を取 得する. 検証に成功した場合には登録に成功とみな される.. 3.3 認証 認証の具体的なシーケンスを図 6 に示す.. ( 1 ) ユーザは,ブラウザで認証用のログイン画面にアクセ スする. 図 6 認証シーケンス. ( 2 ) App Server は,ログイン画面を表示する.このページ には,UAF 用の JavaScript が含まれる.. Auth Server に送る.. ( 3 ) ユーザのブラウザが,UAF Auth Server に対して. ( 12 )UAF Auth Server が認証用公開鍵で署名を検証する.. JavaScript の取得を要求する. ( 4 ) UAF Auth Server が JavaScript を返却し,Android ア. ( 13 )App Server が UAF Auth Server から検証結果を取得 する.検証に成功した場合には認証に成功となる.. プリケーションで JavaScript が実行される.. ( 5 ) ユーザがユーザネームを入力すると,ユーザのブラウ ザが,ハッシュ化されたユーザネームを App Server. 4. 評価 本論文で提案したシステムについて性能評価を行い,実. に送信する.. ( 6 ) App Server は,ハッシュ化されたユーザネームと. 用性を検証した.評価は表 1 に記載する環境で行った.評 価には,Android アプリケーションの実行は Android 端末. Service ID を送信する. ( 7 ) UAF Auth Server は,Service ID から App ID を取得. で行った.テストユーザ 2 名により,登録時と認証時の. Android アプリケーションと UAF Auth Sever 間の通信速. して,Android アプリケーションに通知する.. ( 8 ) Android アプリケーション において UAF Auth Server. 度を 50 回計測した.. から FacetId を取得して検証する.. ( 9 ) Android アプリケーションが認証リクエストを送信. 表 1 評価環境. する.. ( 10 )UAF Auth Server が Challenge を生成して,認証器 マッチングポリシーと Challenge を Android アプリ ケーションに送信する.. Android アプリケーション クラウド環境. UAF Auth Server. ( 11 )Android アプリケーション は 認証器マッチングポリ シーに基づいて適合する認証器を選択して生体認証を 行い,認証用証明書の秘密鍵を使用して署名して UAF. c 2018 Information Processing Society of Japan ⃝. 環境. - 57 -. 使用バージョン. Android 8.0, 8.1 (API Version 26, 27) Google Kubernetes Engine Java 8,Spring BOOT 2.0.3.
(5) 6. 考察. 5. 結果. 性能評価の結果,通信上でエラーが発生しなかった.テ. 5.1 登録機能 登録機能に関する結果に関しては,以下の表のようになっ た.測定したリクエストとは,Android アプリケーション が登録リクエスト(図 5 における Registration Request 部 分)して,UAF Auth Sever が Challenge を生成してチャ. ストユーザ数が2名と制限している環境であるものの,リ クエスト・レスポンス時間が 1 秒以内となっており,実用 化の可能性があることが分かった.. 7. 今後の課題. レンジと認証器マッチングポリシーを Android アプリケー ションに送信する部分となる.測定したレスポンスとは, 署名したデータを Post して,UAF Auth Sever が署名を 検証してその結果を Android アプリケーションに送信する 部分となる.. 技術検証の観点では,本論文で提案するの UAF につい ては,FIDO Alliance 認定を受けていないという課題があ る.2018 年 11 月に予定されている FIDO Alliance 認定に 申請する予定である.また,実用面ではユーザが端末を紛 失するなどの例外的な事象が発生したときの対処方法が. 表 2. 明確になっていないという課題がある.この課題について. 登録機能のリクエスト時間 項目 時間 最小値. 368 ms. 最大値. 644 ms. 平均値. 446 ms. は,例外的な事象が発生した際の手順を明確にすることに よって解決を図りたいと考えている. 参考文献 [1]. 表 3. 登録機能のレスポンス時間 項目 時間 最小値. 211 ms. 最大値. 494 ms. 平均値. 271 ms. [2]. [3]. 5.2 認証機能 認証機能に関する結果に関しては,以下の表のようになっ. [4]. た.測定したリクエストとは,Android アプリケーション が認証リクエストを送信(図 6 における Authentication. [5]. Request 部分)して,UAF Auth Sever が Challenge を生 成してチャレンジと認証器マッチングポリシーを Android アプリケーションに送信する部分となる.測定したレスポ. [6]. ンスとは,署名したデータを Post して,UAF Auth Sever が署名を検証してその結果を Android アプリケーションに 送信する部分となる. [7] 表 4. 表 5. 認証機能のリクエスト時間 項目 時間 最小値. 182 ms. 最大値. 411 ms. 平均値. 229 ms. [8]. 認証機能のレスポンス時間 項目 時間 最小値. 245 ms. 最大値. 564 ms. 平均値. 320 ms. c 2018 Information Processing Society of Japan ⃝. - 58 -. FIDO Alliance: Alliance Universal Authentication Framework (UAF), 入 手 先 ⟨https://fidoalliance.org/specs/fido-uaf-v1.0-rd20140209.zip⟩ (参照 2018.08.20). FIDO Alliance:Alliance Universal 2nd Factor (U2F), 入 手 先 ⟨https://fidoalliance.org/specs/fido-u2f-v1.0-rd20140209.zip⟩ (参照 2018.08.20). JPCERT/CC : 適切なパスワードの設定・管理方法について 入手先 ⟨https://www.jpcert.or.jp/newsflash/ 2018040401.html⟩, (参照 2018.08.20). Agrawal Arpit, and Ashish Patidar: Smart Authentication for Smart Phones, International Journal of Computer Science and Information Technologies 5.4 (2014). Everts, Maarten, Jaap-Henk Hoepman, and Johanneke Siljee: UbiKiMa: Ubiquitous authentication using a smartphone, migrating from passwords to strong cryptography, Proceedings of the 2013 ACM workshop on Digital identity management (2013). Bogdan-Cosmin Chifor, Sorin Teican, Mihai Togan, George Gugulea: A Flexible Authorization Mechanism for Enterprise Networks Using Smart-phone Devices, International Journal of Advanced Computer Science and Applications (2017). Dropbox : Introducing U2F support for secure authentication, 入手先 ⟨https://blogs.dropbox.com/dropbox/2015/08/u2fsecurity-keys/⟩ (参照 2018.08.20). W3C: Web Authentication: An API for accessing Public Key Credentials Level 1 入手先 ⟨https://www.w3.org/TR/ webauthn/⟩ (参照 2018.08.20)..
(6)
図
関連したドキュメント
鎌倉時代の敬語二題︵森野宗明︶
個別の事情等もあり提出を断念したケースがある。また、提案書を提出はしたものの、ニ
需要動向に対応して,長期にわたる効率的な安定供給を確保するため, 500kV 基 幹系統を拠点とし,地域的な需要動向,既設系統の状況などを勘案のうえ,需要
「普通株式対価取得請求日における時価」は、各普通株式対価取得請求日の直前の 5
★分割によりその調査手法や評価が全体を対象とした 場合と変わることがないように調査計画を立案する必要 がある。..
具体的な取組の 状況とその効果 に対する評価.
具体的な取組の 状況とその効果
また、各メーカへのヒアリングによ って各機器から発生する低周波音 の基礎データ (評価書案 p.272 の表 8.3-33