JP2017152880A - 認証システム、鍵処理連携方法、および、鍵処理連携プログラム - Google Patents

認証システム、鍵処理連携方法、および、鍵処理連携プログラム Download PDF

Info

Publication number
JP2017152880A
JP2017152880A JP2016032659A JP2016032659A JP2017152880A JP 2017152880 A JP2017152880 A JP 2017152880A JP 2016032659 A JP2016032659 A JP 2016032659A JP 2016032659 A JP2016032659 A JP 2016032659A JP 2017152880 A JP2017152880 A JP 2017152880A
Authority
JP
Japan
Prior art keywords
authentication
key
web service
terminal
authentication module
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.)
Granted
Application number
JP2016032659A
Other languages
English (en)
Other versions
JP6438901B2 (ja
Inventor
祐介 緒方
Yusuke Ogata
祐介 緒方
哲弥 岩田
Tetsuya Iwata
哲弥 岩田
高生 山下
Takao Yamashita
高生 山下
芳彦 大森
Yoshihiko Omori
芳彦 大森
奨悟 斎藤
Shogo Saito
奨悟 斎藤
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016032659A priority Critical patent/JP6438901B2/ja
Publication of JP2017152880A publication Critical patent/JP2017152880A/ja
Application granted granted Critical
Publication of JP6438901B2 publication Critical patent/JP6438901B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】WEBサービス向けのオンライン認証に用いられる鍵の紛失を回避し、WEBサービス向けのオンライン認証を確実に実行させる。
【解決手段】ユーザ認証を行う認証モジュール30を備える端末20と、端末20が利用するWEBサービス10と、所定の鍵を保有する認証鍵リレー型キーストア40と、を備える認証システム100にて、WEBサービス10は、端末20がWEBサービス10にアクセスするための認証に用いられるWEBサービス認証用公開鍵PK1を有しており、キーストア40は、WEBサービス認証用秘密鍵SK1、および、認証モジュール30の認証に用いられる認証モジュール認証用秘密鍵SK3を、耐タンパー領域R3内に閉じ込めており、端末20は、認証モジュール認証用公開鍵PK3を有しており、公開鍵PK3および秘密鍵SK3を用いて処理される情報を、端末20とキーストア40との間で暗号化して送受信する。
【選択図】図1

Description

本発明は、電子鍵(以下、単に、「鍵」と呼ぶ場合がある。)による暗号化の技術に関する。
スマートホンなどの端末がWEBサービスを利用する際のセキュリティをいかに向上させるかが重要視されている。近年では、パスワードに依存しないオンライン認証として、鍵による暗号化を用いたオンライン認証が、FIDO(Fast Identity Online) Allianceなどによって提唱されている。このオンライン認証では、WEBサービスに公開鍵を持たせ、端末に秘密鍵を持たせる。端末は、オンライン認証に利用可能な認証モジュールを備えており、認証モジュールの専用の領域に秘密鍵を閉じ込めたまま認証を行うことができる。なお、鍵を「閉じ込める」とは、領域内に生成した鍵は、その鍵を削除するまでに領域外に取り出さないことを意味する。
諸事情により、端末が備える認証モジュールを紛失してしまった場合、認証モジュール内の秘密鍵も紛失してしまう。しかし、端末に新たな認証モジュールを備えたとしても、紛失前の秘密鍵と同じ秘密鍵を用意することはできない。その結果、秘密鍵を紛失した端末が、秘密鍵の紛失前から継続する態様でWEBサービスを利用することはもはやできない。なお、現時点では、FIDOでは鍵を復旧する技術が規定されていない。
特許文献1には、特定の複数の利用者を対象にして、本人確認を実行することができるグループを設定し、本人確認ができれば鍵の復旧を行う技術について開示されている。
特開2000−286831号公報
しかし、特許文献1の技術を用いても、不特定多数の者が利用するWEBサービスに対しては、本人確認を実行することができるグループを設定することが困難であるため、本人確認をしつつ鍵の復旧を行うことはできない。
このような事情に鑑みて、本発明は、WEBサービス向けのオンライン認証に用いられる鍵の紛失を回避し、WEBサービス向けのオンライン認証を確実に実行させることを課題とする。
前記した課題を解決するため、請求項1に記載の発明は、ユーザ認証を行う認証モジュールを備える端末と、前記端末が利用するWEBサービスと、所定の鍵を保有するキーストアと、が通信可能に接続されている認証システムであって、前記WEBサービスは、前記端末が前記WEBサービスにアクセスするための認証に用いられるWEBサービス認証用公開鍵を有しており、前記キーストアは、前記WEBサービス認証用公開鍵の対となるWEBサービス認証用秘密鍵、および、前記認証モジュールの認証に用いられる認証モジュール認証用秘密鍵を、耐タンパー領域内に閉じ込めており、前記端末は、前記認証モジュール認証用秘密鍵の対となる認証モジュール認証用公開鍵を有しており、前記認証モジュール認証用公開鍵および前記認証モジュール認証用秘密鍵を用いて処理される情報を、前記端末と前記キーストアとの間で暗号化して送受信する、ことを特徴とする。
また、請求項5に記載の発明は、ユーザ認証を行う認証モジュールを備える端末と、前記端末が利用するWEBサービスと、所定の鍵を保有するキーストアと、が通信可能に接続されている認証システムにおける鍵処理連携方法であって、前記WEBサービスが、前記端末が前記WEBサービスにアクセスするための認証に用いられるWEBサービス認証用公開鍵を有し、前記キーストアが、前記WEBサービス認証用公開鍵の対となるWEBサービス認証用秘密鍵を耐タンパー領域内に閉じ込める、という態様において、前記キーストアが、前記認証モジュールの認証に用いられる、認証モジュール認証用秘密鍵および認証モジュール認証用公開鍵を生成し、前記認証モジュール認証用公開鍵を前記端末に送信するステップと、前記認証モジュール認証用公開鍵および前記認証モジュール認証用秘密鍵を用いて処理される情報を、前記端末と前記キーストアとの間で暗号化して送受信するステップ、とを実行する、ことを特徴とする。
また、請求項6に記載の発明は、ユーザ認証を行う認証モジュールを備える端末と、前記端末が利用するWEBサービスと、所定の鍵を保有するキーストアと、が通信可能に接続されている認証システムの前記キーストアとしてのコンピュータを、前記WEBサービスが、前記端末が前記WEBサービスにアクセスするための認証に用いられるWEBサービス認証用公開鍵を有し、前記キーストアが、前記WEBサービス認証用公開鍵の対となるWEBサービス認証用秘密鍵を耐タンパー領域内に閉じ込める、という態様において、前記認証モジュールの認証に用いられる、認証モジュール認証用秘密鍵および認証モジュール認証用公開鍵を生成し、前記認証モジュール認証用公開鍵を前記端末に送信する手段と、前記認証モジュール認証用公開鍵および前記認証モジュール認証用秘密鍵を用いて処理される情報を、前記端末と前記キーストアとの間で暗号化して送受信する手段、として機能させるための鍵処理連携プログラムである。
請求項1,5,6に記載の発明によれば、端末側の認証モジュール認証用公開鍵、および、キーストア側の認証モジュール認証用秘密鍵を用いて、ユーザ認証結果とWEBサービス認証用秘密鍵とを関連付けることで、両者間の処理順序や関係を一意にすることができる。従来は、秘密鍵を利用する際は認証が必要で、キーストアの認証モジュール認証用秘密鍵とWEBサービス認証用秘密鍵といった2種類の秘密鍵を利用する場合は、秘密鍵の利用ごとにユーザの認証を行い(つまり、ユーザ認証を2回実施し)、各認証で承認を得る必要があるが、本方式では、ユーザの認証から鍵の利用順序を一意にすることが可能であるため、ユーザの認証を1回実施すればよい。その結果、WEBサービスでの認証時におけるユーザの操作量は、従来のFIDOの認証方式のときと同じにすることができる。よって、なりすましや中間者攻撃などの、キーストアに直接アクセスする不正の操作を見極めて、防止することができ、高セキュリティを実現することができる。
また、鍵の処理が可能な領域が限定されていることから、平文が限定的な領域内でしか扱われないようになり、キーストアの運用者でも情報の改ざん、盗聴、送受信する情報の不正利用を行うことができず、セキュリティの向上に寄与する。
また、端末側にWEBサービス認証用秘密鍵が存在しないため、ユーザによるWEBサービス認証用秘密鍵の紛失は起こりえず、WEBサービスの継続利用の中断を回避することができる。
したがって、WEBサービス向けのオンライン認証に用いられる鍵の紛失を回避し、WEBサービス向けのオンライン認証を確実に実行させることができる。
また、請求項2に記載の発明は、請求項1に記載の発明であって、前記端末に設定された画面ロックが解除されたことによるユーザ認証を、前記キーストアにアクセスするための前記認証モジュール認証用公開鍵を利用する権限を与える認証とする、ことを特徴とする。
請求項2に記載の発明によれば、画面ロック解除によるユーザ認証の成功が実現したときのみキーストアへのアクセスが可能となるような仕組みを導入することができる。よって、外部のアプリケーションなどから認証モジュール認証用公開鍵へのアクセスを制限し、不正な鍵の利用を防止することができ、さらにセキュリティを向上させることができる。
また、請求項3に記載の発明は、請求項2に記載の発明であって、前記WEBサービスが前記端末のユーザを登録する際、または、前記WEBサービスにアクセスしようとする前記端末のユーザを認証する際、前記端末が前記認証モジュール認証用公開鍵を有しており、かつ、前記キーストアが前記認証モジュール認証用秘密鍵を有している、という鍵の持ち合いを、前記端末と前記キーストアとの間で確認し、前記鍵の持ち合いが成立していないとき、前記WEBサービスが前記端末のユーザを登録する際、または、前記WEBサービスにアクセスしようとする前記端末のユーザを認証する際、前記端末と前記キーストアとの間で前記鍵の持ち合いを成立させる処理を実行する、ことを特徴とする。
請求項3に記載の発明によれば、WEBサービスでのユーザの登録の段階、または、WEBサービスにアクセスしようとする端末のユーザの認証の段階にて、端末とキーストアとの間で鍵の持ち合いを確実に実現するため、端末の画面ロック解除がキーストア側でのユーザ認証を兼ねるようにすることで、鍵の持ち合いの成立後は、WEBサービス向けのユーザ認証だけで済ませることができ、処理負荷を低減することができる。
また、請求項4に記載の発明は、請求項1から請求項3のいずれか1項に記載の認証システムであって、前記キーストアを第1のキーストアとしてインターネット側に配置し、所定の鍵を保有する第2のキーストアをローカルネットワーク側に配置し、前記端末のユーザの初期登録に関する処理を前記第2のキーストアで実行し、前記第2のキーストアで実行したときの処理結果を暗号化して、前記第1のキーストアに送信する、ことを特徴とする。
請求項4に記載の発明によれば、保有する情報を厳重に管理しているローカルネットワーク側に配置した第2のキーストアが、端末のユーザの初期登録を行うため、外部からの機能の乗っ取りなどの不正な操作をさらに困難にすることができ、さらにセキュリティを向上させることができる。
本発明によれば、WEBサービス向けのオンライン認証に用いられる鍵の紛失を回避し、WEBサービス向けのオンライン認証を確実に実行させることができる。
本実施形態の認証システムの全体構成図である。 メタデータサービスが保持する情報としての認証モジュールの情報の構造図である。 端末が保持する情報の構造図であり、(a)が認証管理情報の構造図であり、(b)がアカウント管理情報の構造図である。 認証鍵リレー型キーストアが保持するユーザ管理DBの情報の構造図である。 シナリオA 事前設定のシーケンス図である。 シナリオB 初期登録(1/3)のシーケンス図である。 シナリオB 初期登録(2/3)のシーケンス図である。 シナリオB 初期登録(3/3)のシーケンス図である。 シナリオC WEBサイトへの登録(1/3)のシーケンス図である。 シナリオC WEBサイトへの登録(2/3)のシーケンス図である。 シナリオC WEBサイトへの登録(3/3)のシーケンス図である。 シナリオD WEBサイトでの認証(1/3)のシーケンス図である。 シナリオD WEBサイトでの認証(2/3)のシーケンス図である。 シナリオD WEBサイトでの認証(3/3)のシーケンス図である。 認証鍵リレー型キーストアの変形例(1/2)の説明図であり、(a)がインターネット側およびローカルネットワーク側に配置された認証鍵リレー型キーストアの構成図であり、(b)が、端末の初期登録の段階で、ローカルネットワーク側の認証鍵リレー型キーストアにて生成されるユーザ管理DBの情報の構造図である。 認証鍵リレー型キーストアの変形例(2/2)の説明図であり、(a)がインターネット側およびローカルネットワーク側に配置された認証鍵リレー型キーストアの構成図であり、(b)が、WEBサービスの登録・認証の段階で、ローカルネットワーク側の認証鍵リレー型キーストアにて保持される、ユーザ管理DBの情報の構造図である。 FIDOAllianceの認証方法を説明する図である。 FIDOAllianceの認証方法の特徴を説明する図である。 FIDOAllianceの利用手順を説明する図である。 公開鍵を用いた認証(FIDO)の問題点を説明する図であり、(a)が紛失する認証モジュールを端末が備える構成を示す図、(b)が(新)認証モジュールを端末が備える構成を示す図である。 図20の問題点の解決の方向性を説明する図である。 図21の課題を説明する図であり、(a)が、WEBサービス認証用秘密鍵が端末の認証モジュール側にある場合、(b)が、認証鍵リレー型キーストア側にある場合である。
本発明の実施形態について、図面を参照しながら詳細に説明する。
(背景説明)
WEBサービスではPW(パスワード)による認証が限界を迎えている。辞書攻撃等によるアカウントの不正操作が頻発しているのが現状である。PWに依存しない認証方法として、鍵による認証が検討されている(標準規格策定団体;FIDO Alliance、2012年発足)。
FIDO(First IDentity Online)Allianceは、秘密鍵を生成した場所に閉じ込めたまま、認証に利用することでセキュリティを高めている。FIDOAllianceは、標準化された公開鍵暗号方式(PKI:Public Key Infrastructure)に基づいている。標準のプロトコルは2つあり、1つは、2要素認証の技術を進化させた認証U2F(Universal Second Factor)プロトコル、もう1つは、FIDO標準に対応したモバイルなどのデバイス経由でパスワードを使用しない認証UAF(Universal Authentication Framework)プロトコルである。FIDOの標準認証には、生体認証技術やTPM(Trusted Platform Module)、NFC(Near Field Communication)に対応し、デバイスやプラグインにも対応しているため、WEBサイトやクラウドアプリもFIDOに準拠した対応デバイスにより、オンライン認証の強化を図ることができる。
<FIDOAllianceの認証方法>
図17は、FIDOAllianceの認証方法を説明する図である。
図17に示すように、WEBサービス10は、アカウント11と、アカウント11に関連付けられたWEBサービス認証用公開鍵PK1と、を有する。スマートホン等の端末20は、FIDOAllianceの認証モジュール30に接続可能である。認証モジュール30は、認証判定モジュール31と、WEBサービス認証用秘密鍵SK1を保管する鍵処理保管領域R1と、を有する。WEBサービス10と認証モジュール30が接続された端末20とは、FIDO(UAF)プロトコルに準拠した認証を行う。
WEBサービス10では、アカウント11と公開鍵PK1とは関連付けられている。
図17に示すように、秘密鍵SK1・公開鍵PK1のペアを認証デバイス(図17では認証モジュール30)で生成し、秘密鍵SK1は認証デバイスに閉じ込めておく。閉じ込めておくとは、秘密鍵SK1については、鍵の生成から削除まで認証モジュール30の鍵処理保管領域R1から取り出さないことをいう。秘密鍵SK1を生成した場所(鍵処理保管領域R1)に閉じ込めたまま、認証に利用することでセキュリティを高めている。セキュリティを高める工夫として、さらに認証デバイスに閉じ込めた鍵による認証は、所有物による認証の性質も兼ね備えることでセキュリティを強化している。
<FIDOAllianceの認証方法の特徴>
図18は、FIDOAllianceの認証方法の特徴を説明する図である。
図18に示すように、WEBサービス10は、WEBサービスアプリケーション13と、FIDOサーバ15とを有し、WEBサービスアプリケーション13は、ユーザ管理DB14に格納されたアカウント11を参照する。FIDOサーバ15は、WEBサービス認証用公開鍵PK1を格納する鍵管理領域16を有する。
WEBサービス10は、メタデータサービス1との間で、認証モジュールの情報3を相互に参照する。メタデータサービス1は、メタデータサービス向け公開鍵PK2を有する。認証モジュールの情報3には、認証モジュールの認証方法(PIN(Personal Identification Number)、虹彩、指紋等)の認証の精度等の情報が記載されている。
端末20は、ブラウザ・アプリ21、FIDOクライアント22、認証管理情報23、および認証モジュールドライバ24を有する(アプリケーションを「アプリ」と略記する場合がある)。FIDOクライアント22は、WEBサービス10との間でFIDO(UAF)プロトコルに準拠して、WEBサービス10側の認証ポリシーに従った認証を行う。認証ポリシーとは、WEBサービス10側がユーザに提示する、サービスに必要な認証方式や認証の強度の条件のことをいう。
認証モジュール30は、認証モジュールドライバ24、認証判定モジュール31、および鍵処理保管領域R1を有する。図18の場合、鍵処理保管領域R1は、WEBサービス認証用秘密鍵SK1のほか、メタデータサービス向け秘密鍵SK2を保管する。なお、認証モジュール30は、様々な形態を許容されている。FIDOのUAFプロトコルが動作すれば、ハードウェアやソフトウェアでの実現は問わない。また、端末20に備え付けのものでもよいし、取り外せるものでもよい。
認証判定モジュール31は、ユーザが予め認証モジュールに登録しておいた、Credentialを用いて、ユーザの認証の際に、ユーザから提示された情報が、Credential 情報と照合し良否を判定する。以降では、PINコードや生体情報等の、ユーザを認証するための情報をCredential(クレデンシャル)と呼ぶ。ユーザから提示された情報が、Credential情報と照合して良であれば、秘密鍵・公開鍵の生成許可(WEBサービス10への登録時)か、秘密鍵の利用許可(WEBサービス10への認証時)を与える。
鍵処理保管領域R1は、鍵の生成や署名、暗号化、復号といった鍵の関する処理と、鍵の処理に必要な鍵自体を保存する機能を有する。
ここで、鍵の種別について説明する。
鍵は、WEBサービス向け公開鍵・秘密鍵と、メタデータサービス向け公開鍵・秘密鍵との2種類がある。
WEBサービス向け公開鍵・秘密鍵は、WEBサービス毎、アカウント毎に異なる鍵を生成する。
また、メタデータサービス向け公開鍵・秘密鍵は、認証モジュールのモデル(認証方式や鍵の保管領域などが定められた仕様)ごとに発行する。FIDOの認証モジュールとして認証を得たタイミングで、秘密鍵・公開鍵を生成する。秘密鍵は認証モジュールに埋め込んで出荷する。
FIDO認証の特徴は、下記の通りである。
WEBサービス10毎に求めるユーザの認証レベルが異なるため、多様な認証レベルに対応する必要があり、WEBサービス10側で認証方式(PIN、指紋、虹彩等のユーザを識別する方式)等を設定できるようになっている。
端末20のユーザは、WEBサービス10側で指定された認証ポリシーを満たす、認証判定モジュールを搭載した認証判定モジュール31を利用する必要がある。WEBサービス10側は、どのモデルの認証モジュールが利用されたか、メタデータサービス1を利用して検証できるようになっている。
<FIDOAllianceの利用手順>
図19は、FIDOAllianceの利用手順を説明する図である。
(手順1)事前登録
図19に示すように、認証モジュール30にPINコードや生体情報を登録する。
(手順2)WEBサービスでのアカウント生成
図19に示すように、アカウント入力フォームに情報を入力し、WEBサービス10側で本人確認を行う。ID(ログイン名など)とパスワードを設定する。
(手順3)WEBサービスのFIDO方式への認証方法の切替
図19に示すように、パスワードによりWEBサービス10にログインし、FIDO方式の認証に切替処理を実行する。WEBサービス10に登録する際、認証モジュール30でユーザの認証を行う。問題がなければ、認証モジュール30内で公開鍵PK1・秘密鍵SK1のペアを生成し、公開鍵PK1をWEBサービス10へ送付する。公開鍵PK1は、メタデータサービス向けの秘密鍵SK2で署名して送付する。WEBサービス10側で、メタデータを参照し、メタデータサービス1にある公開鍵PK2で検証する。
(手順4)FIDO方式での認証
図19に示すように、WEBサービス10側から認証要求があるため、認証モジュール30でユーザの認証を実行する。問題がなければ、鍵処理保管領域R1の秘密鍵SK1,SK2へのアクセス許可を与え、秘密鍵SK1,SK2で署名を行い、WEBサービス10側へ返す。WEBサービス10側では、アカウント11に紐付けてある、公開鍵PK1で署名が検証できれば、認証OKと判定する。
<公開鍵を用いた認証(FIDO)の問題点>
図20は、公開鍵を用いた認証(FIDO)の問題点を説明する図である。
公開鍵を用いた認証(FIDO)では、認証デバイスに鍵を閉じ込めているため、認証デバイスを紛失すると秘密鍵も失う、という問題点がある。
具体的には、図20(a)に示すように、認証モジュール30が取り付けられた端末20が、FIDOの認証を行い、WEBサービス10を利用する場合において、諸事情により認証モジュール30を紛失(秘密鍵SK1も紛失)したとする。このとき、新しい認証モジュールを(新)認証モジュール30Aとして用意し、端末20に(新)認証モジュール30Aを取り付けたとしても、図20(b)に示すように、WEBサービス10が保持する公開鍵PK1のペアとなる秘密鍵は、(新)認証モジュール30Aには無い(作り出すこともできない)。その結果、端末20のユーザは、秘密鍵SK1の紛失前から継続する態様でWEBサービス10を利用することはできない。
FIDOでは、鍵の新規登録については規定されているが、鍵の紛失時の対応策については標準化技術では規定されておらず、上記の問題点に対処していない。
<図20の問題点の解決の方向性>
図21は、図20の問題点の解決の方向性を説明する図である。
図21に示すように、WEBサービス10のWEBサービス認証用公開鍵PK1のペアとなるWEBサービス認証用秘密鍵SK1を、インターネット上のサーバ(以降では、認証鍵リレー型キーストア40と呼ぶ)に保管する。この秘密鍵SK1と認証モジュール30の関係を認証鍵リレー型キーストア40で保持する。つまり、これまではFIDOプロトコルに従って認証モジュール内で実行していた秘密鍵に関する処理を、認証鍵リレー型キーストア40側で実行するようなシステムを提案する。
<図21の課題>
図22は、図21の課題を説明する図である。
図22(a)に示すように、認証判定モジュール31、および、秘密鍵SK1を保管する鍵処理保管領域R1が、認証モジュール30内に閉じている。このため、WEBサービス認証用秘密鍵SK1が端末20の認証モジュール30側にある場合、認証判定モジュール31によるユーザの認証結果と、秘密鍵SK1の処理とが関連付いていることが保証されている。
しかし、図22(b)に示すように、WEBサービス認証用秘密鍵SK1が認証鍵リレー型キーストア40側にある場合、秘密鍵SK1が鍵処理保管領域R1に無いため、認証判定モジュール31によるユーザの認証結果と、秘密鍵SK1の処理とが関連付いていることが保証されない。このため、WEBサービス10は、秘密鍵SK1による署名を受け取ったとしても、その署名が、認証判定モジュール31が正しく認証したことに起因する結果物であるのか、認証判定モジュール31を介することなく認証鍵リレー型キーストア40にアクセスし、秘密鍵SK1の処理がなされたことに起因する結果物であるのか、判別できない。その結果、認証鍵リレー型キーストア40内のWEBサービス認証用秘密鍵SK1を不正に利用し、なりすましが行われる場合がある。
[認証システムの構成]
図1は、本実施形態の認証システムを示す全体構成図である。図1に示すように、本実施形態の認証システム100は、WEBサービス10と、端末20と、認証モジュール30(認証デバイス)と、認証鍵リレー型キーストア40(キーストア)と、メタデータサービス1と、認証局50と、を備える。
<WEBサービス>
WEBサービス10は、WEBサイトをオンライン上に有しており、端末20が利用して、端末20のユーザに対して所定のサービス(WEBサービス)を提供する。WEBサービス10は、WEBサービスアプリケーション13と、FIDOサーバ15とを有する。
WEBサービスアプリケーション13は、WEBサービスに供するプロセスを実行するアプリケーションである。WEBサービスアプリケーション13は、ユーザごとに作成されたアカウント11を格納するユーザ管理DB14を有する。
FIDOサーバ15は、FIDOによる認証を行うサーバである。FIDOサーバ15は、WEBサービス認証用公開鍵PK1を格納する鍵管理領域16を有する。
WEBサービス認証用公開鍵PK1は、WEBサービスを利用する端末20のユーザを認証するときに利用される公開鍵である。
また、FIDOサーバ15は、メタデータサービス1の認証モジュールの情報3を参照することができる。
<端末>
端末120は、スマートホン,携帯電話,タブレット等の携帯端末、ノート型/デスクトップ型PC、各種電子機器である。本実施形態では、スマートホンを例に採る。端末20は、ブラウザ・アプリ21と、FIDOクライアント22と、認証管理情報23と、認証モジュールドライバ24と、端末側連携認証機能25と、画面ロック解除機能26と、OS用アカウント管理機能27と、OS鍵処理保管領域R2と、を備える。端末120は、ユーザ認証を行う認証モジュール30を備える。
ブラウザ・アプリ21は、WEBサービス10のWEBサイトを閲覧させる。
FIDOクライアント22は、FIDOによる認証に要する処理をFIDOサーバ15に要求する。
認証管理情報23は、ユーザを認証するためのさまざまな値を関連付けて管理する情報である。認証管理情報23の詳細は、後記する。
認証モジュールドライバ24は、端末20が認証モジュール30の処理を制御するためのドライバである。
端末側連携認証機能25は、端末20側で、認証鍵リレー型キーストア40のKS側連携認証機能41(後記)と所定の情報のやり取りを行う。なお、「KS」はキーストア(Key Store)の略記である。端末側連携認証機能25は、認証モジュール認証用公開鍵PK3を利用する。端末側連携認証機能25は、やり取りする情報を暗号化することができる(詳細は後記)。
認証モジュール認証用公開鍵PK3は、認証モジュール30を認証するときに用いられる公開鍵である(詳細は後記)。
なお、端末側連携認証機能25は、端末20のOS側(Operating System:オペレーティングシステム。図示せず。)に実装してもよいし、認証モジュール30側に実装してもよい。
画面ロック解除機能26は、端末20の画面ロックを解除する。画面ロックは、端末20の電源投入後または、スリープ状態からの復帰後、所定の画面(例:ホーム画面)を表示するために、ユーザにパスワードやパターンの入力を求める機能である。画面ロック解除機能26が画面ロックの設定の処理を行ってもよい。
OS用アカウント管理機能27は、端末20のOS(Operating System:オペレーティングシステム。図示せず。)が、ユーザのアカウントを管理できるようにする。OS用アカウント管理機能27は、アカウント管理情報28を備える。アカウント管理情報28は、端末20のOSにて、ユーザのアカウントを管理するための様々な値を関連付けて管理する情報である。アカウント管理情報28の詳細は、後記する。
OS鍵処理保管領域R2は、端末20のOSによって保管される様々な種類の鍵を管理する。OS鍵処理保管領域R2には、認証モジュールアサーションキーAK2と、端末側認証モジュール毎の対称鍵SYK1が保管されている。
認証モジュールアサーションキーAK2は、ユーザ認証のアサーションを暗号化・復号化する共通鍵である。
端末側認証モジュール毎の対称鍵SYK1は、端末20側にて、認証モジュール30ごとに用意されている対称鍵である。
OS鍵処理保管領域R2は、耐タンパー性があり、鍵に関する処理(鍵の生成、署名検証、証明生成、暗号化、復号化など)が可能なモジュールであることが好ましい。しかし、鍵の保管と鍵の処理を限られた領域内のみで実行するのであれば、ソフトウェアなどでの実装でもよい。
<認証モジュール>
認証モジュール30は、端末20のユーザを認証するための認証デバイスである。認証モジュール30は、認証判定モジュール31と、鍵処理保管領域R1と、を有する。
認証判定モジュール31は、あらかじめ登録されたCredentialを用いて、ユーザ認証の際、ユーザから提示された情報がCredentialに一致すれば、鍵処理保管領域R1へのアクセスが許可される。
鍵処理保管領域R1は、認証モジュール30よって保管される様々な種類の鍵を管理する。鍵処理保管領域R1には、メタデータサービス向け秘密鍵SK2と、認証モジュールアサーションキーAK1と、が保管されている。
メタデータサービス向け秘密鍵SK2は、認証モジュール30が、メタデータサービス1の認証モジュールの情報3を利用するための秘密鍵である。
認証モジュールアサーションキーAK1は、ユーザ認証のアサーションを暗号化・復号化する共通鍵である。
鍵処理保管領域R1は、耐タンパー性があり、鍵に関する処理(鍵の生成、署名検証、証明生成、暗号化、復号化など)が可能なモジュールであることが好ましい。しかし、鍵の保管と鍵の処理を限られた領域内のみで実行するのであれば、ソフトウェアなどでの実装でもよい。
<認証鍵リレー型キーストア>
認証鍵リレー型キーストア40は、WEBサービス認証用秘密鍵SK1などの鍵をオンライン上(インターネット側)で保管するサーバである。認証鍵リレー型キーストア40は、KS側連携認証機能41と、ユーザ管理DB42と、アカウント管理WEBアプリ43と、耐タンパー領域R3と、サーバ証明書CE1と、を備える。
KS側連携認証機能41は、認証鍵リレー型キーストア40側で、端末20の端末側連携認証機能25と所定の情報のやり取りを行う。KS側連携認証機能41は、やり取りする情報を暗号化することができる(詳細は後記)。
ユーザ管理DB42は、端末20のユーザに関する情報を格納する。
アカウント管理WEBアプリ43は、ユーザ管理DB42に格納された情報について、読み出したり、書き換えたりして管理する。
耐タンパー領域R3は、認証モジュール30よって保管される様々な種類の鍵を管理する。鍵処理保管領域R1には、WEBサービス認証用秘密鍵SK1と、認証モジュール認証用秘密鍵SK3と、サーバの秘密鍵SK4と、KS側認証モジュール毎の対称鍵SYK2と、が保管されている。
WEBサービス認証用秘密鍵SK1は、WEBサービスを利用する端末20のユーザを認証するときに利用される秘密鍵である。WEBサービス認証用秘密鍵SK1は、WEBサービス認証用公開鍵PK1と対をなす。
認証モジュール認証用秘密鍵SK3は、認証モジュール30を認証するときに用いられる秘密鍵である(詳細は後記)。認証モジュール認証用秘密鍵SK3は、認証モジュール認証用公開鍵PK3と対をなす。図1に示すように、端末20が認証モジュール認証用公開鍵PK3を有し、認証鍵リレー型キーストア40が認証モジュール認証用秘密鍵SK3を有するという鍵の持ち合いが実現される。
サーバの秘密鍵SK4は、サーバ証明書CE1に示される署名に用いられる秘密鍵である。
KS側認証モジュール毎の対称鍵SYK2は、認証鍵リレー型キーストア40側にて、認証モジュール30ごとに用意されている対称鍵である。
耐タンパー領域R3は、耐タンパー性があり、鍵に関する処理(鍵の生成、署名検証、証明生成、暗号化、復号化など)が可能なモジュールであることが好ましい。しかし、鍵の保管と鍵の処理を限られた領域内のみで実行するのであれば、ソフトウェアなどでの実装でもよい。
サーバ証明書CE1は、認証局50が発行した電子証明書であり、WEBサイト所有者の情報・送信情報の暗号化に必要な鍵・証明書発行者の署名データを持つ。
<メタデータサービス>
メタデータサービス1は、さまざまな種類が存在する認証モジュールに関する情報を、認証モジュールの情報3として管理する。認証モジュールの情報3の詳細については後記する。
メタデータサービス1は、メタデータサービス向け公開鍵PK2を用いて認証モジュールの情報3を保管する。WEBサービス10のFIDOサーバ15は、認証モジュールの情報3を参照することができる。認証鍵リレー型キーストア40は、認証モジュールの情報3を参照することができる。メタデータサービス向け公開鍵PK2は、メタデータサービス向け秘密鍵SK2と対をなす。
<認証局>
認証局50は、他の当事者にデジタル公開鍵証明書を発行する実体である。認証局50は、サーバ証明書CE2と、サーバの公開鍵PK4とを有する。
サーバ証明書CE2は、サーバ証明書CE1と同等である。
サーバの公開鍵PK4は、サーバ証明書CE1に示される署名に用いられる秘密鍵である。サーバの公開鍵PK4は、サーバの秘密鍵SK4と対をなす。
[データの保持形式]
次に、データの保持形式について説明する。
<メタデータサービスの認証モジュールの情報>
図2は、メタデータサービス1の認証モジュールの情報3の構造図である。
図2に示すように、認証モジュールの情報3は、認証モジュールモデルID(3a)毎に、認証方式3b、メタデータサービス向け公開鍵ID(3c)、認証モジュールの実装形態3d、鍵処理保管領域の実装形態3e、鍵の保管領域3f、および認証精度3gを有する。本実施形態では、認証モジュールの情報3が、図2の太枠で囲んだ鍵の保管領域3fを持つことを特徴とする。
認証モジュールモデルID(3a)は、認証方式3b、メタデータサービス向け公開鍵ID(3c)、認証モジュールの実装形態3d、鍵処理保管領域の実装形態3e、鍵の保管領域3f、および認証精度3gによって規定される認証モジュール30の仕様(モデル)の識別子である。認証モジュールモデルID(3a)は、例えば、1111#aaaa,0000#dddd,…など9桁の英数文字列で表すことができる。
認証方式3bは、認証モジュール30が採用する認証方式の名称である。
メタデータサービス向け公開鍵ID(3c)は、該当の認証モジュールモデルに紐付けられているメタデータサービス向け公開鍵PK2の識別子である。
認証モジュールの実装形態3dおよび鍵の保管領域の実装形態3eは、ハードウェアまたはソフトウェアにより実装される。ハードウェア実装は、ソフトウェア実装よりもセキュリティレベルが高い。
鍵の保管領域3fは、WEBサービス認証用秘密鍵SK1の保管場所を特定し、本実施形態では、認証モジュール30内(具体的には、鍵処理保管領域R1)か、認証鍵リレー型キーストア(具体的には、耐タンパー領域R3)のいずれかである。認証モジュールの情報3に鍵の保管領域3fを設定することにより、WEBサービス10が、WEBサービス10自身の認証に求める要件を満たす認証モジュール30を選択することができる。具体的には、WEBサービス10の提供に求められるセキュリティレベルを満たすことができる認証方式をWEBサイトの事業者が選択することができる。また、必要とするセキュリティレベルがそれぞれ異なる多様なWEBサービスの認証要件に応じることができる。
認証精度3gは、認証モジュールモデルから決定することができる。例えば、PIN入力は、5桁の数字である。また、指紋認証、虹彩認証など生体認証システムの精度は、FRR(False Rejection:本人拒否率)とFAR(False Acceptance:他人受入率)の組合せで評価される。
なお、図2に示す認証モジュールの情報3は、一例であって、上記の情報の一部を削除したり、他の情報を追加したりすることができる。
[端末側が保持する情報]
次に、端末20側が保持する情報について説明する。端末20側が保持する情報は、具体的には、認証管理情報23と、アカウント管理情報28である。
図3は、端末が保持する情報の構造図である。図3では木構造として示されている。図3の説明(および後記する図4の説明)において、「xxのID」と「yyのID」とが線で結ばれる場合、当該線に付された「1…1」は、1つのxxのIDには1つyyのIDが対応していることを示す。また、「xxのID」と「yyのID」とが線で結ばれる場合、当該線に付された「1…n(nは2以上の整数)」は、1つのxxのIDには複数のyyのIDが対応していることを示す。
<認証管理情報>
図3(a)に示すように、端末20側が保持する認証管理情報23は、WEBサービスのアプリケーションID(23a)と、WEBサービスのユーザID(23b)と、認証モジュールモデルID(23c)と、WEBサービス認証用秘密鍵のID(23d)と、認証モジュール認証用公開鍵のID(23e)と、認証鍵リレー型キーストアのユーザID(23f)と、認証鍵リレー型キーストアのURL(Uniform Resource Locator)(23g)と、を有する。
WEBサービスのアプリケーションID(23a)は、WEBサービス10のWEBサービスアプリ13の識別子であり、FIDOで規定される。例えば、WEBサービスのアプリケーションID(23a)は、例えば、WEBサービス10のURLまたはそのURLのハッシュ値とすることができる。WEBサービスのアプリケーションID(23a)は、最上位に位置し、その1つ下位のWEBサービスのユーザID(23b)に「1…n」で対応する(WEBサービスのユーザID(23b)が「n(複数)」に相当)。
WEBサービスのユーザID(23b)は、WEBサービス10を利用するユーザ(ユーザ管理DB14に登録済み)の識別子である。WEBサービスのユーザID(23b)は、その1つ下位の認証モジュールID(23c)に「1…n」で対応する(認証モジュールIDが「n(複数)」に相当)。また、WEBサービスのユーザID(23b)は、その1つ下位の認証鍵リレー型キーストアのユーザID(23f)に「1…1」で対応する。
認証モジュールモデルID(23c)は、認証モジュールの情報3の認証モジュールモデルID(3a)(図2参照)と同等である。認証モジュールモデルID(23c)は、WEBサービス認証用秘密鍵のID(23d)に「1…n」で対応する(WEBサービス認証用秘密鍵のID(23d)が「n(複数)」に相当)。また、認証モジュールモデルID(23c)は、その1つ下位の認証モジュール認証用公開鍵のID(23e)に「1…1」で対応する。
WEBサービス認証用秘密鍵のID(23d)は、WEBサービス認証用秘密鍵SK1の識別子である。
認証モジュール認証用公開鍵のID(23e)は、認証モジュール認証用公開鍵PK3の識別子である。
認証鍵リレー型キーストアのユーザID(23f)は、認証鍵リレー型キーストア40を利用するユーザ(ユーザ管理DB42に登録済み)の識別子である。認証鍵リレー型キーストアのユーザID(23f)は、その1つ下位の認証鍵リレー型キーストアのURL(23g)に「1…1」で対応する。
認証鍵リレー型キーストアのURL(23g)は、認証鍵リレー型キーストア40の所在を示す。
なお、図3(a)に示す認証管理情報23は、一例であって、上記の情報(ID)の一部を削除したり、他の情報を追加したりすることができる。
<アカウント管理情報>
また、図3(b)に示すように、端末20側が保持するアカウント管理情報28は、OSのユーザアカウント(28a)と、認証モジュールアサーションキーID(28b)と、端末側認証モジュール毎の対称鍵ID(28c)と、認証モジュール認証用鍵ペアのID(28d)と、を有する。
OSのユーザアカウント(28a)は、端末20のユーザに対して生成されたアカウントであり、WEBサービス10のアカウント11に相当する。OSのユーザアカウント(28a)は最上位に位置し、その1つ下位の認証モジュールアサーションキーID(28b)に「1…n」で対応する(認証モジュールアサーションキーID(28b)が「n(複数)」に相当)。
認証モジュールアサーションキーID(28b)は、認証モジュールアサーションキーAK2の識別子である。認証モジュールアサーションキーID(28b)は、その1つ下位の端末側認証モジュール毎の対称鍵ID(28c)に「1…1」で対応する。
端末側認証モジュール毎の対称鍵ID(28c)は、端末側認証モジュール毎の対称鍵SYK1の識別子である。端末側認証モジュール毎の対称鍵ID(28c)は、その1つ下位の認証モジュール認証用鍵ペアのID(28d)に「1…1」で対応する。
認証モジュール認証用鍵ペアのID(28d)は、認証モジュール認証用鍵(PK3,SK3)の識別子である。
なお、図3(b)に示すアカウント管理情報28は、一例であって、上記の情報(ID)の一部を削除したり、他の情報を追加したりすることができる。
[認証鍵リレー型キーストア側が保持する情報]
次に、認証鍵リレー型キーストア40側が保持する情報について説明する。認証鍵リレー型キーストア40側が保持する情報は、具体的には、ユーザ管理DB42の情報である。
図4は、認証鍵リレー型キーストアが保持するユーザ管理DBの情報の構造図である。図4では木構造として示されている。
<ユーザ管理DBの情報>
図4に示すように、ユーザ管理DB42は、認証鍵リレー型キーストアのユーザID(42a)と、認証モジュールモデルID(42b)と、認証モジュール認証用公開鍵のID(42c)と、KS側認証モジュール毎の対称鍵ID(42d)と、認証モジュール認証用秘密鍵のID(42e)と、WEBサービス認証用秘密鍵のID(42f)と、WEBサービスのユーザID(42g)と、WEBサービスのアプリケーションID(42h)と、を有する。
認証鍵リレー型キーストアのユーザID(42a)は、認証鍵リレー型キーストア40を利用するユーザ(ユーザ管理DB42に登録済み)の識別子であり、認証管理情報23の認証鍵リレー型キーストアのユーザID(23f)と同等である。
認証鍵リレー型キーストアのユーザID(42a)は、その1つ下位の認証モジュールモデルID(42b)に「1…1」で対応する。
また、認証鍵リレー型キーストアのユーザID(42a)は、その1つ下位の認証モジュール認証用公開鍵のID(42c)に「1…n」で対応する(認証モジュール認証用公開鍵のID(42c)が「n(複数)」に相当)。
また、認証鍵リレー型キーストアのユーザID(42a)は、その1つ下位のWEBサービス認証用秘密鍵のID(42f)に「1…n」で対応する(WEBサービス認証用秘密鍵のID(42f)が「n(複数)」に相当)。
認証モジュールモデルID(42b)は、認証モジュールの情報3の認証モジュールモデルID(3a)(図2参照)と同等である。
認証モジュール認証用公開鍵のID(42c)は、認証モジュール認証用公開鍵PK3の識別子であり、認証管理情報23の認証モジュール認証用公開鍵のID(23e)と同等である。認証モジュール認証用公開鍵のID(42c)は、KS側認証モジュール毎の対称鍵ID(42d)に「1…1」で対応する。
KS側認証モジュール毎の対称鍵ID(42d)は、KS側認証モジュール毎の対称鍵SYK2の識別子である。KS側認証モジュール毎の対称鍵ID(42d)は、認証モジュール認証用秘密鍵のID(42e)に「1…1」で対応する。
認証モジュール認証用秘密鍵のID(42e)は、認証モジュール認証用秘密鍵SK3の識別子である。
WEBサービス認証用秘密鍵のID(42f)は、WEBサービス認証用秘密鍵SK1の識別子であり、認証管理情報23のWEBサービス認証用秘密鍵のID(23d)と同等である。WEBサービス認証用秘密鍵のID(42f)は、その1つ下位のWEBサービスのユーザID(42g)に「1…1」で対応する。
WEBサービスのユーザID(42g)は、WEBサービス10を利用するユーザ(ユーザ管理DB14に登録済み)の識別子であり、認証管理情報23のWEBサービスのユーザID(23b)と同等である。WEBサービスのユーザID(42g)は、その1つ下位のWEBサービスのアプリケーションID(42h)に「1…1」で対応する。
WEBサービスのアプリケーションID(42h)は、WEBサービス10のWEBサービスアプリ13の識別子であり、認証管理情報23のWEBサービスのアプリケーションID(23a)と同等である。WEBサービスのアプリケーションID(42h)は、例えば、WEBサービス10のURLまたはそのURLのハッシュ値とすることができる。
なお、図4に示すユーザ管理DB42は、一例であって、上記の情報(ID)の一部を削除したり、他の情報を追加したりすることができる。
≪処理≫
次に、本実施形態の認証システムが実行する処理について説明する。この説明をする際、以下に述べる事項を前提とする。
・端末20はスマートホンであり、認証モジュール30を備える。このスマートホンは、例えば、指紋認証を行うことができる。なお、端末20は、PCやタブレットでもよい。また、認証モジュール30は、端末20に搭載される態様であってもよいし、端末20に着脱可能に取り付けられていてもよい。
・スマートホンの利用者と、WEBサービスの利用者は同一人物(ユーザU)である。
・スマートホンは画面ロック機能を有しており、スマートホンの利用は画面ロック解除を行ってから可能になる。
・スマートホンの画面ロック解除機能用の認証デバイスと、認証モジュールの認証デバイスは共用利用可能である。
認証システムが実行する処理は、(1)シナリオA 事前設定、(2)シナリオB 初期登録、(3)シナリオC WEBサイトへの登録、(4)シナリオD WEBサイトでの認証、の順で進行し、以下、個別に説明する。
[(1)シナリオA 事前設定]
シナリオAでは、画面ロック解除の設定、および、認証モジュールの設定を行う。
図5に示すように、シナリオAの処理は、ステップA1から開始する。
ステップA1にて、ユーザUが端末20を操作して、画面ロック解除機能26およびOS用アカウント管理機能27に対し、画面ロック解除設定の要求が入力される。
次に、ステップA2にて、OS用アカウント管理機能27は、ユーザUのアカウントを作成する。なお、この段階でのアカウントの作成は、端末20がPCの場合には必須となる。
次に、ステップA3にて、画面ロック解除機能26は、画面ロック解除を設定する。例えば、端末20がスマートホンである場合、画面ロック解除用のクレデンシャル(Credential)として、PINコードやパターンが設定されたり、指紋が登録されたりする。また、端末20がPCである場合、画面ロック解除用のクレデンシャルとしてパスワードが登録される。
次に、ステップA4にて、OS用アカウント管理機能27は、作成したアカウントと、設定または登録した画面ロック解除とを関連付ける。関連付けた情報は、アカウント管理情報28(図1)に格納することができる。
次に、ステップA5にて、画面ロック解除機能26およびOS用アカウント管理機能27は、画面ロック解除設定の応答(OK)をユーザUに向けて出力する。具体的には、画面ロック解除設定が完了したことの画面表示や音声出力がなされる。
次に、ステップA6にて、ユーザUが端末20を操作して、端末側連携認証機能25を介して、FIDOクライアント22および認証モジュールドライバ24に対し、認証モジュール設定の要求が入力される。
次に、ステップA7にて、FIDOクライアント22および認証モジュールドライバ24は、認証モジュール30を介して、ユーザ認証のクレデンシャルの要求をユーザUに向けて出力する。具体的には、クレデンシャルの提示を促す画面表示や音声出力がなされる。
次に、ステップA8にて、ユーザUが端末20を操作して、認証モジュール30に対し、ユーザ認証のクレデンシャルが提示されるように入力される。
次に、ステップA9にて、認証モジュール30は、入力された、ユーザ認証のクレデンシャルを認証判定モジュール31に登録する。クレデンシャルの登録が完了すると、認証モジュール30は、そのクレデンシャルに対応する認証モジュールモデルIDを生成する。
次に、ステップA10にて、認証モジュール30は、FIDOクライアント22および認証モジュールドライバ24に対し、クレデンシャルの登録の完了(OK)を通知するとともに、生成した認証モジュールモデルIDを送信する。
次に、ステップA11にて、FIDOクライアント22および認証モジュールドライバ24は、端末側連携認証機能25を介して、OS用アカウント管理機能27に対し、認証モジュールアサーションキーを要求する。
次に、ステップA12にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内に、端末側認証モジュール毎の対称鍵SYK1を生成する。
次に、ステップA13にて、端末20は、端末20および認証モジュール30間に亘ってECDHE(Diffie-Hellman鍵交換)−ECDSA(Elliptic Curve Digital Signature Algorithm)鍵共有アルゴリズムを実行し、鍵処理保管領域R1に認証モジュールアサーションキーAK1を生成し、OS鍵処理保管領域R2に認証モジュールアサーションキーAK2を生成する。ECDHE−ECDSA鍵共有アルゴリズムを利用すると、端末側連携認証機能25が認証モジュール30側に実装してあっても、セキュアに秘密鍵を共有することができる。ただし、鍵共有アルゴリズムは、RSA(Rivest-Shamir-Adleman)方式などの他の方式であってもよい。また、OS鍵処理保管領域R2で共通鍵(認証モジュールアサーションキーAK1,AK2)を生成して、認証モジュール30の鍵処理保管領域R1に認証モジュールアサーションキーAK1を送付してもよい。
次に、ステップA14にて、OS用アカウント管理機能27は、OSのアカウント管理情報28(図1)に、端末側認証モジュール毎の対称鍵SYK1と、認証モジュールアサーションキーAK2と、認証モジュールモデルIDとを関連付けて保存する。このような保存は、認証モジュールの設定が完了したことを意味する。その結果、端末20の画面ロック解除での認証により、ログインしたアカウントの端末側認証モジュール毎の対称鍵SYK1と認証モジュールアサーションキーAK2とが利用可能となる。
次に、ステップA15にて、OS用アカウント管理機能27は、端末側連携認証機能25、FIDOクライアント22、認証モジュールドライバ24を介して、認証モジュール30の設定の応答(OK)をユーザUに向けて出力する。具体的には、認証モジュール30の設定が完了したことの画面表示や音声出力がなされる。
以上により、シナリオAの処理が完了する。
シナリオAによれば、画面ロック解除の設定、および、認証モジュールの設定を実現することができる。
[(2)シナリオB 初期登録]
シナリオBでは、認証鍵リレー型キーストア40と認証モジュール30間で認証モジュール認証用鍵を持ち合う。
図6に示すように、シナリオBの処理は、ステップB1から開始する。
ステップB1にて、ユーザUが端末20を操作して、画面ロック解除機能26に対し、画面ロック解除の指示が入力される。
次に、ステップB2にて、OS用アカウント管理機能27は、ユーザアカウントに対応したOS鍵処理保管領域R2へのアクセスを許可する。つまり、端末20の画面ロック解除での認証が成功し、ログインしたアカウントの端末側認証モジュール毎の対称鍵SYK1と認証モジュールアサーションキーAK2とが利用可能となる。
次に、ステップB3にて、OS用アカウント管理機能27は、画面ロック解除が成功したこと(OK)をユーザに向けて出力する。具体的には、ユーザアカウントに対応したOS鍵処理保管領域R2へのアクセスが許可されたことを示す画面表示や音声出力がなされる。
次に、ステップB4にて、ユーザUが端末20を操作して、ブラウザ・アプリ21を介して、認証鍵リレー型キーストア40のアカウント管理WEBアプリ43にアクセスする。このアクセスは、例えば、SSL(Secure Sockets Layer)/TSL(Transport Layer Security)接続を利用することができる。なお、前提として、認証鍵リレー型キーストア40が有する(ユーザUの)アカウントは事前に作成してあるとする。認証鍵リレー型キーストア40側でのアカウントの認証は、IDやパスワードなどによる認証を実行することができる。
次に、ステップB5にて、ユーザUが端末20を操作して、アカウント管理WEBアプリ43に対し、認証モジュール登録の要求が入力される。例えば、ブラウザ画面に「認証モジュール登録」ボタンが表示されており、そのボタンが押下されることで入力される。
次に、ステップB6にて、アカウント管理WEBアプリ43は、KS側連携認証機能41に対し、認証モジュール登録の要求(ステップB5でユーザUが入力した要求と同等)を送信する。
次に、ステップB7にて、KS側連携認証機能41は、耐タンパー領域R3内に認証モジュール認証用鍵を生成するように認証鍵リレー型キーストア40に要求する。
次に、ステップB8にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内に認証モジュール認証用鍵、つまり、認証モジュール認証用公開鍵PK3、および、認証モジュール認証用秘密鍵SK3を生成する。
次に、ステップB9にて、認証鍵リレー型キーストア40は、サーバの秘密鍵SK4を用いて、耐タンパー領域R3内で認証モジュール認証用公開鍵PK3に署名する。
次に、ステップB10にて、認証鍵リレー型キーストア40は、署名された認証モジュール認証用公開鍵PK3を耐タンパー領域R3から取り出し、KS側連携認証機能41に送付する。
次に、ステップB11にて、KS側連携認証機能41は、アカウント管理WEBアプリ43に対し、署名された認証モジュール認証用公開鍵PK3を送付する。
次に、ステップB12にて、アカウント管理WEBアプリ43は、ブラウザ・アプリ21を介して、端末側連携認証機能25に対し、署名された認証モジュール認証用公開鍵PK3を送付する。
次に、ステップB13にて、端末側連携認証機能25は、署名された認証モジュール認証用公開鍵PK3の署名を検証する。
仮に、署名が真正(OK)であった場合、ステップB14にて、端末側連携認証機能25は、FIDOクライアント22、認証モジュールドライバ24、および、認証モジュール30を介して、認証の要求をユーザUに向けて出力する。具体的には、クレデンシャルの提示を促す画面表示や音声出力がなされる。
図7に示すように、次に、ステップB15にて、ユーザUが端末20を操作して、認証モジュール30に対し、ユーザ認証のクレデンシャルが提示されるように入力される。
次に、ステップB16にて、認証判定モジュール31は、提示されたクレデンシャルを用いてユーザ認証を検証する、つまり、ユーザUが本人であるか否か判定する。
仮に、ユーザUが本人(OK)であった場合、ステップB17にて、認証判定モジュール31は、メタデータサービス向け秘密鍵SK2を用いて、鍵処理保管領域R1内で認証モジュールモデルID301(図5のステップA10にて生成された認証モジュールモデルIDであり、認証管理情報23(図3(a))が備える認証モジュールモデルID23cに対応する)に署名する。
次に、ステップB18にて、認証判定モジュール31は、アサーション302を生成し、認証モジュールアサーションキーAK1を用いて、鍵処理保管領域R1内で、署名付き認証モジュールモデルID301およびアサーション302を暗号化する。
次に、ステップB19にて、認証モジュール30は、FIDOクライアント22、認証モジュールドライバ24、端末側連携認証機能25を介して、OS用アカウント管理機能27に対し、暗号化された、認証モジュールモデルID301およびアサーション302を送信する。
次に、ステップB20にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、暗号化された、認証モジュールモデルID301およびアサーション302を、認証モジュールアサーションキーAK2で復号し、アサーション検証をする。本実施形態では、アサーションの検証結果は良であったとする。
次に、ステップB21にて、OS用アカウント管理機能27は、端末側連携認証機能25に対し、アサーションの検証結果が良であったこと(認証OK)を通知するとともに、復号化された、署名付き認証モジュールモデルID301を送信する。
次に、ステップB22にて、端末側連携認証機能25は、ブラウザ・アプリ21、および、アカウント管理WEBアプリを介して、KS側連携認証機能41に対し、署名付き認証モジュールモデルID301を送信する。
次に、ステップB23にて、KS側連携認証機能41は、メタデータサービス1を参照し、メタデータサービス向け公開鍵PK2を取得する。
次に、ステップB24にて、KS側連携認証機能41は、メタデータサービス向け公開鍵PK2を用いて、署名付き認証モジュールモデルID301の署名を検証する。
図8に示すように、仮に、署名が真正であった(署名検証OK)場合(ステップB25)、ステップB26にて、KS側連携認証機能41は、アカウント管理WEBアプリ43、および、ブラウザ・アプリ21を介して、端末側連携認証機能25に対し、署名が真正であったこと(OK)を通知する。なお、ステップB26にて、ユーザUに関する情報が、ユーザ管理DB42(図4参照)に登録される。
次に、ステップB27にて、端末側連携認証機能25は、(ステップB13(図6)で署名が真正と判定された)認証モジュール認証用公開鍵PK3をOS鍵処理保管領域R2内に送付する。
次に、ステップB28にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内の認証モジュール認証用公開鍵PK3を、端末側認証モジュール毎の対称鍵SYK1(図5のステップA12参照)を用いて暗号化する。また、OS用アカウント管理機能27は、暗号化した認証モジュール認証用公開鍵PK3を端末側連携認証機能25に送信する。
次に、ステップB29にて、端末側連携認証機能25は、OS用アカウント管理機能27から受信した認証モジュール認証用公開鍵PK3と、KS側連携認証機能41のURLとを、端末20のOSで扱う(ユーザUの)アカウントと関連付けて保存する。これにより、認証モジュール認証用公開鍵PK3が、端末20のロック解除での認証によりログインしたアカウントに関連付けられる。また、このような保存は、認証モジュール30の登録が完了したことを意味する。画面ロック解除と認証鍵リレー型キーストア40へのアクセスに必要な鍵を、画面ロックのアカウントと関連付けることで、認証鍵リレー型キーストア40へのアクセスのための認証を、画面ロック解除によって実行することができる。
次に、ステップB30にて、端末側連携認証機能25は、ブラウザ・アプリ21を介して、アカウント管理WEBアプリ43に対し、認証モジュール30の登録が端末20側で完了したこと(OK)を通知する。アカウント管理WEBアプリ43は、認証モジュール30の登録を反映するようにユーザ管理DB42を更新する。
次に、ステップB31にて、アカウント管理WEBアプリ43は、ブラウザ・アプリ21に対し、認証モジュール30の登録が認証鍵リレー型キーストア40側で完了したことを通知する。その結果、端末20の画面を見ているユーザUは、認証モジュール登録の要求(ステップB5)の応答として、認証モジュール30の登録が完了したことを認識することができる。
一方、仮に、署名が真正でなかった(署名検証NG)場合(ステップB32)、ステップB33にて、KS側連携認証機能41は、アカウント管理WEBアプリ43、および、ブラウザ・アプリ21を介して、端末側連携認証機能25に対し、署名が真正でなかったこと(NG)を通知する。
次に、ステップB34にて、端末側連携認証機能25は、(ステップB13(図6)で署名が真正と判定された)認証モジュール認証用公開鍵PK3を削除する。
次に、ステップB35にて、端末側連携認証機能25は、ブラウザ・アプリ21を介して、アカウント管理WEBアプリ43に対し、認証モジュール認証用公開鍵PK3の削除が端末20側で完了したことを通知する。
次に、ステップB36にて、アカウント管理WEBアプリ43は、ブラウザ・アプリ21に対し、認証モジュール認証用公開鍵PK3の削除が認証鍵リレー型キーストア40側で完了したことを通知する。その結果、端末20の画面を見ているユーザUは、認証モジュール登録の要求(ステップB5)の応答として、認証モジュール30の登録が失敗したことを認識することができる。
以上により、シナリオBの処理が完了する。
シナリオBによれば、認証鍵リレー型キーストア40と認証モジュール30間で認証モジュール認証用鍵を持ち合う(認証鍵リレー型キーストア40が認証モジュール認証用秘密鍵SK3を持ち、認証モジュール30が(暗号化された)認証モジュール認証用公開鍵PK3を持つ)ことができる。
[(3)シナリオC WEBサイトへの登録]
シナリオCでは、認証鍵リレー型キーストア40でWEBサービス認証用秘密鍵SK1を生成し、WEBサービス10側と鍵を共有する。
図9に示すように、シナリオCの処理は、ステップC1から開始する。
ステップC1にて、ユーザUが端末20を操作して、画面ロック解除機能26に対し、画面ロック解除の指示が入力される。
次に、ステップC2にて、OS用アカウント管理機能27は、ユーザアカウントに対応したOS鍵処理保管領域R2へのアクセスを許可する。つまり、認証鍵リレー型キーストア40へのアクセスのための認証が画面ロック解除により完了する。
次に、ステップC3にて、OS用アカウント管理機能27は、画面ロック解除が成功したこと(OK)をユーザに向けて出力する。具体的には、ユーザアカウントに対応したOS鍵処理保管領域R2へのアクセスが許可されたこと、そして、認証鍵リレー型キーストア40へのアクセスが許可されたことを示す画面表示や音声出力がなされる。
次に、ステップC4にて、ユーザUが端末20を操作して、ブラウザ・アプリ21を介して、WEBサービス10のWEBサイトにアクセスし、(新規登録用に)ログインする。なお、FIDO UAF 1.0では、WEBサービス10側で、ユーザUのアカウントは予め作成しておくことになっており、本実施形態でも予め作成してあるとし、WEBサイトでのログインをできるようにする。
次に、ステップC5にて、ユーザUが端末20を操作して、ブラウザ・アプリ21を介して、WEBサービス10に対し、ユーザUのアカウントの認証の方式を、FIDOの認証方式に切り替える要求が入力される。
次に、ステップC6にて、WEBサービス10が、ブラウザ・アプリ21、FIDOクライアント22、および、認証モジュールドライバ24を介して、認証モジュール30に対し、FIDOの登録要求(FIDOの登録に関する要求)を送信する。
次に、ステップC7にて、認証モジュール30が、ユーザ認証の要求をユーザUに向けて出力する。具体的には、ユーザ認証に用いるクレデンシャルの提示を促す画面表示や音声出力がなされる。
次に、ステップC8にて、ユーザUが端末20を操作して、認証モジュール30に対し、ユーザ認証のクレデンシャルが提示されるように入力される。
次に、ステップC9にて、認証判定モジュール31は、入力されたクレデンシャルを用いて、ユーザ認証を検証する、つまり、ユーザUが本人であるか否か判定する。
仮に、ユーザUが本人(OK)であった場合、ステップC10にて、認証判定モジュール31は、アサーション303を生成し、認証モジュールアサーションキーAK1を用いて、鍵処理保管領域R1内で、アサーション303およびFIDO登録要求304(ステップC6の要求に相当)を暗号化する。
次に、ステップC11にて、認証モジュール30は、FIDOクライアント22および認証モジュールドライバ24に対し、暗号化された、アサーション303およびFIDO登録要求304を送信するとともに、WEBサービス認証用鍵の生成要求を送信する。WEBサービス認証用鍵とは、WEBサービス認証用公開鍵PK1およびWEBサービス認証用秘密鍵SK1である。
次に、ステップC12にて、FIDOクライアント22および認証モジュールドライバ24は、端末側連携認証機能25に対し、暗号化された、アサーション303およびFIDO登録要求304を送信するとともに、WEBサービス認証用鍵の生成要求を送信する。
次に、ステップC13にて、端末側連携認証機能25は、OS用アカウント管理機能27に対し、暗号化用の共通鍵の生成要求を送信するとともに、暗号化されたアサーション303(暗号化されたFIDO登録要求304も含む。)、および、(図8のステップB29にて保存されている)暗号化された認証モジュール認証用公開鍵PK3を送信する。
次に、ステップC14にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、暗号化された、アサーション303およびFIDO登録要求304を、認証モジュールアサーションキーAK2で復号し、アサーション検証をする。本実施形態では、アサーションの検証結果は良(OK)であったとする。
図10に示すように、次に、ステップC15にて、OS用アカウント管理機能27は、例えばAES(Advanced Encryption Standard:高度暗号化標準)に従う共通鍵CKを生成する。また、OS用アカウント管理機能27は、Challenge201(チャレンジ)を生成し、共通鍵CKで暗号化する。Challenge201は、周知のチャレンジ/レスポンス認証に用いられるランダムな数値列である。
次に、ステップC16にて、OS用アカウント管理機能27は、暗号化された認証モジュール認証用公開鍵PK3を端末側認証モジュール毎の対称鍵SYK1(図5のステップA12参照)を用いて復号し、復号化した認証モジュール認証用公開鍵PK3を用いて共通鍵CKを暗号化する。
次に、ステップC17にて、OS用アカウント管理機能27は、端末側連携認証機能25を介して、認証鍵リレー型キーストア40のKS側連携認証機能41に、暗号化された共通鍵CKと、暗号化されたChallenge201とを送付し、KS側連携認証機能41が耐タンパー領域R3内に、暗号化された共通鍵CKと、暗号化されたChallenge201を格納する。
次に、ステップC18にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、認証モジュール認証用秘密鍵SK3を用いて、共通鍵CKを復号する。
次に、ステップC19にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、復号化した共通鍵CKを用いて、Challenge201を復号し、Response401を計算する。Response401は、周知のチャレンジ/レスポンス認証に用いられるランダムな数値列である。また、認証鍵リレー型キーストア40は、Response401を共通鍵CKで暗号化する。
次に、ステップC20にて、認証鍵リレー型キーストア40は、KS側連携認証機能41、および、端末20の端末側連携認証機能25を介して、OS用アカウント管理機能27に対し、暗号化されたResponse401を送付する。
次に、ステップC21にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、共通鍵CKを用いて、暗号化されたResponse401を復号し、検証をする。本実施形態では、Response401の検証結果は良(OK)であったとする。
次に、ステップC22にて、OS用アカウント管理機能27は、共通鍵CKを用いて、FIDO登録要求304を暗号化する。
次に、ステップC23にて、OS用アカウント管理機能27は、端末側連携認証機能25を介して、認証鍵リレー型キーストア40のKS側連携認証機能41に、暗号化されたFIDO登録要求304を送付し、KS側連携認証機能41が耐タンパー領域R3内に、暗号化されたFIDO登録要求304を格納する。
次に、ステップC24にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、(ステップC18にて復号化した)共通鍵CKを用いて、暗号化されたFIDO登録要求304を復号する。そして、認証鍵リレー型キーストア40は、FIDO登録要求304の処理を実施し、処理結果としてのFIDO登録応答402を生成する。
次に、ステップC25にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、WEBサービス認証用鍵(ペア)、つまり、WEBサービス認証用公開鍵PK1およびWEBサービス認証用秘密鍵SK1を生成する。
次に、ステップC26にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、共通鍵CKを用いて、FIDO登録応答402およびWEBサービス認証用公開鍵PK1を暗号化する。また、認証鍵リレー型キーストア40のKS側連携認証機能41は、端末20の端末側連携認証機能25を介して、OS用アカウント管理機能27に対し、暗号化された、FIDO登録応答402およびWEBサービス認証用公開鍵PK1を送付する。なお、認証鍵リレー型キーストア40が有する共通鍵CKは、本ステップ完了後に破棄してもよい。
次に、ステップC27にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、共通鍵CKを用いて、暗号化された、FIDO登録応答402およびWEBサービス認証用公開鍵PK1を復号する。なお、端末20が有する共通鍵CKは、本ステップ完了後に破棄してもよい。
図11に示すように、次に、ステップC28にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、FIDO登録応答402およびWEBサービス認証用公開鍵PK1を、認証モジュールアサーションキーAK2で暗号化する。
次に、ステップC29にて、OS用アカウント管理機能27は、端末側連携認証機能25、FIDOクライアント22および認証モジュールドライバ24を介して、認証モジュール30に対し、暗号化された、FIDO登録応答402およびWEBサービス認証用公開鍵PK1を送信する。
次に、ステップC30にて、認証判定モジュール31は、認証モジュールアサーションキーAK1を用いて、鍵処理保管領域R1内で、暗号化された、FIDO登録応答402およびWEBサービス認証用公開鍵PK1を復号する。
次に、ステップC31にて、認証判定モジュール31は、メタデータサービス向け秘密鍵SK2を用いて、鍵処理保管領域R1内で、FIDO登録応答402に署名する。
次に、ステップC32にて、認証モジュール30は、ブラウザ・アプリ21、FIDOクライアント、および、認証モジュールドライバ24を介して、署名付きFIDO登録応答402、および、WEBサービス認証用公開鍵PK1を、WEBサービス10に送信する。
次に、ステップC33にて、WEBサービス10は、メタデータサービス1を参照し、メタデータサービス向け公開鍵PK2を取得する。
次に、ステップC34にて、WEBサービス10は、メタデータサービス向け公開鍵PK2を用いて、署名付きFIDO登録応答402の署名を検証する。
仮に、署名が真正であった(OK)場合、ステップC35にて、WEBサービス10は、WEBサービス認証用公開鍵PK1を、ユーザUのアカウント(図1の符号11)に紐付けて保存する。保存先は、WEBサービス10のFIDOサーバ15の鍵管理領域16(図1参照)である。
次に、ステップC36にて、WEBサービス10は、ブラウザ・アプリ21に対し、FIDOの認証方式への切り替えが完了したことを通知する。その結果、端末20の画面を見ているユーザUは、FIDOの認証方式への切り替えの要求(ステップC5)の応答として、認証方式がFIDOの認証方式に切り替わったことを認識することができる。また、端末20は、ステップC36でのWEBサービス10からの通知に含まれている情報を用いて、ユーザUがWEBサービス10を利用することに関する認証管理情報23(図3(a)参照)を作成し、記憶する。
以上により、シナリオCの処理が完了する。
シナリオCによれば、認証鍵リレー型キーストア40でWEBサービス認証用秘密鍵SK1を生成し、WEBサービス10側と鍵を共有することができる。つまり、WEBサービス認証用秘密鍵SK1は、従来のように、認証モジュール30側にではなく、WEBサービス10側に持たせることができる。その結果、ユーザUの端末20を、WEBサービス10のWEBサイトに登録することができる。
[(4)シナリオD WEBサイトでの認証]
シナリオDでは、認証鍵リレー型キーストア40で保管してあるWEBサービス認証用秘密鍵SK1を利用して、WEBサービス10のWEBサイトにログインする。
図12に示すように、シナリオDの処理は、ステップD1から開始する。
ステップD1にて、ユーザUが端末20を操作して、画面ロック解除機能26に対し、画面ロック解除の指示が入力される。
次に、ステップD2にて、OS用アカウント管理機能27は、ユーザアカウントに対応したOS鍵処理保管領域R2へのアクセスを許可する。つまり、認証鍵リレー型キーストア40へのアクセスのための認証が画面ロック解除により完了する。
次に、ステップD3にて、OS用アカウント管理機能27は、画面ロック解除が成功したこと(OK)をユーザに向けて出力する。具体的には、ユーザアカウントに対応したOS鍵処理保管領域R2へのアクセスが許可されたこと、そして、認証鍵リレー型キーストア40へのアクセスが許可されたことを示す画面表示や音声出力がなされる。
次に、ステップD4にて、ユーザUが端末20を操作して、ブラウザ・アプリ21を介して、WEBサービス10のWEBサイトにアクセスし、ログインを要求する。
次に、ステップD5にて、WEBサービス10が、ブラウザ・アプリ21、FIDOクライアント22、および、認証モジュールドライバ24を介して、認証モジュール30に対し、FIDOの認証要求(FIDOの認証に関する要求)を送信する。
次に、ステップD6にて、認証モジュール30が、ユーザ認証の要求をユーザUに向けて出力する。具体的には、ユーザ認証に用いるクレデンシャルの提示を促す画面表示や音声出力がなされる。
次に、ステップD7にて、ユーザUが端末20を操作して、認証モジュール30に対し、ユーザ認証のクレデンシャルが提示されるように入力される。
次に、ステップD8にて、認証判定モジュール31は、入力されたクレデンシャルを用いて、ユーザ認証を検証する、つまり、ユーザUが本人であるか否か判定する。
仮に、ユーザUが本人(OK)であった場合、ステップD9にて、認証判定モジュール31は、アサーション305を生成し、認証モジュールアサーションキーAK1を用いて、鍵処理保管領域R1内で、アサーション305およびFIDO認証要求306(ステップD5の要求に相当)を暗号化する。
次に、ステップD10にて、認証モジュール30は、FIDOクライアント22および認証モジュールドライバ24に対し、暗号化された、アサーション305およびFIDO認証要求306を送信するとともに、WEBサービス認証用鍵の署名要求を送信する。WEBサービス認証用鍵とは、WEBサービス認証用公開鍵PK1およびWEBサービス認証用秘密鍵SK1である。
次に、ステップD11にて、FIDOクライアント22および認証モジュールドライバ24は、端末側連携認証機能25に対し、暗号化された、アサーション305およびFIDO認証要求306を送信するとともに、WEBサービス認証用鍵の生成要求を送信する。
次に、ステップD12にて、端末側連携認証機能25は、OS用アカウント管理機能27に対し、暗号化用の共通鍵の生成要求を送信するとともに、暗号化されたアサーション303(暗号化されたFIDO認証要求306も含む。)、および、(図8のステップB29にて保存されている)暗号化された認証モジュール認証用公開鍵PK3を送信する。
次に、ステップD13にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、暗号化された、アサーション305およびFIDO認証要求306を、認証モジュールアサーションキーAK2で復号し、アサーション検証をする。本実施形態では、アサーションの検証結果は良(OK)であったとする。
図13に示すように、次に、ステップD14にて、OS用アカウント管理機能27は、例えばAESに従う共通鍵CKを生成する。また、OS用アカウント管理機能27は、Challenge201(チャレンジ)を生成し、共通鍵CKで暗号化する。
次に、ステップD15にて、OS用アカウント管理機能27は、暗号化された認証モジュール認証用公開鍵PK3を端末側認証モジュール毎の対称鍵SYK1(図5のステップA12参照)を用いて復号し、復号化した認証モジュール認証用公開鍵PK3を用いて共通鍵CKを暗号化する。
次に、ステップD16にて、OS用アカウント管理機能27は、端末側連携認証機能25を介して、認証鍵リレー型キーストア40のKS側連携認証機能41に、暗号化された共通鍵CKと、暗号化されたChallenge201とを送付し、KS側連携認証機能41が耐タンパー領域R3内に、暗号化された共通鍵CKと、暗号化されたChallenge201を格納する。
次に、ステップD17にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、認証モジュール認証用秘密鍵SK3を用いて、共通鍵CKを復号する。
次に、ステップD18にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、復号化した共通鍵CKを用いて、Challenge201を復号し、Response401を計算する。また、認証鍵リレー型キーストア40は、Response401を共通鍵CKで暗号化する。
次に、ステップD19にて、認証鍵リレー型キーストア40は、KS側連携認証機能41、および、端末20の端末側連携認証機能25を介して、OS用アカウント管理機能27に対し、暗号化されたResponse401を送付する。
次に、ステップD20にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、共通鍵CKを用いて、暗号化されたResponse401を復号し、検証をする。本実施形態では、Response401の検証結果は良(OK)であったとする。
次に、ステップD21にて、OS用アカウント管理機能27は、共通鍵CKを用いて、FIDO認証要求306を暗号化する。
次に、ステップD22にて、OS用アカウント管理機能27は、端末側連携認証機能25を介して、認証鍵リレー型キーストア40のKS側連携認証機能41に、暗号化されたFIDO認証要求306を送付し、KS側連携認証機能41が耐タンパー領域R3内に、暗号化されたFIDO認証要求306を格納する。
次に、ステップD23にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、(ステップD17にて復号化した)共通鍵CKを用いて、暗号化されたFIDO認証要求306を復号する。そして、認証鍵リレー型キーストア40は、FIDO認証要求306の処理を実施し、処理結果としてのFIDO認証応答403を生成する。
次に、ステップD24にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、WEBサービス認証用秘密鍵SK1を用いて、FIDO認証応答403に署名する。
次に、ステップD25にて、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、共通鍵CKを用いて、FIDO認証応答403を暗号化する。また、図13および図14に示すように、認証鍵リレー型キーストア40のKS側連携認証機能41は、端末20の端末側連携認証機能25を介して、OS用アカウント管理機能27に対し、暗号化されたFIDO認証応答403を送付する。
図14に示すように、次に、ステップD26にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、共通鍵CKを用いて、暗号化されたFIDO認証応答403を復号する。
次に、ステップD27にて、OS用アカウント管理機能27は、OS鍵処理保管領域R2内で、FIDO認証応答403を、認証モジュールアサーションキーAK2で暗号化する。
次に、ステップD28にて、OS用アカウント管理機能27は、端末側連携認証機能25、FIDOクライアント22および認証モジュールドライバ24を介して、認証モジュール30に対し、暗号化されたFIDO認証応答403を送信する。
次に、ステップD29にて、認証判定モジュール31は、認証モジュールアサーションキーAK1を用いて、鍵処理保管領域R1内で、暗号化されたFIDO認証応答403を復号する。
次に、ステップD30にて、認証モジュール30は、ブラウザ・アプリ21、FIDOクライアント、および、認証モジュールドライバ24を介して、署名付きFIDO認証応答403をWEBサービス10に送信する。
次に、ステップD31にて、WEBサービス10は、WEBサービス認証用公開鍵PK1を用いて、署名付きFIDO認証応答403の署名を検証する。
仮に、署名が真正であった(OK)場合、ステップD32にて、WEBサービス10は、ブラウザ・アプリ21に対し、FIDOの認証が完了(OK)し、WEBサイトへのログインが許可された(OK)ことを通知する。その結果、端末20の画面を見ているユーザUは、ユーザ認証の要求(ステップD6)の応答として、FIDOの認証が完了し、WEBサイトへのログインが許可されたことを認識することができる。
以上により、シナリオDの処理が完了する。
シナリオDによれば、認証鍵リレー型キーストア40で保管してあるWEBサービス認証用秘密鍵SK1を利用して、WEBサービス10のWEBサイトにログインすることができる。
[認証鍵リレー型キーストアのセキュリティを高めた構成]
インターネット側では多様な攻撃が考えられ、認証鍵リレー型キーストア40の内部の機能部やアプリケーションが乗っ取られ、不正な操作が行われる可能性がある。例えば、認証鍵リレー型キーストア40の利用者を識別する認証鍵リレー型キーストアのユーザID(42a)は、WEBサービス認証用秘密鍵SK1および認証モジュール認証用秘密鍵SK3と所定の関係を有しているため(図4参照)、この所定の関係を利用するアプリケーションが乗っ取られた場合、不正の書き換えが行われる可能性がある。
このような事情に鑑みて、認証鍵リレー型キーストアのユーザID(42a)と、WEBサービス認証用秘密鍵SK1および認証モジュール認証用秘密鍵SK3との関連付けを、インターネット側ではなく、ローカルネットワーク側で行う。
具体的には、図15(a)に示すように、本実施形態の認証システム100は、インターネット側に配置されている認証鍵リレー型キーストア40(第1のキーストア)と同じ機能を備える認証鍵リレー型キーストア40−1(第2のキーストア)をローカルネットワーク側に配置する。認証鍵リレー型キーストア40−1が備える、KS側連携認証機能41−1、ユーザ管理DB42−1、アカウント管理WEBアプリ43−1、耐タンパー領域R3−1はそれぞれ、認証鍵リレー型キーストア40が備える、KS側連携認証機能41、ユーザ管理DB42、アカウント管理WEBアプリ43、耐タンパー領域R3と同等である。
ローカルネットワークは、例えば、通信会社の通信キャリア網やクレジットカード会社などの厳密な本人確認を求められる事業者が独自に構築したネットワークである。そのようなローカルネットワークは、外部とは隔離されており、外部から不特定多数のアクセスを受け付けない高セキュリティな特性を持っているといえる。
認証鍵リレー型キーストア40−1のアカウント管理WEBアプリ43−1は、端末20の登録、追加、変更、削除の機能を有する。アカウント管理WEBアプリ43−1は、これらの機能を用いて、ユーザIDと認証モジュール認証用鍵のIDとの関連付けや、端末20−認証鍵リレー型キーストア40−1間の鍵の共有を行うことができる。
端末20の初期登録の段階(図6〜図8に示すシナリオB参照)で、認証鍵リレー型キーストア40の代わりに認証鍵リレー型キーストア40−1が、認証鍵リレー型キーストアのユーザID(42a)と、WEBサービス認証用秘密鍵SK1および認証モジュール認証用秘密鍵SK3との関連付けを、暗号化されるように行う。具体的には、図15(b)に示すように、認証鍵リレー型キーストア40−1は、認証鍵リレー型キーストア40−1のユーザ管理DB42−1が管理する情報(図4参照)のうち、認証鍵リレー型キーストアのユーザID(42a)と、認証モジュールモデルID(42b)と、認証モジュール認証用公開鍵のID(42c)と、KS側認証モジュール毎の対称鍵ID(42d)と、認証モジュール認証用秘密鍵のID(42e)を含む部分情報を、耐タンパー領域R3−1内で、認証鍵リレー型キーストア40−1のサーバの秘密鍵SK4を用いて、一体のデータとして暗号化して、ユーザ管理DB42−1に登録しておく。さらに、図15(b)に示すように、暗号化された一体のデータに対して、データ検索用のIDとして、認証鍵リレー型キーストアのユーザID(42a−1)と、認証モジュールモデルID(42b−1)と、認証モジュール認証用公開鍵のID(42c−1)とを付加する。
その後、認証鍵リレー型キーストア40−1のユーザ管理DB42−1と、認証鍵リレー型キーストア40のユーザ管理DB42との間で同期処理を行い、認証鍵リレー型キーストア40のユーザ管理DB42を更新する。その結果、認証鍵リレー型キーストア40のユーザ管理DB42に、暗号化された一体のデータが登録される。
認証鍵リレー型キーストア40は、耐タンパー領域R3内で、サーバの公開鍵PK4を用いて、一体のデータを復号する。また、認証鍵リレー型キーストア40は、認証モジュール認証用秘密鍵SK3を用いて、復号化した一体のデータを検証することで、正しい端末20から送られてきたことを確認することができる。
上記のように、認証鍵リレー型キーストアのユーザID(42a)と、WEBサービス認証用秘密鍵SK1および認証モジュール認証用秘密鍵SK3との関連付けを、高セキュリティのローカルネットワーク側で行う。このため、この関連付けの不正な書き換えを未然に防ぐことができる。また、仮に、認証鍵リレー型キーストア40(インターネット側)で不正な書き換えがなされたとしても、認証鍵リレー型キーストア40−1のユーザ管理DB42−1の情報と照らし合わせることで、不正な書き換えを耐タンパー領域R3内で判定することができるため、結果的には、不正な書き換えを防止することができる。
図16を参照して、一体のデータに関する処理の続きを説明する。図16(a)は、図15(a)と同じである。
認証鍵リレー型キーストア40のアカウント管理WEBアプリ43は、WEBサービス10またはWEBサイトの登録、認証、削除の機能を有する。アカウント管理WEBアプリ43は、これらの機能を用いて、認証鍵リレー型キーストアのユーザIDと、WEBサービス認証用秘密鍵のIDと、WEBサービスのアプリケーションIDとを関係付けたり、秘密鍵SK1,SK3を生成したりする。
端末20のWEBサイトへの登録の段階(図9〜図11に示すシナリオC参照)、または、WEBサイトでの認証の段階(図12〜図14に示すシナリオD参照)で、認証鍵リレー型キーストア40は、耐タンパー領域R3内で、一体のデータを復号した後、復号化した一体のデータに対し、WEBサイトに関する情報を付加してユーザ管理DB42に登録する。具体的には、認証鍵リレー型キーストア40は、復号化した一体のデータを構成する、認証鍵リレー型キーストアのユーザID(42a)と、認証モジュールモデルID(42b)と、認証モジュール認証用公開鍵のID(42c)と、KS側認証モジュール毎の対称鍵ID(42d)と、認証モジュール認証用秘密鍵のID(42e)を含む部分情報に、WEBサービス認証用秘密鍵のID(42f)と、WEBサービスのユーザID(42g)と、WEBサービスのアプリケーションID(42h)とを関連付ける。その結果、ユーザ管理DB42が管理する情報(図4参照)と同じ構造を持つ情報が生成される。また、認証鍵リレー型キーストア40のアカウント管理WEBアプリ43は、生成した情報を用いて秘密鍵SK1の生成(シナリオC)や、秘密鍵SK1を用いた署名(シナリオD)などを行う。
認証鍵リレー型キーストア40のアカウント管理WEBアプリ43は、所定の処理が完了したら、図16(b)に示すように、ユーザ管理DB42が管理する情報(図4参照)と同じ構造を持つ情報を、耐タンパー領域R3内で、認証鍵リレー型キーストア40−1のサーバの秘密鍵SK4を用いて、再度、一体のデータとして暗号化して、暗号化した一体のデータをユーザ管理DB42に出力し、保管する。このとき、暗号化された一体のデータに対して、データ検索用のIDとして、認証鍵リレー型キーストアのユーザID(42a−1)と、認証モジュールモデルID(42b−1)と、認証モジュール認証用公開鍵のID(42c−1)とを付加しておく。
なお、認証鍵リレー型キーストア40のユーザ管理DB42と、認証鍵リレー型キーストア40−1のユーザ管理DB42−1との間で同期処理を行い、認証鍵リレー型キーストア40−1のユーザ管理DB42−1を更新してもよい。
上記のように、認証鍵リレー型キーストア40のユーザ管理DB42が管理する情報を暗号化することで、外部の不正の書き換えを防ぐことができる。
(まとめ)
ユーザ認証を実行する装置(端末20)と、WEBサービス認証用秘密鍵SK1を保有する装置(認証鍵リレー型キーストア40)とを異ならせる場合、ユーザ認証結果とWEBサービス認証用秘密鍵SK1とが当然には関連付いていないため、両者間の処理順序や関係が保証されていない。しかし、本実施形態によれば、端末20側の認証モジュール認証用公開鍵PK3、および、認証鍵リレー型キーストア40側の認証モジュール認証用秘密鍵SK3を用いて、ユーザ認証結果とWEBサービス認証用秘密鍵SK1とを関連付けることで、両者間の処理順序や関係を一意にすることができる。従来は、秘密鍵を利用する際は認証が必要で、認証鍵リレー型キーストア40の認証モジュール認証用秘密鍵SK3とWEBサービス認証用秘密鍵SK1といった2種類の秘密鍵を利用する場合は、秘密鍵の利用ごとにユーザの認証を行い(つまり、ユーザ認証を2回実施し)、各認証で承認を得る必要があるが、本方式では、ユーザの認証から鍵の利用順序を一意にすることが可能であるため、ユーザの認証を1回実施すればよい。その結果、WEBサービス10での認証時におけるユーザの操作量は、従来のFIDOの認証方式のときと同じにすることができる。よって、なりすましや中間者攻撃などの、認証鍵リレー型キーストア40に直接アクセスする不正の操作を見極めて、防止することができ、高セキュリティを実現することができる。
また、鍵の処理が可能な領域が限定されていることから、平文が限定的な領域内でしか扱われないようになり、認証鍵リレー型キーストア40の運用者でも情報の改ざん、盗聴、送受信する情報の不正利用を行うことができず、セキュリティの向上に寄与する。
また、端末20側にWEBサービス認証用秘密鍵SK1が存在しないため、ユーザによる秘密鍵SK1の紛失は起こりえず、WEBサービスの継続利用の中断を回避することができる。
したがって、WEBサービス向けのオンライン認証に用いられる鍵の紛失を回避し、WEBサービス向けのオンライン認証を確実に実行させることができる。
なお、認証システム100に認証鍵リレー型キーストア40を追加しても、端末20とWEBサービス10間のFIDO(UAF)プロトコルに特別な追加や変更を必要としないため、認証システム100に認証鍵リレー型キーストア40を導入することは容易である。
また、本実施形態によれば、画面ロック解除によるユーザ認証の成功が実現したときのみ認証鍵リレー型キーストア40へのアクセスが可能となるような仕組みを導入することができる。よって、外部のアプリケーションなどから認証モジュール認証用公開鍵PK3へのアクセスを制限し、不正な鍵の利用を防止することができ、さらにセキュリティを向上させることができる。
また、本実施形態によれば、保有する情報を厳重に管理しているローカルネットワーク側に配置した認証鍵リレー型キーストア40−1が、端末20のユーザの初期登録を行うため、外部からの機能の乗っ取りなどの不正な操作をさらに困難にすることができ、さらにセキュリティを向上させることができる。
≪その他≫
(1):本実施形態において、WEBサービス10が端末20のユーザを登録する際(図9〜図11に示すシナリオC)、または、WEBサービス10にアクセスしようとする端末のユーザを認証する際(図12〜図13に示すシナリオD)、端末20が認証モジュール認証用公開鍵PK3を有しており、かつ、認証鍵リレー型キーストア40が認証モジュール認証用秘密鍵SK3を有している、という鍵の持ち合いを、端末20と認証鍵リレー型キーストア40との間で確認することができる。その確認の結果、鍵の持ち合いが成立していないとき(公開鍵PK3、秘密鍵SK3の一方または両方が消失しているとき)、WEBサービス10が端末20のユーザを登録する際(シナリオC)、または、WEBサービス10にアクセスしようとする端末のユーザを認証する際(シナリオD)、端末20と認証鍵リレー型キーストア40との間で鍵の持ち合いを成立させる(公開鍵PK3および秘密鍵SK3を復旧させる)処理を実行することができる。端的にいえば、シナリオC,Dの段階で、シナリオBの初期登録(図6〜図8参照)を改めて実行する。
不正の操作を防止するという観点からいえば、WEBサービス10の登録時・認証時には、WEBサービス10向けのユーザ認証に加え、端末20が認証鍵リレー型キーストア40にアクセスするときに認証鍵リレー型キーストア40側でのユーザ認証も行う必要がある。つまり、ユーザ認証を2回行う必要がある。しかし、本実施形態によれば、WEBサービス10でのユーザの登録の段階、または、WEBサービス10にアクセスしようとする端末20のユーザの認証の段階にて、端末20と認証鍵リレー型キーストア40との間で鍵の持ち合いを確実に実現するため、端末20の画面ロック解除が認証鍵リレー型キーストア40側でのユーザ認証を兼ねるようにすることで、鍵の持ち合いの成立後は、WEBサービス10向けのユーザ認証だけで済ませることができ、処理負荷を低減することができる。
(2):なお、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上述文書中や図面中に示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
(3):また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行するためのソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、又は、IC(Integrated Circuit)カード、SD(Secure Digital)カード、光ディスク等の記録媒体に保持することができる。
また、本実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。
その他、ハードウェア、ソフトウェア、フローチャートなどについて、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
100 認証システム
1 メタデータサービス
3 認証モジュールの情報
10 WEBサービス
20 端末
23 認証管理情報
25 端末側連携認証機能
26 画面ロック解除機能
27 OS用アカウント管理機能
28 アカウント管理情報
30 認証モジュール
31 認証判定モジュール
40 認証鍵リレー型キーストア(キーストア:第1のキーストア)
40−1 認証鍵リレー型キーストア(第2のキーストア)
41 KS側連携認証機能
42 ユーザ管理DB
43 アカウント管理WEBアプリ
50 認証局
PK1 WEBサービス認証用公開鍵
SK1 WEBサービス認証用秘密鍵
PK2 メタデータサービス向け公開鍵
SK2 メタデータサービス向け秘密鍵
PK3 認証モジュール認証用公開鍵
SK3 認証モジュール認証用秘密鍵
PK4 サーバの公開鍵
SK4 サーバの秘密鍵

Claims (6)

  1. ユーザ認証を行う認証モジュールを備える端末と、前記端末が利用するWEBサービスと、所定の鍵を保有するキーストアと、が通信可能に接続されている認証システムであって、
    前記WEBサービスは、前記端末が前記WEBサービスにアクセスするための認証に用いられるWEBサービス認証用公開鍵を有しており、
    前記キーストアは、前記WEBサービス認証用公開鍵の対となるWEBサービス認証用秘密鍵、および、前記認証モジュールの認証に用いられる認証モジュール認証用秘密鍵を、耐タンパー領域内に閉じ込めており、
    前記端末は、前記認証モジュール認証用秘密鍵の対となる認証モジュール認証用公開鍵を有しており、
    前記認証モジュール認証用公開鍵および前記認証モジュール認証用秘密鍵を用いて処理される情報を、前記端末と前記キーストアとの間で暗号化して送受信する、
    ことを特徴とする認証システム。
  2. 前記端末に設定された画面ロックが解除されたことによるユーザ認証を、前記キーストアにアクセスするための前記認証モジュール認証用公開鍵を利用する権限を与える認証とする、
    ことを特徴とする請求項1に記載の認証システム。
  3. 前記WEBサービスが前記端末のユーザを登録する際、または、前記WEBサービスにアクセスしようとする前記端末のユーザを認証する際、
    前記端末が前記認証モジュール認証用公開鍵を有しており、かつ、前記キーストアが前記認証モジュール認証用秘密鍵を有している、という鍵の持ち合いを、前記端末と前記キーストアとの間で確認し、
    前記鍵の持ち合いが成立していないとき、前記WEBサービスが前記端末のユーザを登録する際、または、前記WEBサービスにアクセスしようとする前記端末のユーザを認証する際、前記端末と前記キーストアとの間で前記鍵の持ち合いを成立させる処理を実行する、
    ことを特徴とする請求項2に記載の認証システム。
  4. 前記キーストアを第1のキーストアとしてインターネット側に配置し、所定の鍵を保有する第2のキーストアをローカルネットワーク側に配置し、
    前記端末のユーザの初期登録に関する処理を前記第2のキーストアで実行し、前記第2のキーストアで実行したときの処理結果を暗号化して、前記第1のキーストアに送信する、
    ことを特徴とする請求項1から請求項3のいずれか1項に記載の認証システム。
  5. ユーザ認証を行う認証モジュールを備える端末と、前記端末が利用するWEBサービスと、所定の鍵を保有するキーストアと、が通信可能に接続されている認証システムにおける鍵処理連携方法であって、
    前記WEBサービスが、前記端末が前記WEBサービスにアクセスするための認証に用いられるWEBサービス認証用公開鍵を有し、前記キーストアが、前記WEBサービス認証用公開鍵の対となるWEBサービス認証用秘密鍵を耐タンパー領域内に閉じ込める、という態様において、
    前記キーストアが、
    前記認証モジュールの認証に用いられる、認証モジュール認証用秘密鍵および認証モジュール認証用公開鍵を生成し、前記認証モジュール認証用公開鍵を前記端末に送信するステップと、
    前記認証モジュール認証用公開鍵および前記認証モジュール認証用秘密鍵を用いて処理される情報を、前記端末と前記キーストアとの間で暗号化して送受信するステップ、とを実行する、
    ことを特徴とする鍵処理連携方法。
  6. ユーザ認証を行う認証モジュールを備える端末と、前記端末が利用するWEBサービスと、所定の鍵を保有するキーストアと、が通信可能に接続されている認証システムの前記キーストアとしてのコンピュータを、
    前記WEBサービスが、前記端末が前記WEBサービスにアクセスするための認証に用いられるWEBサービス認証用公開鍵を有し、前記キーストアが、前記WEBサービス認証用公開鍵の対となるWEBサービス認証用秘密鍵を耐タンパー領域内に閉じ込める、という態様において、
    前記認証モジュールの認証に用いられる、認証モジュール認証用秘密鍵および認証モジュール認証用公開鍵を生成し、前記認証モジュール認証用公開鍵を前記端末に送信する手段と、
    前記認証モジュール認証用公開鍵および前記認証モジュール認証用秘密鍵を用いて処理される情報を、前記端末と前記キーストアとの間で暗号化して送受信する手段、
    として機能させるための鍵処理連携プログラム。
JP2016032659A 2016-02-24 2016-02-24 認証システム、鍵処理連携方法、および、鍵処理連携プログラム Active JP6438901B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016032659A JP6438901B2 (ja) 2016-02-24 2016-02-24 認証システム、鍵処理連携方法、および、鍵処理連携プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016032659A JP6438901B2 (ja) 2016-02-24 2016-02-24 認証システム、鍵処理連携方法、および、鍵処理連携プログラム

Publications (2)

Publication Number Publication Date
JP2017152880A true JP2017152880A (ja) 2017-08-31
JP6438901B2 JP6438901B2 (ja) 2018-12-19

Family

ID=59739767

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016032659A Active JP6438901B2 (ja) 2016-02-24 2016-02-24 認証システム、鍵処理連携方法、および、鍵処理連携プログラム

Country Status (1)

Country Link
JP (1) JP6438901B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3490220A1 (en) * 2017-11-22 2019-05-29 Canon Kabushiki Kaisha Information processing apparatus
JP2021504860A (ja) * 2017-11-27 2021-02-15 ノック ノック ラブズ, インコーポレイテッド トランザクション確認及び暗号通貨のためのセキュアな鍵記憶装置の拡張
US11563738B2 (en) 2019-09-10 2023-01-24 Fujitsu Limited Control method and information processing apparatus
US11792024B2 (en) 2019-03-29 2023-10-17 Nok Nok Labs, Inc. System and method for efficient challenge-response authentication
US11831409B2 (en) 2018-01-12 2023-11-28 Nok Nok Labs, Inc. System and method for binding verifiable claims
US11909892B2 (en) 2018-12-12 2024-02-20 Nec Corporation Authentication system, client, and server
US11929997B2 (en) 2013-03-22 2024-03-12 Nok Nok Labs, Inc. Advanced authentication techniques and applications
KR102654886B1 (ko) 2017-11-27 2024-04-04 노크 노크 랩스, 인코포레이티드 트랜잭션 확인 및 암호화폐를 위한 보안 키 저장소의 확장

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004032311A (ja) * 2002-06-25 2004-01-29 Nec Corp Pki対応の証明書確認処理方法及びその装置、並びにpki対応の証明書確認処理プログラム
US20140258712A1 (en) * 2012-06-25 2014-09-11 At&T Intellectual Property I, L.P. Secure Socket Layer Keystore and Truststore Generation
US20140335827A1 (en) * 2011-02-16 2014-11-13 Sony Mobile Communications Inc. Display processing apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004032311A (ja) * 2002-06-25 2004-01-29 Nec Corp Pki対応の証明書確認処理方法及びその装置、並びにpki対応の証明書確認処理プログラム
US20140335827A1 (en) * 2011-02-16 2014-11-13 Sony Mobile Communications Inc. Display processing apparatus
US20140258712A1 (en) * 2012-06-25 2014-09-11 At&T Intellectual Property I, L.P. Secure Socket Layer Keystore and Truststore Generation

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
中谷 裕一 ほか: "運用性とコストを考慮したセキュアなユーザ認証方式の提案", 電子情報通信学会2015年総合大会講演論文集 通信2, vol. B−7−86, JPN6018044005, 24 February 2015 (2015-02-24), JP, pages 236, ISSN: 0003915558 *
植田 広樹 ほか: "鍵管理システム −PKIの容易な適用に向けて−", NTT R&D, vol. 第49巻 第11号, JPN6009040946, 10 November 2000 (2000-11-10), JP, pages 668 - 677, ISSN: 0003915559 *
緒方 祐介 ほか: "WEBサービス向けの鍵による認証における鍵の管理に関する考察", 電子情報通信学会2015年総合大会講演論文集 通信2, vol. BS−4−4, JPN6018044004, 24 February 2015 (2015-02-24), JP, pages 127, ISSN: 0003915557 *
緒方 祐介 ほか: "公開鍵秘密鍵を用いた認証方式に関するセキュリティ、利便性、運用性における一考察", 電子情報通信学会技術研究報告, vol. 115, no. 252, JPN6017016807, 8 October 2015 (2015-10-08), JP, pages 13 - 18, ISSN: 0003915556 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11929997B2 (en) 2013-03-22 2024-03-12 Nok Nok Labs, Inc. Advanced authentication techniques and applications
EP3490220A1 (en) * 2017-11-22 2019-05-29 Canon Kabushiki Kaisha Information processing apparatus
KR20190059219A (ko) * 2017-11-22 2019-05-30 캐논 가부시끼가이샤 정보 처리 장치, 정보 처리 장치를 위한 방법, 및 프로그램 기억 매체
US11093602B2 (en) 2017-11-22 2021-08-17 Canon Kabushiki Kaisha Information processing apparatus, method for information processing apparatus, and program storage medium
KR102393024B1 (ko) * 2017-11-22 2022-05-02 캐논 가부시끼가이샤 정보 처리 장치, 정보 처리 장치를 위한 방법, 및 프로그램 기억 매체
US11868995B2 (en) 2017-11-27 2024-01-09 Nok Nok Labs, Inc. Extending a secure key storage for transaction confirmation and cryptocurrency
JP7391860B2 (ja) 2017-11-27 2023-12-05 ノック ノック ラブズ, インコーポレイテッド トランザクション確認及び暗号通貨のためのセキュアな鍵記憶装置の拡張
JP2021504860A (ja) * 2017-11-27 2021-02-15 ノック ノック ラブズ, インコーポレイテッド トランザクション確認及び暗号通貨のためのセキュアな鍵記憶装置の拡張
KR102654886B1 (ko) 2017-11-27 2024-04-04 노크 노크 랩스, 인코포레이티드 트랜잭션 확인 및 암호화폐를 위한 보안 키 저장소의 확장
US11831409B2 (en) 2018-01-12 2023-11-28 Nok Nok Labs, Inc. System and method for binding verifiable claims
US11909892B2 (en) 2018-12-12 2024-02-20 Nec Corporation Authentication system, client, and server
US11792024B2 (en) 2019-03-29 2023-10-17 Nok Nok Labs, Inc. System and method for efficient challenge-response authentication
US11563738B2 (en) 2019-09-10 2023-01-24 Fujitsu Limited Control method and information processing apparatus

Also Published As

Publication number Publication date
JP6438901B2 (ja) 2018-12-19

Similar Documents

Publication Publication Date Title
JP6586446B2 (ja) 通信端末および関連システムのユーザーの識別情報を確認するための方法
US20190140844A1 (en) Identity-linked authentication through a user certificate system
JP6438901B2 (ja) 認証システム、鍵処理連携方法、および、鍵処理連携プログラム
US20190173873A1 (en) Identity verification document request handling utilizing a user certificate system and user identity document repository
KR102202547B1 (ko) 액세스 요청을 검증하기 위한 방법 및 시스템
CN110990827A (zh) 一种身份信息验证方法、服务器及存储介质
CN106453361B (zh) 一种网络信息的安全保护方法及系统
KR20110057128A (ko) 휴대용 장치 연결
US8397281B2 (en) Service assisted secret provisioning
US11424915B2 (en) Terminal registration system and terminal registration method with reduced number of communication operations
CN109716725B (zh) 数据安全系统及其操作方法和计算机可读存储介质
US11722303B2 (en) Secure enclave implementation of proxied cryptographic keys
EP3766267A1 (en) Trust extension in a secure communication framework
US20140250499A1 (en) Password based security method, systems and devices
US20240039707A1 (en) Mobile authenticator for performing a role in user authentication
CN112733129A (zh) 一种服务器带外管理的可信接入方法
CN115473655B (zh) 接入网络的终端认证方法、装置及存储介质
KR101996317B1 (ko) 인증변수를 이용한 블록체인 기반의 사용자 인증 시스템 및 그 방법
KR102053993B1 (ko) 인증서를 이용한 사용자 인증 방법
KR101619928B1 (ko) 이동단말기의 원격제어시스템
KR102288445B1 (ko) 단체용 인증모듈의 온보딩 방법, 장치 및 프로그램
CA3172049A1 (en) Exporting remote cryptographic keys
KR102288444B1 (ko) 인증모듈의 펌웨어 업데이트 방법, 장치 및 프로그램
JP2013073627A (ja) Pcアクセス制御方法、それを含むモジュール、サーバ、及びシステム
TWI778319B (zh) 跨平台授權存取資源方法及授權存取系統

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181018

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: 20181113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181119

R150 Certificate of patent or registration of utility model

Ref document number: 6438901

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150