JP7232863B2 - 情報処理装置、情報処理方法および情報処理プログラム - Google Patents

情報処理装置、情報処理方法および情報処理プログラム Download PDF

Info

Publication number
JP7232863B2
JP7232863B2 JP2021070648A JP2021070648A JP7232863B2 JP 7232863 B2 JP7232863 B2 JP 7232863B2 JP 2021070648 A JP2021070648 A JP 2021070648A JP 2021070648 A JP2021070648 A JP 2021070648A JP 7232863 B2 JP7232863 B2 JP 7232863B2
Authority
JP
Japan
Prior art keywords
authentication
information
server
user
authenticator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021070648A
Other languages
English (en)
Other versions
JP2022165317A (ja
Inventor
秀仁 五味
渉 大神
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2021070648A priority Critical patent/JP7232863B2/ja
Priority to US17/689,891 priority patent/US20220337584A1/en
Publication of JP2022165317A publication Critical patent/JP2022165317A/ja
Application granted granted Critical
Publication of JP7232863B2 publication Critical patent/JP7232863B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan

Description

本発明は、情報処理装置、情報処理方法および情報処理プログラムに関する。
近年、利用者の認証を容易にするための技術が提案されている。例えば、ファイド(FIDO(登録商標))と呼ばれる認証技術が提案されている。
特開2015-230520号公報
しかしながら、FIDOによる認証技術を容易に導入する点で改善の余地があった。具体的には、FIDOによる認証技術を導入する場合、FIDOに対応する機能を認証サーバに追加したり、改修したりする必要があり、FIDOの導入に対する障壁となるおそれがあった。
本願は、上記に鑑みてなされたものであって、FIDOによる認証技術を容易に導入することができる情報処理装置、情報処理方法および情報処理プログラムを提供することを目的とする。
本願に係る情報処理装置は、制御部を備える。前記制御部は、FIDO認証のための認証器を有するユーザ端末から認証サーバに送信された前記FIDO認証のための鍵ペアの生成要求を前記認証サーバから取得し、前記生成要求に基づいて前記認証器に前記鍵ペアを生成させる生成指示を生成し、前記生成指示を前記認証サーバを介して前記認証器へ通知する。
実施形態の一態様によれば、FIDOによる認証技術を容易に導入することができるという効果を奏する。
図1は、実施形態に係る認証システムの構成例を示す図である。 図2は、実施形態に係るFIDOサーバの構成例を示す図である。 図3は、実施形態に係る認証サーバの構成例を示す図である。 図4は、実施形態に係るサービス提供サーバの構成例を示す図である。 図5は、実施形態に係るユーザ端末の構成例を示す図である。 図6は、実施形態に係る公開鍵情報の一例を示す図である。 図7は、実施形態に係るユーザ情報の一例を示す図である。 図8は、実施形態に係る秘密鍵情報の一例を示す図である。 図9は、実施形態に係る認証システムによって実行される登録処理の一例を示すシーケンス図である。 図10は、実施形態に係る認証システムによって実行される認証処理の一例を示すシーケンス図である。 図11は、実施形態に係る認証システムによって実行される登録処理の一例を示すシーケンス図である。 図12は、実施形態に係る認証システムによって実行される認証処理の一例を示すシーケンス図である。 図13は、実施形態に係る認証システムによって実行される登録処理の一例を示すシーケンス図である。 図14は、実施形態に係る認証システムによって実行される認証処理の一例を示すシーケンス図である。 図15は、ハードウェア構成の一例を示す図である。
以下に、本願に係る情報処理装置、情報処理方法および情報処理プログラムを実施するための形態(以下、「実施形態」と記載する)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法および情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
(実施形態)
インターネット上の各種サービスは、典型的には、パスワードとID(Identifier)とを使用するリモート認証を採用している。リモート認証では、パスワードおよびIDが、インターネット等のネットワークを介して、クライアントデバイスから認証サーバに送信される。例えば、ユーザがサービスにログインする際に、ユーザは、パスワードと、IDとを入力する。次に、認証サーバは、受信されたパスワードが認証サーバに記憶されたIDに関連付けられた適切なパスワードであるかを検証する。
リモート認証に関連する問題のうちの1つは、ユーザが複数のサービスの間で1つのパスワードを使いまわすことである。ユーザは、一般的に、電子メール、SNS(Social Networking Service)、オンライン動画プラットフォーム、オンラインショッピング、オンラインバンキング等の、複数のサービスの複数のアカウントを有する。ユーザがサービスごとに異なるパスワードを設定した場合に、サービスごとに異なる複数のパスワードを覚えることは、ユーザにとって難しい場合がある。このため、ユーザは、複数のサービスにおいてパスワードを共通にすることがある。しかしながら、複数のサービスのうちの1つがパスワードを漏洩させた場合に、悪意のある者が、このパスワードを使用して複数のサービスのうちの他のサービスに、不正にアクセスする可能性がある。
上述したようなリモート認証に関連する問題を解決するために、FIDOと呼ばれる認証技術が提案されている。FIDOの認証形態では、ユーザの本人性が、スマートフォン等のユーザデバイスに内蔵または外付けされた認証器によって検証される。認証器の一例は、スマートフォンの生体認証機能である。このように、FIDO認証は、ローカル認証を採用している。
ローカル認証では、認証器は、認証器に保管された秘密鍵を使用することによって、本人性の検証結果に対して電子署名を行う。そして、電子署名付き検証結果が、インターネット上のサービスに、ユーザデバイスから送信される。インターネット上のサービスは、このサービスに登録された公開鍵を使用することによって、ユーザデバイスから送信された電子署名付き検証結果の妥当性を確認することができる。
上述のように、FIDO認証は、ユーザデバイスに内蔵または外付けされた認証器を使用したパスワードレス認証を可能にする。例えば、ユーザは、指紋等の生体情報をスマートフォンに入力することによって、FIDO認証を採用したサービスにおいて、パスワードレスログインを実行することができる。FIDO認証は、ユーザがパスワードを使用せずにサービスにログインすることを可能にするため、FIDO認証は、利便性や安全性の観点から好ましい。
しかしながら、サービス提供者がFIDO認証を導入しようする場合、FIDO認証に対応する機能を認証サーバに追加したり、認証サーバを改修したりする必要がある。この場合、サービス提供者は、サービスの提供を一時的に停止させたり、FIDO認証が正常に動作するかの認定を受けたりする必要がある。このようなことが、FIDOの導入に対する障壁となるおそれがあった。
そこで、本開示では、FIDO認証を行うための機能を有したFIDOサーバを認証サーバとは別に配置し、認証サーバがFIDO認証の機能をFIDOサーバから呼び出せるようにした。
図1は、実施形態に係る認証システムSの構成例を示す図である。図1に示すように、実施形態に係る認証システムSは、FIDOサーバ1と、認証サーバ10と、サービス提供サーバ20と、ユーザ端末30とを含む。FIDOサーバ1と、認証サーバ10と、サービス提供サーバ20と、ユーザ端末30とは、それぞれ不図示のネットワークと有線又は無線により接続される。ネットワークは、例えば、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)等のネットワークである。認証システムSの構成要素は、ネットワークを介して互いに通信を行うことができる。なお、認証システムSの構成要素の動作例については、図9以降で詳細に後述する。
ユーザ端末30は、サービスを受けようとするユーザが扱う端末装置である。ユーザ端末30は、スマートフォン、デスクトップ型PC、ノート型PC、タブレット型PC等の任意のタイプの端末装置を用いることができる。
また、ユーザ端末30は、サービス提供サーバ20にアクセスすることで、サービス提供サーバ20が提供するサービスを利用することができる。本開示では、サービスを受けるためのユーザの登録および認証をFIDO認証に行う。なお、登録処理および認証処理については、図9以降で詳細に後述する。
また、ユーザ端末30は、FIDO認証のための認証器を有する。認証器は、例えば、ユーザの生体認証を行うための機能を有する。生体認証は、指紋、虹彩、顔等の生体情報を検知して行う。なお、認証器は、ユーザ端末30に内蔵される場合に限らず、ユーザ端末30に対してUSB(Universal Serial Bus)キー等で外付けされてもよい。また、認証器は、ユーザの本人性の検証結果に対して電子署名を行うための秘密鍵を保管している。この秘密鍵は、後述する公開鍵とともに鍵ペアとして認証器によって生成される。
サービス提供サーバ20は、各種サービスを提供するサーバである。サービス提供サーバ20が提供するサービスは、例えば、ブラウザや、インターネットショッピング、電子商店街等の電子商取引サービス等を含む。
サービス提供サーバ20は、ユーザ端末30がサービスへのアクセスを要求した場合に、ユーザの認証を認証サーバ10に対して依頼し、認証サーバ10によってユーザが認証された場合に、ユーザ端末30によるサービスへのアクセスを承認する。
認証サーバ10は、サービスへのアクセスを要求したユーザの本人性を認証するサーバである。認証サーバ10は、FIDOサーバ1の機能を利用することで、FIDO認証のための登録処理や、認証処理を実現する。具体的には、認証サーバ10は、サービスにユーザを登録する登録処理において、FIDO認証に必要な鍵ペアを認証器に生成させるためのメッセージ作成をFIDOサーバ1に依頼したり、認証器のアテステーション情報の検証や、認証器から送信されるアサーション情報の検証をFIDOサーバ1に依頼する。
また、図1に示すように、認証サーバ10は、ユーザID管理機能と、認証に関するコンテキスト読み取り・検証機能と、アサーション送信機能とを有する。
ユーザID管理機能とは、ユーザを識別する識別子であるユーザIDと、FIDOサーバ1および認証サーバ10の間で利用するユーザの識別子である連携IDとを紐付けて記憶し、利用する機能である。
認証に関するコンテキスト読み取り・検証機能とは、FIDOサーバ1によって生成される認証登録コンテキストや、認証結果コンテキストを読み取り、妥当性を検証する機能である。認証登録コンテキストは、登録処理時のアテステーション情報の検証結果や、登録された認証手段(生体認証等)に関する情報を含んだコンテキストである。認証結果コンテキストは、認証処理時のアサーション情報の検証結果や、ユーザが行った認証手段の情報等を含んだコンテキストである。
アサーション送信機能とは、認証器によって生成されたアサーション情報をFIDOサーバ1へ送信する機能である。アサーション情報とは、秘密鍵を用いて、認証器の認証結果に署名した情報である。具体的には、アサーション情報とは、署名付き認証結果の証明書である。
FIDOサーバ1は、FIDO認証に関する処理を行う情報処理装置である。FIDOサーバ1は、認証サーバ10と論理的に分離しており、同一ドメイン、あるいは、別ドメインに設置される。
図1に示すように、FIDOサーバ1は、FIDOメッセージ生成・検証機能と、認証に関するコンテキスト生成・送信機能と、連携ID管理機能とを有する。
FIDOメッセージ生成・検証機能とは、FIDO認証に関するメッセージを生成したり、検証したりする機能である。FIDO認証に関するメッセージは、例えば、クレデンシャル生成オプションメッセージ(鍵ペアの生成指示メッセージ)や、アテステーション情報に関するメッセージ、アサーション情報に関するメッセージである。
認証に関するコンテキスト生成・送信機能とは、上述した認証登録コンテキストや、認証結果コンテキストを生成し、認証サーバ10へ送信する機能である。連携ID管理機能とは、認証器によって生成された公開鍵を連携IDと紐付けて記憶し、利用する機能である。
このように、認証システムSでは、FIDO認証に関する機能をFIDOサーバ1として認証サーバ10から分離することで、サービス提供者は、認証サーバ10にFIDO認証に関する機能を追加する必要が無い。さらに、サービス提供者は、FIDOサーバ1と連携するための機能を認証サーバ10に導入するだけでよいため、認証サーバ10の改変を最小限に抑えることができる。すなわち、情報処理装置であるFIDOサーバ1によれば、FIDOによる認証技術を容易に導入することができる。
次に、図2~図5を参照して、認証システムSにおける各装置の構成例について説明する。
図2は、実施形態に係るFIDOサーバ1の構成例を示す図である。図2に示されるように、FIDOサーバ1は、通信部2と、制御部3と、記憶部4とを有する。
通信部2は、例えば、NIC(Network Interface Card)等によって実現される。通信部2は、有線または無線によりネットワーク網と接続される。
制御部3は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、FIDOサーバ1内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAM等を作業領域として実行されることにより実現される。また、制御部3は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、GPGPU(General Purpose Graphic Processing Unit)等の集積回路により実現されてもよい。
記憶部4は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図2に示されるように、記憶部4は、公開鍵情報4Aを有する。なお、公開鍵情報4Aの詳細については、図6で後述する。
図3は、実施形態に係る認証サーバ10の構成例を示す図である。図3に示されるように、認証サーバ10は、通信部11と、制御部12と、記憶部13とを有する。
通信部11は、例えば、NIC(Network Interface Card)等によって実現される。通信部2は、有線または無線によりネットワーク網と接続される。
制御部12は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、FIDOサーバ1内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAM等を作業領域として実行されることにより実現される。また、制御部12は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、GPGPU(General Purpose Graphic Processing Unit)等の集積回路により実現されてもよい。
記憶部13は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図3に示されるように、記憶部13は、ユーザ情報13Aを有する。なお、ユーザ情報13Aの詳細については、図7で後述する。
図4は、実施形態に係るサービス提供サーバ20の構成例を示す図である。図4に示されるように、サービス提供サーバ20は、通信部21と、制御部22と、記憶部23とを有する。
通信部21は、例えば、NIC(Network Interface Card)等によって実現される。通信部2は、有線または無線によりネットワーク網と接続される。
制御部22は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、FIDOサーバ1内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAM等を作業領域として実行されることにより実現される。また、制御部22は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、GPGPU(General Purpose Graphic Processing Unit)等の集積回路により実現されてもよい。
記憶部23は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
図5は、実施形態に係るユーザ端末30の構成例を示す図である。図5に示されるように、ユーザ端末30は、通信部31と、制御部32と、記憶部33とを有する。
通信部31は、例えば、NIC(Network Interface Card)等によって実現される。通信部2は、有線または無線によりネットワーク網と接続される。
制御部32は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、FIDOサーバ1内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAM等を作業領域として実行されることにより実現される。また、制御部32は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、GPGPU(General Purpose Graphic Processing Unit)等の集積回路により実現されてもよい。
記憶部33は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図5に示されるように、記憶部33は、秘密鍵情報33Aを有する。なお、秘密鍵情報33Aの詳細については、図8で後述する。
(公開鍵情報4A)
図6は、実施形態に係る公開鍵情報4Aの一例を示す図である。公開鍵情報4Aは、上述したように、FIDOサーバ1の記憶部4に記憶される情報であり、認証器によって生成された公開鍵の情報を含む。
図6の例では、公開鍵情報4Aは、「連携ID」、「認証サーバ」、「ユーザID」および「公開鍵」等の項目を有する。
「連携ID」は、連携している認証サーバ10との間で利用するユーザの識別子である。「認証サーバ」は、連携している認証サーバ10を識別する情報である。「ユーザID」は、認証サーバ10によって発行されたユーザを識別する識別子である。「公開鍵」は、公開鍵の情報である。
(ユーザ情報13A)
図7は、実施形態に係るユーザ情報13Aの一例を示す図である。ユーザ情報13Aは、上述したように、認証サーバ10の記憶部13に記憶される情報であり、サービスを受けるための登録処理が完了したユーザに関する情報を含む。
図7の例では、ユーザ情報13Aは、「ユーザID」、「連携ID」、「属性情報」および「認証手段」等の項目を有する。
「ユーザID」は、ユーザを識別する識別子である。「連携ID」は、連携しているFIDOサーバ1との間で利用するユーザの識別子である。「属性情報」は、ユーザの属性に関する情報である。「認証手段」は、認証器による認証手段の情報である。
(秘密鍵情報33A)
図8は、実施形態に係る秘密鍵情報33Aの一例を示す図である。秘密鍵情報33Aは、上述したように、ユーザ端末30の記憶部33に記憶される情報であり、認証器によって生成された秘密鍵の情報を含む。
図8の例では、秘密鍵情報33Aは、「サービス」、「認証サーバ」および「秘密鍵」等の項目を有する。
「サービス」は、認証を受けるサービスを識別する情報である。「認証サーバ」は、認証サーバ10を識別する情報である。「秘密鍵」は、秘密鍵の情報である。
次に、図9~図14を用いて、認証システムSの動作例について説明する。なお、以下では、図9および図10を用いて、FIDOサーバ1および認証サーバ10が同一ドメインに配置される場合の動作例を説明し、図11~図14を用いて、FIDOサーバ1および認証サーバ10が別のドメインに配置される場合の動作例を説明する。
まず、図9および図10を用いて、FIDOサーバ1および認証サーバ10が同一ドメインに配置される場合の動作例を説明する。言い換えれば、FIDOサーバ1は認証サーバ10のバックエンドのような位置づけで配置される。
〔同一ドメイン時の登録処理〕
まず、図9を参照して、実施形態に係る認証システムSにおけるユーザの登録処理について説明する。図9は、実施形態に係る認証システムSによって実行される登録処理の一例を示すシーケンス図である。なお、図9では、説明の便宜上、ユーザ端末30および認証器を分けて示している。
図9に示す登録処理とは、認証が必要となるサービスに対してユーザの本人性を登録する処理である。図9に示すように、まず、ユーザ端末30は、サービス提供サーバ20に対して登録要求を送信する(ステップS1)。
つづいて、サービス提供サーバ20は、認証サーバ10に対してクレデンシャル生成要求を送信する(ステップS2)。クレデンシャル生成要求とは、認証器に鍵ペアを生成させることを要求することである。
つづいて、認証サーバ10は、取得したクレデンシャル生成要求をFIDOサーバ1へ送信する(ステップS3)。つづいて、FIDOサーバ1は、クレデンシャル生成要求に基づいて、鍵ペアの生成指示メッセージを作成する(ステップS4)。
つづいて、FIDOサーバ1は、生成指示メッセージを認証サーバ10へ送信する(ステップS5)。
つづいて、認証サーバ10は、鍵ペアの生成指示メッセージをサービス提供サーバ20へ送信する(ステップS6)。
つづいて、サービス提供サーバ20は、鍵ペアの生成指示メッセージを、認証器に対して送信する(ステップS7)。つまり、ステップS1~S7において、制御部3は、FIDO認証ための認証器を有するユーザ端末30から認証サーバ10に送信されたFIDO認証のための鍵ペアの生成要求を認証サーバ10から取得し、生成要求に基づいて認証器に鍵ペアを生成させる生成指示を生成し、生成指示を認証サーバ10を介して認証器へ通知する。すなわち、認証サーバ10は、FIDO認証に関するメッセージ(生成指示や後述する取得指示)生成機能を有していないため、FIDO認証に関するメッセージ生成機能を有するFIDOサーバ1へメッセージ生成を依頼する。これにより、FIDO認証に関するメッセージ生成機能を認証サーバ10に導入する必要がないため、FIDOによる認証技術を容易に導入することができる。
つづいて、認証器は、ユーザ検証要求を送信する(ステップS8)。ユーザ検証要求は、ユーザに対して認証器による生体情報等の入力を要求することである。
つづいて、ユーザ端末30は、ユーザの操作により認証器に対して生体情報等を入力する(ステップS9)。
つづいて、認証器は、鍵ペア(秘密鍵および公開鍵)を生成し(ステップS10)、公開鍵をサービス提供サーバ20へ送信する(ステップS11)。
つづいて、サービス提供サーバ20は、アテステーション情報およびユーザ情報(生体情報および公開鍵)を認証サーバ10へ送信する(ステップS12)。なお、サービス提供サーバ20は、ステップS12において、ユーザから同意を得て、ユーザに関する付加情報を送信してもよい。付加情報は、例えば、ユーザの位置情報(ユーザ端末30の位置情報)を含む。また、付加情報は、ユーザの行動情報や、属性情報等が含まれてもよい。
つまり、FIDOサーバ1の制御部3は、アテステーション情報とともに、付加情報を認証サーバ10を介して取得する。
つづいて、認証サーバ10は、アテステーション情報およびユーザ情報(生体情報および公開鍵)をFIDOサーバ1へ送信する(ステップS13)。
つづいて、FIDOサーバ1は、アテステーション情報の検証、連携IDの付与、公開鍵の登録を行うとともに、アテステーション情報の検証結果に基づいてユーザの登録可否を示す認証登録コンテキストを生成する(ステップS14)。
つづいて、FIDOサーバ1は、認証登録コンテキストおよび連携IDを認証サーバ10へ送信する(ステップS15)。つまり、ステップS10~S15において、制御部3は、生成指示に従って認証器で生成された鍵ペアのうち、公開鍵を認証サーバ10を介して取得し、取得した公開鍵を連携IDと紐付けて記憶するとともに、連携IDを認証サーバ10へ通知する。また、制御部3は、公開鍵を取得する際に、認証器のアテステーション情報を認証サーバ10を介して取得し、アテステーション情報の検証結果に基づいて、ユーザの登録可否を示す認証登録コンテキストを生成して認証サーバ10へ通知する。なお、FIDOサーバ1は、付加情報を取得した場合には、公開鍵および連携IDに付加情報を紐付けて記憶する。つまり、認証サーバ10は、アテステーション情報や後述するアサーション情報の検証機能(アテステーション情報やアサーション情報の読取機能含む)を有していないため、アテステーション情報やアサーション情報の検証機能を有するFIDOサーバ1へアテステーション情報やアサーション情報の検証を依頼する。これにより、アテステーション情報やアサーション情報の検証機能を認証サーバ10に導入する必要がないため、FIDOによる認証技術を容易に導入することができる。
つづいて、認証サーバ10は、認証登録コンテキストの検証および連携IDをユーザIDに紐付けて保管する(ステップS16)。
つづいて、認証サーバ10は、認証登録コンテキストの検証の結果、問題無ければ、クレデンシャル生成応答をサービス提供サーバ20へ送信する(ステップS17)。つづいて、サービス提供サーバ20は、登録が完了した旨を示す登録応答をユーザ端末30へ送信する(ステップS18)。
〔同一ドメイン時の認証処理〕
次に、図10を参照して、実施形態に係る認証システムSにおけるユーザの認証処理について説明する。図10は、実施形態に係る認証システムSによって実行される認証処理の一例を示すシーケンス図である。
図10に示す認証処理とは、本人性を登録済のサービスに対してユーザがアクセス(あるいはログイン)を要求する場合に、ユーザの本人性を確認してアクセス(ログイン)を承認する処理である。図10に示すように、まず、ユーザ端末30は、サービス提供サーバ20に対してアクセス(またはログイン)要求を送信する(ステップS101)。
つづいて、サービス提供サーバ20は、認証サーバ10に対してクレデンシャル取得要求を送信する(ステップS102)。クレデンシャル取得要求とは、ユーザIDの情報を含み、かかるユーザIDに対応するユーザの本人性の認証処理を依頼する要求(認証要求)である。
つづいて、認証サーバ10は、取得したクレデンシャル取得要求を連携IDとともにFIDOサーバ1へ送信する(ステップS103)。つづいて、FIDOサーバ1は、クレデンシャル取得要求および連携IDに基づいて、対応する公開鍵を選択し、選択した公開鍵に対応するユーザ情報(生体情報等の認証情報)の取得指示メッセージを作成する(ステップS104)。
つづいて、FIDOサーバ1は、取得指示メッセージを認証サーバ10へ送信する(ステップS105)。
つづいて、認証サーバ10は、認証のためのユーザ情報の取得指示メッセージをサービス提供サーバ20へ送信する(ステップS106)。
つづいて、サービス提供サーバ20は、認証のためのユーザ情報の取得指示メッセージを、認証器に対して送信する(ステップS107)。つまり、ステップS101~S107において、制御部3は、ユーザ端末30からアクセスを要求されたサービス提供サーバ20から認証サーバ10を介して対象のユーザに対応する連携IDとともに認証要求を取得し、連携IDに対応する認証情報の取得指示を生成し、取得指示を認証サーバ10を介して認証器へ通知する。
つづいて、認証器は、取得指示に基づいてユーザ検証要求を送信する(ステップS108)。ユーザ検証要求は、ユーザに対して認証器による指定されたユーザ情報(生体情報等)の入力を要求することである。
つづいて、ユーザ端末30は、ユーザの操作により認証器に対して生体情報等を入力する(ステップS109)。
つづいて、認証器は、入力された生体情報に基づいて、秘密鍵へアクセスし、アサーション情報を生成する(ステップS110)。具体的には、認証器は、入力された生体情報(認証情報)に、対応する秘密鍵を用いて署名した署名付き認証情報の証明書をアサーション情報として生成する。つづいて、認証器は、アサーション情報をサービス提供サーバ20へ送信する(ステップS111)。
つづいて、サービス提供サーバ20は、アサーション情報を認証サーバ10へ送信する(ステップS112)。なお、サービス提供サーバ20は、ステップS112において、ユーザから同意を得て、ユーザに関する付加情報を送信してもよい。付加情報は、例えば、ユーザの位置情報(ユーザ端末30の位置情報)を含む。また、付加情報は、ユーザの行動情報や、属性情報等が含まれてもよい。
つまり、FIDOサーバ1の制御部3は、アサーション情報とともに、付加情報を認証サーバ10を介して取得する。
つづいて、認証サーバ10は、アサーション情報をFIDOサーバ1へ送信する(ステップS113)。
つづいて、FIDOサーバ1は、アサーション情報の検証を行うとともに、アサーション情報の検証結果に基づいてユーザの認証可否を示す認証結果コンテキストを生成する(ステップS114)。なお、FIDOサーバ1は、アサーション情報と併せて付加情報を取得した場合には、付加情報の検証結果に基づく情報を認証結果コンテキストに含ませるようにする。
つづいて、FIDOサーバ1は、認証結果コンテキストを認証サーバ10へ送信する(ステップS115)。つまり、ステップS110~S115において、制御部3は、取得指示に従って認証器で取得された認証情報に秘密鍵を使って署名されたアサーション情報を認証サーバ10を介して取得し、アサーション情報の検証結果に基づいて、ユーザの認証可否を示す認証結果コンテキストを生成して認証サーバ10へ通知する。
つづいて、認証サーバ10は、認証結果コンテキストの検証を行い、検証の結果、問題無ければ、サービスへのアクセス要求を承認し(ステップS116)、承認したことを示すクレデンシャル取得応答をサービス提供サーバ20へ送信する(ステップS117)。つづいて、サービス提供サーバ20は、アクセスが承認された旨を示すアクセス応答をユーザ端末30へ送信するとともに(ステップS118)、ユーザ端末30へサービスを提供する。
次に、図11~図14を用いて、FIDOサーバ1および認証サーバ10が別ドメインに配置される場合の動作例を説明する。FIDOサーバ1および認証サーバ10が別ドメインに配置される場合、認証サーバ10は、サービス提供サーバ20にリダイレクトさせることで各種要求をFIDOサーバ1へ送信することとなる。図11および図12では、このリダイレクト時に認証サーバ10を明示しない場合の動作例を示し、図13および図14では、リダイレクト時に委任状によって認証サーバ10を明示する場合の動作例を示す。
〔別ドメイン時の登録処理(その1)〕
まず、図11を参照して、実施形態に係る認証システムSにおけるユーザの登録処理について説明する。図11は、実施形態に係る認証システムSによって実行される登録処理の一例を示すシーケンス図である。
図11に示すように、まず、ユーザ端末30は、サービス提供サーバ20に対して登録要求を送信する(ステップS201)。
つづいて、サービス提供サーバ20は、認証サーバ10に対してクレデンシャル生成要求を送信する(ステップS202)。
つづいて、認証サーバ10は、取得したクレデンシャル生成要求をリダイレクト先(FIDOサーバ1)の情報とともにサービス提供サーバ20へ返信し(ステップS203)、サービス提供サーバ20は、FIDOサーバ1へクレデンシャル生成要求をリダイレクトする(ステップS204)。つづいて、FIDOサーバ1は、クレデンシャル生成要求に基づいて、鍵ペアの生成指示メッセージを作成する(ステップS205)。
つづいて、FIDOサーバ1は、鍵ペアの生成指示メッセージをサービス提供サーバ20へ送信する(ステップS206)。
つづいて、サービス提供サーバ20は、鍵ペアの生成指示メッセージを、認証器に対して送信する(ステップS207)。つづいて、認証器は、ユーザ検証要求を送信する(ステップS208)。つまり、ステップS201~S207において、制御部3は、FIDO認証ための認証器を有するユーザ端末30から認証サーバ10を介してサービス提供サーバ20に送信されたFIDO認証のための鍵ペアの生成要求をサービス提供サーバ20から取得し、生成要求に基づいて認証器に鍵ペアを生成させる生成指示を生成し、生成指示をサービス提供サーバ20を介して認証器へ通知する。すなわち、認証サーバ10は、FIDO認証に関するメッセージ(生成指示や後述する取得指示)生成機能を有していないため、FIDO認証に関するメッセージ生成機能を有するFIDOサーバ1へサービス提供サーバ20を介してメッセージ生成を依頼する。これにより、FIDO認証に関するメッセージ生成機能を認証サーバ10に導入する必要がないため、FIDOによる認証技術を容易に導入することができる。
つづいて、ユーザ端末30は、ユーザの操作により認証器に対して生体情報等を入力する(ステップS209)。
つづいて、認証器は、鍵ペア(秘密鍵および公開鍵)を生成し(ステップS210)、公開鍵をサービス提供サーバ20へ送信する(ステップS211)。
つづいて、サービス提供サーバ20は、アテステーション情報およびユーザ情報(生体情報および公開鍵)をFIDOサーバ1へ送信する(ステップS212)。なお、サービス提供サーバ20は、アテステーション情報とともに付加情報を送信してもよい。
つづいて、FIDOサーバ1は、アテステーション情報の検証、連携IDの付与、公開鍵の登録を行うとともに、アテステーション情報の検証結果に基づいて認証登録コンテキストを生成する(ステップS213)。
つづいて、FIDOサーバ1は、認証登録コンテキストおよび連携IDをリダイレクト先(認証サーバ10)の情報とともにサービス提供サーバ20へ送信(ステップS214)、サービス提供サーバ20は、認証登録コンテキストおよび連携IDを認証サーバ10へリダイレクトする(ステップS215)。つまり、ステップS210~S215において、制御部3は、生成指示に従って認証器で生成された鍵ペアのうち、公開鍵をサービス提供サーバ20を介して取得し、取得した公開鍵を連携IDと紐付けて記憶するとともに、連携IDをサービス提供サーバ20を介して認証サーバ10へ通知する。また、制御部3は、公開鍵を取得する際に、認証器のアテステーション情報をサービス提供サーバ20を介して取得し、アテステーション情報の検証結果に基づいて、ユーザの登録可否を示す認証登録コンテキストを生成してサービス提供サーバ20を介して認証サーバ10へ通知する。つまり、認証サーバ10は、アテステーション情報やアサーション情報の検証機能(アテステーション情報やアサーション情報の読取機能含む)を有していないため、アテステーション情報やアサーション情報の検証機能を有するFIDOサーバ1へサービス提供サーバ20を介してアテステーション情報やアサーション情報の検証を依頼する。これにより、アテステーション情報やアサーション情報の検証機能を認証サーバ10に導入する必要がないため、FIDOによる認証技術を容易に導入することができる。
つづいて、認証サーバ10は、認証登録コンテキストの検証および連携IDをユーザIDに紐付けて保管する(ステップS216)。
つづいて、認証サーバ10は、認証登録コンテキストの検証の結果、問題無ければ、クレデンシャル生成応答をサービス提供サーバ20へ送信する(ステップS217)。つづいて、サービス提供サーバ20は、登録が完了した旨を示す登録応答をユーザ端末30へ送信する(ステップS218)。
〔別ドメイン時の認証処理(その1)〕
次に、図12を参照して、実施形態に係る認証システムSにおけるユーザの認証処理について説明する。図12は、実施形態に係る認証システムSによって実行される認証処理の一例を示すシーケンス図である。
図11に示すように、まず、ユーザ端末30は、サービス提供サーバ20に対してアクセス(またはログイン)要求を送信する(ステップS301)。
つづいて、サービス提供サーバ20は、認証サーバ10に対してクレデンシャル取得要求を送信する(ステップS302)。このクレデンシャル取得要求には、ユーザIDの情報が含まれる。
つづいて、認証サーバ10は、取得したクレデンシャル取得要求を連携IDおよびリダイレクト先(FIDOサーバ1)の情報とともにサービス提供サーバ20へ返信し(ステップS303)、サービス提供サーバ20は、クレデンシャル取得要求および連携IDをFIDOサーバ1へリダイレクトする(ステップS304)。つづいて、FIDOサーバ1は、クレデンシャル取得要求および連携IDに基づいて、対応する公開鍵を選択し、選択した公開鍵に対応するユーザ情報(認証のための生体情報等)の取得指示メッセージを作成する(ステップS305)。
つづいて、FIDOサーバ1は、取得指示メッセージをサービス提供サーバ20へ送信する(ステップS306)。
つづいて、サービス提供サーバ20は、認証のためのユーザ情報の取得指示メッセージを、認証器に対して送信する(ステップS307)。つまり、ステップS301~S307において、制御部3は、ユーザ端末30からサービス提供サーバ20に対してアクセスを要求された場合に、認証サーバ10を介してサービス提供サーバ20から対象のユーザに対応する連携IDとともに認証要求を取得し、連携IDに対応する認証情報の取得指示を生成し、取得指示をサービス提供サーバ20を介して認証器へ通知する。
つづいて、認証器は、取得指示に基づいてユーザ検証要求を送信する(ステップS308)。つづいて、ユーザ端末30は、ユーザの操作により認証器に対して生体情報等を入力する(ステップS309)。
つづいて、認証器は、入力された生体情報に基づいて、秘密鍵へアクセスし、アサーション情報を生成する(ステップS310)。具体的には、認証器は、入力された生体情報に基づいて、ユーザを認証して認証結果を生成するとともに、対応する秘密鍵を用いて認証結果に署名した署名付き認証結果の証明書をアサーション情報として生成する。つづいて、認証器は、アサーション情報をサービス提供サーバ20へ送信する(ステップS311)。
つづいて、サービス提供サーバ20は、アサーション情報をFIDOサーバ1へ送信する(ステップS312)。なお、サービス提供サーバ20は、アサーション情報と併せて付加情報を送信してもよい。
つづいて、FIDOサーバ1は、アサーション情報の検証を行うとともに、アサーション情報の検証結果に基づいて認証結果コンテキストを生成する(ステップS313)。
つづいて、FIDOサーバ1は、認証結果コンテキストおよび連携IDをリダイレクト先(認証サーバ10)の情報とともにサービス提供サーバ20へ送信し(ステップS314)、サービス提供サーバ20は、認証結果コンテキストおよび連携IDを認証サーバ10へリダイレクトする(ステップS315)。つまり、ステップS310~S315において、制御部3は、取得指示に従って認証器で取得された認証情報に秘密鍵を使って署名されたアサーション情報をサービス提供サーバ20を介して取得し、アサーション情報の検証結果に基づいて、ユーザの認証可否を示す認証結果コンテキストを生成してサービス提供サーバ20を介して認証サーバ10へ通知する。
つづいて、認証サーバ10は、認証結果コンテキストの検証を行い、検証の結果、問題無ければ、サービスへのアクセス要求を承認し(ステップS316)、承認したことを示すクレデンシャル取得応答をサービス提供サーバ20へ送信する(ステップS317)。つづいて、サービス提供サーバ20は、アクセスが承認された旨を示すアクセス応答をユーザ端末30へ送信するとともに(ステップS318)、ユーザ端末30へサービスを提供する。
図13および図14を用いて、リダイレクト時に委任状によって認証サーバ10を明示する場合の動作例について説明する。
〔別ドメイン時の登録処理(その2)〕
まず、図13を参照して、実施形態に係る認証システムSにおけるユーザの登録処理について説明する。図13は、実施形態に係る認証システムSによって実行される登録処理の一例を示すシーケンス図である。
図13に示すように、まず、ユーザ端末30は、サービス提供サーバ20に対して登録要求を送信する(ステップS401)。
つづいて、サービス提供サーバ20は、認証サーバ10に対してクレデンシャル生成要求を送信する(ステップS402)。
つづいて、認証サーバ10は、取得したクレデンシャル生成要求にFIDOサーバ1への委任状を添えて、リダイレクト先(FIDOサーバ1)の情報とともにサービス提供サーバ20へ返信し(ステップS403)、サービス提供サーバ20は、FIDOサーバ1へクレデンシャル生成要求をリダイレクトする(ステップS404)。この委任状は、FIDOサーバ1に対してFIDO認証の登録を委任することを明示的に示す情報であり、委任元である認証サーバ10の情報を含む。つづいて、FIDOサーバ1は、クレデンシャル生成要求に基づいて、鍵ペアの生成指示メッセージを作成する(ステップS405)。
つづいて、FIDOサーバ1は、鍵ペアの生成指示メッセージをサービス提供サーバ20へ送信する(ステップS406)。
つづいて、サービス提供サーバ20は、鍵ペアの生成指示メッセージを、認証器に対して送信する(ステップS407)。つづいて、認証器は、ユーザ検証要求を送信する(ステップS408)。
つづいて、ユーザ端末30は、ユーザの操作により認証器に対して生体情報等を入力する(ステップS409)。
つづいて、認証器は、鍵ペア(秘密鍵および公開鍵)を生成し(ステップS410)、公開鍵をサービス提供サーバ20へ送信する(ステップS411)。
つづいて、サービス提供サーバ20は、アテステーション情報およびユーザ情報(生体情報および公開鍵)をFIDOサーバ1へ送信する(ステップS412)。
つづいて、FIDOサーバ1は、アテステーション情報の検証、連携IDの付与、公開鍵の登録を行うとともに、アテステーション情報の検証結果に基づいて認証登録コンテキストを生成する(ステップS413)。
つづいて、FIDOサーバ1は、認証登録コンテキストおよび連携IDをリダイレクト先(認証サーバ10)の情報とともにサービス提供サーバ20へ送信(ステップS414)、サービス提供サーバ20は、認証登録コンテキストおよび連携IDを認証サーバ10へリダイレクトする(ステップS415)。
つづいて、認証サーバ10は、認証登録コンテキストの検証および連携IDをユーザIDに紐付けて保管する(ステップS416)。
つづいて、認証サーバ10は、認証登録コンテキストの検証の結果、問題無ければ、クレデンシャル生成応答をサービス提供サーバ20へ送信する(ステップS417)。つづいて、サービス提供サーバ20は、登録が完了した旨を示す登録応答をユーザ端末30へ送信する(ステップS418)。
〔別ドメイン時の認証処理(その2)〕
次に、図14を参照して、実施形態に係る認証システムSにおけるユーザの認証処理について説明する。図14は、実施形態に係る認証システムSによって実行される認証処理の一例を示すシーケンス図である。
図14に示すように、まず、ユーザ端末30は、サービス提供サーバ20に対してアクセス(またはログイン)要求を送信する(ステップS501)。
つづいて、サービス提供サーバ20は、認証サーバ10に対してクレデンシャル取得要求を送信する(ステップS502)。このクレデンシャル取得要求には、ユーザIDの情報が含まれる。
つづいて、認証サーバ10は、取得したクレデンシャル取得要求を連携IDおよびリダイレクト先(FIDOサーバ1)の情報とともに、FIDOサーバ1への委任状を添えて、サービス提供サーバ20へ返信し(ステップS503)、サービス提供サーバ20は、クレデンシャル取得要求および連携IDをFIDOサーバ1へリダイレクトする(ステップS504)。この委任状は、FIDOサーバ1に対してFIDO認証の認証を委任することを明示的に示す情報であり、委任元である認証サーバ10の情報を含む。つづいて、FIDOサーバ1は、クレデンシャル取得要求および連携IDに基づいて、対応する公開鍵を選択し、選択した公開鍵に対応するユーザ情報(認証のための生体情報等)の取得指示メッセージを作成する(ステップS505)。
つづいて、FIDOサーバ1は、取得指示メッセージをサービス提供サーバ20へ送信する(ステップS506)。
つづいて、サービス提供サーバ20は、認証のためのユーザ情報の取得指示メッセージを、認証器に対して送信する(ステップS507)。
つづいて、認証器は、取得指示に基づいてユーザ検証要求を送信する(ステップS508)。つづいて、ユーザ端末30は、ユーザの操作により認証器に対して生体情報等を入力する(ステップS509)。
つづいて、認証器は、入力された生体情報に基づいて、秘密鍵へアクセスし、アサーション情報を生成する(ステップS510)。具体的には、認証器は、入力された生体情報に基づいて、ユーザを認証して認証結果を生成するとともに、対応する秘密鍵を用いて認証結果に署名した署名付き認証結果の証明書をアサーション情報として生成する。つづいて、認証器は、アサーション情報をサービス提供サーバ20へ送信する(ステップS511)。
つづいて、サービス提供サーバ20は、アサーション情報をFIDOサーバ1へ送信する(ステップS512)。
つづいて、FIDOサーバ1は、アサーション情報の検証を行うとともに、アサーション情報の検証結果に基づいて認証結果コンテキストを生成する(ステップS513)。
つづいて、FIDOサーバ1は、認証結果コンテキストおよび連携IDをリダイレクト先(認証サーバ10)の情報とともにサービス提供サーバ20へ送信し(ステップS514)、サービス提供サーバ20は、認証結果コンテキストおよび連携IDを認証サーバ10へリダイレクトする(ステップS515)。
つづいて、認証サーバ10は、認証結果コンテキストの検証を行い、検証の結果、問題無ければ、サービスへのアクセス要求を承認し(ステップS516)、承認したことを示すクレデンシャル取得応答をサービス提供サーバ20へ送信する(ステップS517)。つづいて、サービス提供サーバ20は、アクセスが承認された旨を示すアクセス応答をユーザ端末30へ送信するとともに(ステップS518)、ユーザ端末30へサービスを提供する。
〔その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
例えば、図2に示した記憶部4、図3に示した記憶部13、図5に示した記憶部23、図6に示した記憶部33それぞれの一部又は全部は、各装置によって保持されるのではなく、ストレージサーバ等に保持されてもよい。この場合、各装置は、ストレージサーバにアクセスすることで、各種情報を取得する。
〔ハードウェア構成〕
また、上述してきた実施形態に係るFIDOサーバ1は、例えば図15に示すような構成のコンピュータ1000によって実現される。図15は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力IF(Interface)1060、入力IF1070、ネットワークIF1080がバス1090により接続された形態を有する。
演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。一次記憶装置1040は、RAM等、演算装置1030が各種の演算に用いるデータを一時的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等により実現される。
出力IF1060は、モニタやプリンタといった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインタフェースであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力IF1070は、マウス、キーボード、およびスキャナ等といった各種の入力装置1020から情報を受信するためのインタフェースであり、例えば、USB等により実現される。
なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等から情報を読み出す装置であってもよい。また、入力装置1020は、USBメモリ等の外付け記憶媒体であってもよい。
ネットワークIF1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。
演算装置1030は、出力IF1060や入力IF1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。
例えば、コンピュータ1000がFIDOサーバ1として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムを実行することにより、制御部3の機能を実現する。
〔効果〕
上述してきたように、実施形態に係る情報処理装置(FIDOサーバ1)は、制御部3を備える。制御部3は、FIDO認証ための認証器を有するユーザ端末30から認証サーバ10に送信されたFIDO認証のための鍵ペアの生成要求を認証サーバ10から取得し、生成要求に基づいて認証器に鍵ペアを生成させる生成指示を生成し、生成指示を認証サーバ10を介して認証器へ通知する。制御部3は、生成指示に従って認証器で生成された鍵ペアのうち、公開鍵を認証サーバ10を介して取得し、取得した公開鍵を連携IDと紐付けて記憶するとともに、連携IDを認証サーバ10へ通知する。制御部3は、公開鍵を取得する際に、認証器のアテステーション情報を認証サーバ10を介して取得し、アテステーション情報の検証結果に基づいて、ユーザの登録可否を示す認証登録コンテキストを生成して認証サーバ10へ通知する。制御部3は、ユーザ端末30からアクセスを要求されたサービス提供サーバ20から認証サーバ10を介して対象のユーザに対応する連携IDとともに認証要求を取得し、連携IDに対応する認証情報の取得指示を生成し、取得指示を認証サーバ10を介して認証器へ通知する。制御部3は、取得指示に従って認証器で取得された認証情報に秘密鍵を使って署名されたアサーション情報を認証サーバ10を介して取得し、アサーション情報の検証結果に基づいて、ユーザの認証可否を示す認証結果コンテキストを生成して認証サーバ10へ通知する。制御部3は、アサーション情報とともに、ユーザに関する付加情報を取得し、アサーション情報および付加情報の検証結果に基づいて、ユーザの認証可否を示す認証結果コンテキストを生成する。付加情報は、少なくともユーザの位置情報を含む。このような構成により、FIDOによる認証技術を容易に導入することができる。
また、上述してきたように、実施形態に係る情報処理装置(FIDOサーバ1)は、制御部3を備える。制御部3は、FIDO認証のための認証器を有するユーザ端末30から認証サーバ10を介してサービス提供サーバ20に送信されたFIDO認証のための鍵ペアの生成要求をサービス提供サーバ20から取得し、生成要求に基づいて認証器に鍵ペアを生成させる生成指示を生成し、生成指示をサービス提供サーバ20を介して認証器へ通知する。制御部3は、生成指示に従って認証器で生成された鍵ペアのうち、公開鍵をサービス提供サーバ20を介して取得し、取得した公開鍵を連携IDと紐付けて記憶するとともに、連携IDをサービス提供サーバ20を介して認証サーバ10へ通知する。制御部3は、公開鍵を取得する際に、認証器のアテステーション情報をサービス提供サーバ20を介して取得し、アテステーション情報の検証結果に基づいて、ユーザの登録可否を示す認証登録コンテキストを生成してサービス提供サーバ20を介して認証サーバ10へ通知する。制御部3は、ユーザ端末30からサービス提供サーバ20に対してアクセスを要求された場合に、認証サーバ10を介してサービス提供サーバ20から対象のユーザに対応する連携IDとともに認証要求を取得し、連携IDに対応する認証情報の取得指示を生成し、取得指示をサービス提供サーバ20を介して認証器へ通知する。制御部3は、取得指示に従って認証器で取得された認証情報に秘密鍵を使って署名されたアサーション情報をサービス提供サーバ20を介して取得し、アサーション情報の検証結果に基づいて、ユーザの認証可否を示す認証結果コンテキストを生成してサービス提供サーバ20を介して認証サーバ10へ通知する。制御部3は、アサーション情報とともに、ユーザに関する付加情報を取得し、アサーション情報および付加情報の検証結果に基づいて、ユーザの認証可否を示す認証結果コンテキストを生成する。付加情報は、少なくともユーザの位置情報を含む。このような構成により、FIDOによる認証技術を容易に導入することができる。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
〔その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた実施形態に記載した各処理は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上記してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、制御部3は、制御手段や制御回路に読み替えることができる。
1 FIDOサーバ
2、11、31 通信部
3、12、32 制御部
4、13、33 記憶部
10 認証サーバ
20 サービス提供サーバ
30 ユーザ端末
S 認証システム

Claims (4)

  1. 認証サーバとインターネット上におけるアドレスが同じであるFIDOサーバである情報処理装置であって、
    FIDO認証のための認証器を有するユーザ端末からサービス提供サーバに送信された登録要求に従って前記サービス提供サーバで生成された生成要求であって、前記FIDO認証のための鍵ペアの生成要求を前記認証サーバを介して取得し、前記生成要求に基づいて前記認証器に前記鍵ペアを生成させる生成指示を生成し、前記生成指示を前記認証サーバを介して前記認証器へ通知する制御部を備え、
    前記制御部は、
    前記生成指示に従って前記認証器で生成された前記鍵ペアのうち、公開鍵を前記認証サーバを介して取得し、取得した前記公開鍵を連携IDと紐付けて記憶するとともに、前記連携IDを前記認証サーバへ通知し、前記ユーザ端末からアクセスを要求されたサービス提供サーバから前記認証サーバを介して対象のユーザに対応する前記連携IDとともに認証要求を取得し、前記連携IDに対応する認証情報の取得指示を生成し、前記取得指示を前記認証サーバを介して前記認証器へ通知し、前記取得指示に従って前記認証器で取得された前記認証情報に秘密鍵を使って署名されたアサーション情報を前記認証サーバを介して取得するとともに、前記ユーザに関する付加情報を取得し、前記アサーション情報および前記付加情報の検証結果に基づいて、前記ユーザの認証可否を示す認証結果コンテキストを生成して前記認証サーバへ通知し、
    前記付加情報は、
    前記ユーザの位置情報、前記ユーザの行動情報、および前記ユーザの属性情報を含むこと
    を特徴とする情報処理装置。
  2. 前記制御部は、
    前記公開鍵を取得する際に、前記認証器のアテステーション情報を前記認証サーバを介して取得し、前記アテステーション情報の検証結果に基づいて、ユーザの登録可否を示す認証登録コンテキストを生成して前記認証サーバへ通知すること
    を特徴とする請求項1に記載の情報処理装置。
  3. 認証サーバとインターネット上におけるアドレスが同じであるFIDOサーバであるコンピュータが実行する情報処理方法であって、
    FIDO認証のための認証器を有するユーザ端末からサービス提供サーバに送信された登録要求に従って前記サービス提供サーバで生成された生成要求であって、前記FIDO認証のための鍵ペアの生成要求を前記認証サーバを介して取得し、前記生成要求に基づいて前記認証器に前記鍵ペアを生成させる生成指示を生成し、前記生成指示を前記認証サーバを介して前記認証器へ通知する制御工程を含み、
    前記制御工程は、
    前記生成指示に従って前記認証器で生成された前記鍵ペアのうち、公開鍵を前記認証サーバを介して取得し、取得した前記公開鍵を連携IDと紐付けて記憶するとともに、前記連携IDを前記認証サーバへ通知し、前記ユーザ端末からアクセスを要求されたサービス提供サーバから前記認証サーバを介して対象のユーザに対応する前記連携IDとともに認証要求を取得し、前記連携IDに対応する認証情報の取得指示を生成し、前記取得指示を前記認証サーバを介して前記認証器へ通知し、前記取得指示に従って前記認証器で取得された前記認証情報に秘密鍵を使って署名されたアサーション情報を前記認証サーバを介して取得するとともに、前記ユーザに関する付加情報を取得し、前記アサーション情報および前記付加情報の検証結果に基づいて、前記ユーザの認証可否を示す認証結果コンテキストを生成して前記認証サーバへ通知し、
    前記付加情報は、
    前記ユーザの位置情報、前記ユーザの行動情報、および前記ユーザの属性情報を含むこと
    を特徴とする情報処理方法。
  4. 認証サーバとインターネット上におけるアドレスが同じであるFIDOサーバであるコンピュータに実行させる情報処理プログラムであって、
    FIDO認証のための認証器を有するユーザ端末からサービス提供サーバに送信された登録要求に従って前記サービス提供サーバで生成された生成要求であって、前記FIDO認証のための鍵ペアの生成要求を前記認証サーバを介して取得し、前記生成要求に基づいて前記認証器に前記鍵ペアを生成させる生成指示を生成し、前記生成指示を前記認証サーバを介して前記認証器へ通知する制御手順をコンピュータに実行させ、
    前記制御手順は、
    前記生成指示に従って前記認証器で生成された前記鍵ペアのうち、公開鍵を前記認証サーバを介して取得し、取得した前記公開鍵を連携IDと紐付けて記憶するとともに、前記連携IDを前記認証サーバへ通知し、前記ユーザ端末からアクセスを要求されたサービス提供サーバから前記認証サーバを介して対象のユーザに対応する前記連携IDとともに認証要求を取得し、前記連携IDに対応する認証情報の取得指示を生成し、前記取得指示を前記認証サーバを介して前記認証器へ通知し、前記取得指示に従って前記認証器で取得された前記認証情報に秘密鍵を使って署名されたアサーション情報を前記認証サーバを介して取得するとともに、前記ユーザに関する付加情報を取得し、前記アサーション情報および前記付加情報の検証結果に基づいて、前記ユーザの認証可否を示す認証結果コンテキストを生成して前記認証サーバへ通知し、
    前記付加情報は、
    前記ユーザの位置情報、前記ユーザの行動情報、および前記ユーザの属性情報を含むこと
    を特徴とする情報処理プログラム。
JP2021070648A 2021-04-19 2021-04-19 情報処理装置、情報処理方法および情報処理プログラム Active JP7232863B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021070648A JP7232863B2 (ja) 2021-04-19 2021-04-19 情報処理装置、情報処理方法および情報処理プログラム
US17/689,891 US20220337584A1 (en) 2021-04-19 2022-03-08 Information processing device, information processing method, and non-transitory computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021070648A JP7232863B2 (ja) 2021-04-19 2021-04-19 情報処理装置、情報処理方法および情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2022165317A JP2022165317A (ja) 2022-10-31
JP7232863B2 true JP7232863B2 (ja) 2023-03-03

Family

ID=83602965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021070648A Active JP7232863B2 (ja) 2021-04-19 2021-04-19 情報処理装置、情報処理方法および情報処理プログラム

Country Status (2)

Country Link
US (1) US20220337584A1 (ja)
JP (1) JP7232863B2 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019239591A1 (ja) 2018-06-15 2019-12-19 Capy株式会社 認証システム、認証方法、アプリケーション提供装置、認証装置、及び認証用プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11431509B2 (en) * 2016-09-13 2022-08-30 Queralt, Inc. Bridging digital identity validation and verification with the FIDO authentication framework
JP2021043675A (ja) * 2019-09-10 2021-03-18 富士通株式会社 制御方法、制御プログラム、情報処理装置及び情報処理システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019239591A1 (ja) 2018-06-15 2019-12-19 Capy株式会社 認証システム、認証方法、アプリケーション提供装置、認証装置、及び認証用プログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
上野 博司,Web Authentication API,WEB+DB PRESS,日本,(株)技術評論社,2018年11月07日,Vol. 107,pp. 112-120
五味 秀仁,FIDO2の最新動向,シェルスクリプトマガジン,日本,(有)USP研究所,2021年01月25日,Vol. 70,pp. 14-25
加藤 圭佑,作って学ぶ WebAuthn,WEB+DB PRESS,日本,(株)技術評論社,2020年01月04日,Vol. 114,pp. 40-67

Also Published As

Publication number Publication date
JP2022165317A (ja) 2022-10-31
US20220337584A1 (en) 2022-10-20

Similar Documents

Publication Publication Date Title
US20220078178A1 (en) Method and system for authenticated login using static or dynamic codes
US10299118B1 (en) Authenticating a person for a third party without requiring input of a password by the person
US10742634B1 (en) Methods for single sign-on (SSO) using optical codes
JP7083892B2 (ja) デジタル証明書のモバイル認証相互運用性
US11265165B2 (en) Initial provisioning through shared proofs of knowledge and crowdsourced identification
US9723003B1 (en) Network beacon based credential store
JP2017519412A (ja) 認証装置の登録のための強化されたセキュリティ
US20140053251A1 (en) User account recovery
US10129299B1 (en) Network beacon management of security policies
JP5431040B2 (ja) 認証要求変換装置、認証要求変換方法および認証要求変換プログラム
US11824850B2 (en) Systems and methods for securing login access
JP2009043037A (ja) ユーザ認証方法、ユーザ認証装置、プログラム及び記録媒体
JP2020095687A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
WO2021260495A1 (en) Secure management of a robotic process automation environment
JP2007241812A (ja) 認証システム、認証プログラム及び認証方法
US10063592B1 (en) Network authentication beacon
CN111078649A (zh) 基于区块链的云上文件存储方法、装置及电子设备
JP7232863B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP7232862B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
KR20180034199A (ko) 싱글 사인 온 서비스 기반의 상호 인증 방법 및 시스템
JP6532505B2 (ja) 認証サーバ、認証システム及びプログラム
JP7351873B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
Al-Sinani et al. Client-based cardspace-openid interoperation
JP2019075140A (ja) 認証サーバ、認証システム及びプログラム
JP2020102741A (ja) 認証システム、認証方法、及び、認証プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211118

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20211118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220425

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221025

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20221025

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20221102

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20221108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230111

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230220

R150 Certificate of patent or registration of utility model

Ref document number: 7232863

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350