(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-11
(45)【発行日】2022-07-20
(54)【発明の名称】複数の端末においてユーザを認証するコンピュータ実装方法、コンピュータ・システム、およびコンピュータ・プログラム
(51)【国際特許分類】
G06F 21/32 20130101AFI20220712BHJP
【FI】
G06F21/32
(21)【出願番号】P 2020528114
(86)(22)【出願日】2018-11-21
(86)【国際出願番号】 IB2018059157
(87)【国際公開番号】W WO2019102362
(87)【国際公開日】2019-05-31
【審査請求日】2021-04-23
(32)【優先日】2017-11-22
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521555742
【氏名又は名称】キンドリル・インク
【氏名又は名称原語表記】Kyndryl Inc.
【住所又は居所原語表記】One Vanderbilt Avenue,15th Floor,New York,New York 10017,USA
(74)【代理人】
【識別番号】110000420
【氏名又は名称】特許業務法人エム・アイ・ピー
(72)【発明者】
【氏名】菅原 雅也
(72)【発明者】
【氏名】▲柳▼澤 貴
【審査官】平井 誠
(56)【参考文献】
【文献】特開2010-170439(JP,A)
【文献】特開2010-020488(JP,A)
【文献】特開平10-312361(JP,A)
【文献】特開2011-227818(JP,A)
【文献】特開2009-151711(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/32
(57)【特許請求の範囲】
【請求項1】
複数の端末においてユーザを認証する方法であって、前記複数の端末に接続されたコンピュータによって、
a)前記ユーザからのバイオメトリック入力を含み、対象端末上で認証を開始するユーザ入力を受け付けるステップと、
b)前記対象端末に対して前記コンピュータが最後に認証したのと同じユーザが前記対象端末上で認証を開始しているものと、前記ユーザから受け付けられた前記バイオメトリック入力が示すかを判定するステップと、
c)前記ユーザが、前記対象端末に対して前記コンピュータが最後に認証したのと同じユーザである場合、前記コンピュータが、前記ユーザの1:1型認証を実行するステップと、
d)前記ユーザが、前記対象端末に対して前記コンピュータが最後に認証したのと同じユーザでない場合、前記コンピュータが、
i)現在の時間スロットにおいて、前記対象端末の認証優先度テーブルからエントリを読み出すことと、
ii)認証結果テーブルに基づいて、前記対象端末以外の端末上での認証ステータスを読み込むことと、
iii)各端末のユーザの優先度情報、時間、端末情報、および前記認証結果テーブルに基づく端末でのユーザのマスキングを含む仮認証優先度テーブルを生成することであり、前記マスキングが、端末においてログ・イン済みであり、前記対象端末で前記認証を現在開始しているユーザではない各ユーザのものである、生成することと、
iv)前記仮認証優先度テーブルを用いて、前記ユーザの1:N型認証を実行することと、
v)前記1:N型認証が受け入れられたかを判定することと、
vi)前記1:N型認証が受け入れられた場合、前記コンピュータが、前記ユーザの前記対象端末へのアクセスを許可するとともに、
認証結果を前記認証結果テーブルに格納することと、
を行うステップと、
を含む、方法。
【請求項2】
前記認証優先度テーブルの認証優先度が、
前記コンピュータが、
前記認証結果を格納する前記認証結果テーブルに基づいて時間スロット当たり端末使用率を計算し、端末使用率テーブルとして格納するステップと、
前記コンピュータが、端末関係を計算し、端末関係テーブルとして格納するステップと、
前記コンピュータが、前記端末関係テーブル、前記端末使用率テーブル、および前記認証結果に基づいて前記認証優先度を計算し、前記認証優先度を前記認証優先度テーブルに格納するステップと、
によって判定される、請求項1に記載の方法。
【請求項3】
前記時間スロット当たり端末使用率が、前記端末の時間スロット内にユーザが前記端末にログ・インした回数および時間スロット中の前記端末の使用割合の関連性指数に基づく、請求項2に記載の方法。
【請求項4】
前記認証優先度が、ユーザが所与の時間スロットに対して前記対象端末を使用している尤度である、請求項2または3に記載の方法。
【請求項5】
1:
N型認証が拒絶された場合、現在の時間スロットにおいて、前記対象端末の認証優先度テーブルからエントリを読み出す前記ステップd)i)に戻る、請求項1ないし4のいずれかに記載の方法。
【請求項6】
前記認証優先度のリストが、端末に対するユーザの過去の認証ステータスに基づく、請求項
2に記載の方法。
【請求項7】
前記仮認証優先度テーブルが、メモリに格納され、前記認証優先度テーブルが、リポジトリに格納される、請求項1ないし6のいずれかに記載の方法。
【請求項8】
複数の端末においてユーザを認証するコンピュータ・システムであって、少なくとも1つのプロセッサと、1つまたは複数のメモリと、プログラム命令を有する1つまたは複数のコンピュータ可読記憶媒体とを備えたコンピュータを備え、前記プログラム命令が、
a)前記コンピュータにより、前記ユーザからのバイオメトリック入力を含み、対象端末上で認証を開始するユーザ入力を受け付けるステップと、
b)前記コンピュータにより、前記対象端末に対して前記コンピュータが最後に認証したのと同じユーザが前記対象端末上で認証を開始しているものと、前記ユーザから受け付けられた前記バイオメトリック入力が示すかを判定するステップと、
c)前記ユーザが、前記対象端末に対して前記コンピュータが最後に認証したのと同じユーザである場合、前記コンピュータにより、前記ユーザの1:1型認証を実行するステップと、
d)前記ユーザが、前記対象端末に対して前記コンピュータが最後に認証したのと同じユーザでない場合、前記コンピュータが、
i)現在の時間スロットにおいて、前記対象端末の認証優先度テーブルからエントリを読み出すことと、
ii)認証結果テーブルに基づいて、前記対象端末以外の端末上での認証ステータスを読み込むことと、
iii)各端末のユーザの優先度情報、時間、端末情報、および前記認証結果テーブルに基づく端末でのユーザのマスキングを含む仮認証優先度テーブルを生成することであり、前記マスキングが、端末においてログ・イン済みであり、前記対象端末で前記認証を現在開始しているユーザではない各ユーザのものである、生成することと、
iv)前記仮認証優先度テーブルを用いて、前記ユーザの1:N型認証を実行することと、
v)前記1:N型認証が受け入れられたかを判定することと、
vi)前記1:N型認証が受け入れられた場合、前記コンピュータが、前記ユーザの前記対象端末へのアクセスを許可するとともに、
認証結果を前記認証結果テーブルに格納することと、
を行うステップと、
を行うように前記コンピュータにより実行可能である、コンピュータ・システム。
【請求項9】
前記認証優先度テーブルの認証優先度が、
前記コンピュータにより、
前記認証結果を格納する前記認証結果テーブルに基づいて時間スロット当たり端末使用率を計算し、端末使用率テーブルとして格納するステップと、
前記コンピュータにより、端末関係を計算し、端末関係テーブルとして格納するステップと、
前記コンピュータにより、前記端末関係テーブル、前記端末使用率テーブル、および前記認証結果に基づいて前記認証優先度を計算し、前記認証優先度を前記認証優先度テーブルに格納するステップと、
を含む前記プログラム命令によって判定される、請求項8に記載のコンピュータ・システム。
【請求項10】
前記時間スロット当たり端末使用率が、前記端末の時間スロット内にユーザが前記端末にログ・インした回数および時間スロット中の前記端末の使用割合の関連性指数に基づく、請求項9に記載のコンピュータ・システム。
【請求項11】
前記認証優先度が、ユーザが所与の時間スロットに対して前記対象端末を使用している尤度である、請求項9または10に記載のコンピュータ・システム
【請求項12】
前記1:N
型認証が拒絶された場合、現在の時間スロットにおいて、前記対象端末の認証優先度テーブルからエントリを読み出す前記d)i)に戻る、請求項8ないし11のいずれかに記載のコンピュータ・システム。
【請求項13】
前記認証優先度のリストが、端末に対するユーザの過去の認証ステータスに基づく、請求項
9に記載のコンピュータ・システム。
【請求項14】
前記仮認証
優先度テーブルが、メモリに格納され、前記認証優先度テーブルが、リポジトリに格納される、請求項
9に記載のコンピュータ・システム。
【請求項15】
コンピュータに接続された複数の端末においてユーザを認証するコンピュータ・プログラムであって、前記コンピュータに、請求項1ないし7のいずれかに記載の方法を実行させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、端末のユーザ使用の分布を利用して、ITシステムにおけるバイオメトリック情報に基づくシステム認証処理を動的に最適化することにより、認証処理の性能向上を実現する認証システムを対象とする。
【背景技術】
【0002】
ITシステムにおけるバイオメトリック情報に基づく先行技術の認証では通常、当技術分野において既知の指紋、網膜パターン、または他の特性等のユーザ固有の何らかの特性に基づく認証によって、ユーザID等のユーザの識別情報のパスワード・ベースの認証を置き換える。これら固有の特性は一般的に、「バイオメトリクス」と称する。これに関連して、認証処理は、いわゆる「1:1認証」の形態を取り、認証プロセスにおいて、ユーザのバイオメトリック・データが同じ1人のユーザの登録データと比較される。
【0003】
ITシステムに対する高レベルのセキュリティの要求が増している近年の傾向から、バイオメトリック認証においては、高精度の認証が重要である。
【0004】
ただし、この種の高精度認証、バイオメトリック認証では、システムCPUの動作用電力費も必要となり、認証時間が長くなる場合もある。バイオメトリック認証では、異なるデータ間で入力とデータとの比較が必要となるため、このようなプロセスの計算負荷が高く、認証時間が長くなる。
【0005】
いくつかの環境においては、多くのユーザが1つの端末を共用する場合もある。たとえば、2人以上のレジ係または航空会社係員がスーパーマーケットのレジまたは空港のチェックイン端末を使用する場合もある。
【0006】
このような共用環境におけるユーザの識別は、各ユーザが端末を離れる際にサイン・アウトさせ、新たな各ユーザの端末使用前にサイン・インを要求することによって行うことも可能である。各ユーザがバイオメトリック認証に先立ってそれぞれのIDを入力する必要がある場合、この種の認証は、「1:1型認証」と称する。この場合は、指定のデータ間の照合によって認証がなされ、負荷トランザクションが一定となる。
【0007】
顧客の列を動かし続けようとしてレジ係または航空会社係員等が何回も1つの端末をやり取りし得る共用端末環境においては、ユーザに頻繁なログ・インおよびログ・アウトを求めることが問題となり得る。この場合は、各ユーザにログ・オンおよびログ・オフさせるのではなく、端末にログ・インするための1つの共通アカウント(単一ユーザ向けではない)を使用して、ログ・オン済みの端末の使用を開始する場合に各ユーザのバイオメトリック認証を利用するのが望ましい。このような環境における任意の端末の潜在的な登録ユーザ数は、数百に及んで、全員が1つの共通アカウントを使用することになる場合もある。共通アカウントでのユーザの認証の実行は、「1:N型認証」と称し、1つのアカウントが「N」人の潜在的なユーザを有する。
【0008】
ユーザに由来するバイオメトリック・データに依拠した認証の本質によれば、従来のユーザIDベースのログ・オンおよびログ・オフを単に各ユーザに求める以上に性能を向上させる場合は、ニーズを迅速に遂行することになることを諒解されたい。さらに、このプロセスは、標準的な1:1認証よりもシステムが高負荷の状態で実行する必要があり、当然のことながら必然的に、所要プロセスに遅延が生じる。
【0009】
この種の使用では、高速認証が必要となるため、バイオメトリック認証を用いた高速処理が求められている。
【0010】
既存の多くの方式では、さまざまな手法によって、1:N認証の加速を実現している。以下の説明においては、1:N認証加速手法を対象とする既存の発明を、本発明に関連するものと、本発明にほとんど関連しないものまたはまったく関連しないものと、に分類する。これら既存のシステムは、以下の分類に含まれ得る。
【0011】
認証ロジックに基づく加速:複数の認証プロセスを実行する並列認証処理による加速、代表データの生成による多段階認証等。並列処理における認証加速は、認証と関連付けられたシステム全体の負荷の低減を意図したものではない。代表データによる加速では、ユーザ認証プロセスおよびタスクの不均等分布を考慮しない。代表データの生成可否は、ユーザのバイオメトリック認証に見られるバリエーションによって決まる。
【0012】
バイオメトリック認証データと関連する技術:複数のエンティティ間のバイオメトリック認証精度の向上を主目的としたバイオメトリック認証データの精度向上および付加的な情報の提供と関連付けられた特徴。この主目的は、認証加速そのものではなく、1:N認証の実行時の認証精度の向上である。
【0013】
一意の情報によるデータ範囲の縮減:サービスに用いられる端末のサービスおよび端末IDの使用による各ユーザの動作プロセスおよびタスクの内容による認証データの範囲の縮減による加速。サービスを用いた端末ごとの各ユーザの加速およびスクリーニングの方式は、加速方式としては十分ではない。複数の共用端末で共通アカウントが使用される今回想定の環境では、一意の端末という概念そのものの制約をユーザが意識的に考慮することがないためである。
【0014】
類似性による最適化:取得されたバイオメトリック情報の類似性に基づくスコアの計算によって、認証の中断および加速を実現する。類似性の使用は、ユーザが保持するバイオメトリック情報によって決まる加速の方式であり、多用途ではあるが、この場合の状況に有意な効果を一切伴わない。
【0015】
既存の各発明の方式の例示的な既存事例および問題としては、以下が挙げられる。
【0016】
1:1認証と1:N認証との切り替えによる認証加速:この方法は、1:1認証および1:N認証のプロセス間の区別および切り替えによる加速方式を対象とする。1:1認証と1:N認証との切り替えによる既存の加速方式は、1:1認証を使用する条件としてユーザが入力する認証対象のIDの入力の有無を判定する判定条件下で実現される。加速を実現すべき環境においては、ユーザが共通アカウントを用いてアクセスを行うものと仮定する。
【0017】
グループ化による加速:グループ化による加速手法は、認証対象の多くのデータのグループ化の実行によって加速を実現し、認証等の順序の優先度を管理する方式である。この手法は、以下のように特性化可能である。
【0018】
A)認証に成功した情報のリストの生成のみによる後続認証ラウンドでの探索対象データの範囲の縮減に用いられる。これは、1:N認証の対象となるすべてのユーザが日常的に認証を実行することを前提とする共通アカウントのマルチ・ユーザ環境において問題となり、この原理における加速のためのスクリーニングに際して、成功した認証の結果を単に使用することはできない。
【0019】
B)認証登録時に所定のグループ化を実行する。対象環境は、グループ化ユーザ間の別途加速が必要な環境である。したがって、認証登録時のソートによる加速では、対象環境における加速として十分ではない。
【0020】
C)グループ化データの再構成と関連する方式。これは、グループ・データの構成の最適化の維持と関連付けられた方式であり、対象グループが実質的に固定された環境に対する寄与は大きくない。
【0021】
D)グループ化における特性データによるスクリーニングと関連する方式。顔認証等におけるバイオメトリック認証データの特徴の有意なバリエーションには有効であるが、指静脈認証等における効果は限定的である。
【0022】
1:N認証における同じ人物の認証データのグループ化によって、効率化を促進する。同じ人物の認証データの増大に寄与するものの、グループ・データの増大の効果は限定的である。
【0023】
先行技術の発明によりそれぞれ対処される問題に応じて、グループ化および1:N切り替えによる加速の手法ならびに他の関連する手法が豊富に存在する。
【発明の概要】
【発明が解決しようとする課題】
【0024】
ただし、これら既存の特許公報は、適用対象の特定の問題に依存することが多く、すべての考え得る事例を網羅する多用途の解決手段を必ずしも提供しない。したがって、当技術分野においては、前述の問題への対処が求められている。
【課題を解決するための手段】
【0025】
第1の態様によれば、本発明は、複数の端末においてユーザを認証するコンピュータ実装方法であって、a)コンピュータが、ユーザからのバイオメトリック入力を含み、対象端末上で認証を開始するユーザ入力を受け付けるステップと、b)コンピュータが、対象端末に対してコンピュータが最後に認証したのと同じユーザが対象端末上で認証を開始しているものと、ユーザから受け付けられたバイオメトリック入力が示すかを判定するステップと、c)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザである場合、コンピュータが、ユーザの1:1型認証を実行するステップと、d)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザでない場合、コンピュータが、i)現在の時間スロットにおいて、対象端末の認証優先度テーブルからエントリを読み出すことと、ii)認証結果テーブルに基づいて、対象端末以外の端末上での認証ステータスを読み込むことと、iii)各端末のユーザの優先度情報、時間、端末情報、および認証結果テーブルに基づく端末でのユーザのマスキングを含む仮認証優先度テーブルを生成することであり、マスキングが、端末においてログ・イン済みであり、対象端末で認証を現在開始しているユーザではない各ユーザのものである、生成することと、iv)仮認証テーブルを用いて、ユーザの1:N型認証を実行することと、v)1:N型認証が受け入れられたかを判定することと、vi)1:N型認証が受け入れられた場合、コンピュータが、ユーザの対象端末へのアクセスを許可するとともに、認証結果を認証結果テーブルに格納することと、を行うステップと、を含む、コンピュータ実装方法を提供する。
【0026】
別の態様によれば、本発明は、複数の端末においてユーザを認証するコンピュータ・システムであって、少なくとも1つのプロセッサと、1つまたは複数のメモリと、プログラム命令を有する1つまたは複数のコンピュータ可読記憶媒体とを備えたコンピュータを備え、プログラム命令が、a)コンピュータにより、ユーザからのバイオメトリック入力を含み、対象端末上で認証を開始するユーザ入力を受け付けるステップと、b)コンピュータにより、対象端末に対してコンピュータが最後に認証したのと同じユーザが対象端末上で認証を開始しているものと、ユーザから受け付けられたバイオメトリック入力が示すかを判定するステップと、c)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザである場合、コンピュータにより、ユーザの1:1型認証を実行するステップと、d)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザでない場合、コンピュータが、i)現在の時間スロットにおいて、対象端末の認証優先度テーブルからエントリを読み出すことと、ii)認証結果テーブルに基づいて、対象端末以外の端末上での認証ステータスを読み込むことと、iii)各端末のユーザの優先度情報、時間、端末情報、および認証結果テーブルに基づく端末でのユーザのマスキングを含む仮認証優先度テーブルを生成することであり、マスキングが、端末においてログ・イン済みであり、対象端末で認証を現在開始しているユーザではない各ユーザのものである、生成することと、iv)仮認証テーブルを用いて、ユーザの1:N型認証を実行することと、v)1:N型認証が受け入れられたかを判定することと、vi)1:N型認証が受け入れられた場合、コンピュータが、ユーザの対象端末へのアクセスを許可するとともに、認証結果を認証結果テーブルに格納することと、を行うステップと、を行うようにコンピュータにより実行可能である、コンピュータ・システムを提供する。
【0027】
別の態様によれば、本発明は、複数の端末においてユーザを認証するコンピュータ・プログラム製品であって、処理回路により読み出し可能で、処理回路により実行されて、本発明の各ステップを実行する方法を実行する命令を格納したコンピュータ可読記憶媒体を備えた、コンピュータ・プログラム製品を提供する。
【0028】
別の態様によれば、本発明は、コンピュータ可読媒体に格納され、デジタル・コンピュータの内部メモリにロード可能なコンピュータ・プログラムであって、コンピュータ上で実行された場合に、本発明の各ステップを実行するソフトウェア・コード部を含む、コンピュータ・プログラムを提供する。
【0029】
本発明の一実施形態によれば、複数の端末においてユーザを認証する方法が開示される。この方法は、a)コンピュータが、ユーザからのバイオメトリック入力を含み、対象端末上で認証を開始するユーザ入力を受け付けるステップと、b)コンピュータが、対象端末に対してコンピュータが最後に認証したのと同じユーザが対象端末上で認証を開始しているものと、ユーザから受け付けられたバイオメトリック入力が示すかを判定するステップと、c)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザである場合、コンピュータが、ユーザの1:1型認証を実行するステップと、d)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザでない場合、コンピュータが、i)現在の時間スロットにおいて、対象端末の認証優先度テーブルからエントリを読み出すことと、ii)認証結果テーブルに基づいて、対象端末以外の端末上での認証ステータスを読み込むことと、iii)各端末のユーザの優先度情報、時間、端末情報、および認証結果テーブルに基づく端末でのユーザのマスキングを含む仮認証優先度テーブルを生成することであり、マスキングが、端末においてログ・イン済みであり、対象端末で認証を現在開始しているユーザではない各ユーザのものである、生成することと、iv)仮認証テーブルを用いて、ユーザの1:N型認証を実行することと、v)1:N型認証が受け入れられたかを判定することと、vi)1:N型認証が受け入れられた場合、コンピュータが、ユーザの対象端末へのアクセスを許可するとともに、認証結果を認証結果テーブルに格納することと、を行うステップと、を含む。
【0030】
本発明の別の実施形態によれば、複数の端末においてユーザを認証するコンピュータ・プログラム製品が開示される。このコンピュータ・プログラム製品は、少なくとも1つのプロセッサ、1つまたは複数のメモリ、1つまたは複数のコンピュータ可読記憶媒体を備えたコンピュータを使用する。このコンピュータ・プログラム製品は、プログラム命令が具現化されたコンピュータ可読記憶媒体を備える。このプログラム命令は、a)コンピュータにより、ユーザからのバイオメトリック入力を含み、対象端末上で認証を開始するユーザ入力を受け付けるステップと、b)コンピュータにより、対象端末に対してコンピュータが最後に認証したのと同じユーザが対象端末上で認証を開始しているものと、ユーザから受け付けられたバイオメトリック入力が示すかを判定するステップと、c)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザである場合、コンピュータにより、ユーザの1:1型認証を実行するステップと、d)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザでない場合、コンピュータが、i)現在の時間スロットにおいて、対象端末の認証優先度テーブルからエントリを読み出すことと、ii)認証結果テーブルに基づいて、対象端末以外の端末上での認証ステータスを読み込むことと、iii)各端末のユーザの優先度情報、時間、端末情報、および認証結果テーブルに基づく端末でのユーザのマスキングを含む仮認証優先度テーブルを生成することであり、マスキングが、端末においてログ・イン済みであり、対象端末で認証を現在開始しているユーザではない各ユーザのものである、生成することと、iv)仮認証テーブルを用いて、ユーザの1:N型認証を実行することと、v)1:N型認証が受け入れられたかを判定することと、vi)1:N型認証が受け入れられた場合、コンピュータが、ユーザの対象端末へのアクセスを許可するとともに、認証結果を認証結果テーブルに格納することと、を行うステップと、を含む方法を実行するようにコンピュータにより実行可能である。
【0031】
本発明の別の実施形態によれば、複数の端末においてユーザを認証するコンピュータ・システムが開示される。このコンピュータ・システムは、少なくとも1つのプロセッサと、1つまたは複数のメモリと、1つまたは複数のコンピュータ可読記憶媒体とを備えたコンピュータを備え、1つまたは複数のコンピュータ可読記憶媒体はプログラム命令を有し、このプログラム命令は、プログラム命令が行われるように当該コンピュータにより実行可能である。このプログラム命令は、a)コンピュータにより、ユーザからのバイオメトリック入力を含み、対象端末上で認証を開始するユーザ入力を受け付けるステップと、b)コンピュータにより、対象端末に対してコンピュータが最後に認証したのと同じユーザが対象端末上で認証を開始しているものと、ユーザから受け付けられたバイオメトリック入力が示すかを判定するステップと、c)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザである場合、コンピュータにより、ユーザの1:1型認証を実行するステップと、d)ユーザが、対象端末に対してコンピュータが最後に認証したのと同じユーザでない場合、コンピュータが、i)現在の時間スロットにおいて、対象端末の認証優先度テーブルからエントリを読み出すことと、ii)認証結果テーブルに基づいて、対象端末以外の端末上での認証ステータスを読み込むことと、iii)各端末のユーザの優先度情報、時間、端末情報、および認証結果テーブルに基づく端末でのユーザのマスキングを含む仮認証優先度テーブルを生成することであり、マスキングが、端末においてログ・イン済みであり、対象端末で認証を現在開始しているユーザではない各ユーザのものである、生成することと、iv)仮認証テーブルを用いて、ユーザの1:N型認証を実行することと、v)1:N型認証が受け入れられたかを判定することと、vi)1:N型認証が受け入れられた場合、コンピュータが、ユーザの対象端末へのアクセスを許可するとともに、認証結果を認証結果テーブルに格納することと、を行うステップと、を含む。
【0032】
以下、添付の図面を参照して、本発明の実施形態を一例として説明する。
【図面の簡単な説明】
【0033】
【
図1】本発明の好適な実施形態を実現可能なデータ処理環境の考え得るシステム構成を示した例示的な図である。
【
図2】本発明の好適な一実施形態に係る、認証実行のフローチャートである。
【
図3】本発明の好適な一実施形態に係る、認証結果の解析のフローチャートである。
【
図4】本発明の好適な一実施形態に係る、端末間の関連性の一例を示した図である。
【
図5】本発明の好適な一実施形態に係る、端末間の関連性の一例を示した図である。
【
図6】本発明の好適な一実施形態に係る、認証結果の保守のフローチャートである。
【
図7】本発明の好適な一実施形態に係る、1:N型認証の実行のフローチャートである。
【
図8】例示的な実施形態を実現可能なクライアント・コンピュータおよびサーバ・コンピュータの内部および外部コンポーネントを示した図である。
【発明を実施するための形態】
【0034】
本システムは、共通アカウントを用いて端末にログ・インするバイオメトリック認証等、大量の認証を実行する必要がある認証システムの認証性能を向上させる新たな手段を提案する。
【0035】
このシステムは、入力されて認証の対象となる1つの元データを複数または多数の登録認証データと比較する必要がある1:N認証の改善に関する。
【0036】
このシステムは、適当な認証の種類を選択するとともに、認証シーケンスを最適化することによって、認証の性能向上を実現する。
【0037】
認証における最適化の一要素として、このシステムは、ユーザおよび端末の分布データに基づいて、認証の種類および認証順序を選択する。
【0038】
さらに、このシステムは、単一の端末データからだけではなく、動的なグループ化に関して、「端末間相互使用相関」を動的に用いることにより、認証データの取得精度を向上させる。
【0039】
また、認証シーケンスの最適化の方法として、このシステムは、オペレータが連続的に切り替えを行いつつ複数の端末を同時に使用する認証状況に焦点を当てることによって、改良方式を提案する。
【0040】
この方法の特徴はそれぞれ、バイオメトリック認証の1:N認証を改善可能である。以下に挙げる特徴はそれぞれ独立して、性能向上に寄与する。したがって、2つの要素しか用いない場合であっても、各方法に対応する性能向上を実現可能である。
【0041】
これらの特徴としては、認証に用いられる端末の動的な仮想グループ化に基づく認証優先度リストを用いて、1:N型認証および1:1認証と1:N認証との認証ロジックの切り替えによるハイブリッド認証の認証優先度シーケンスの効率を向上させることが挙げられ、1:N認証における認証優先度リストに対して認証ロジックおよび事前ログ・イン・ユーザのマスキングの選択性が向上することにより、1:N型認証における認証優先度シーケンスの効率が向上する。また、これらの特徴としては、認証データの取得が挙げられ、ユーザの認証の実行時に、ユーザのバイオメトリック情報の認証データが格納される他、認証データ(たとえば、バイオメトリック・データ)、認証リスト、ユーザ情報、端末情報、端末グループ化データ等が格納される。
【0042】
共通アカウントが使用されるとともに複数人のユーザがいくつかの共通端末を使用する場合の認証の一実施形態を考える際、このシステムは、認証使用期間および各ユーザによる端末の使用の不均等分布に焦点を当てる。
【0043】
そして、このシステムは、この不均等分布を用いて、認証性能を向上させる。まず、実際の環境に関する認証結果が記録された後、データの解析によって、端末ごとの認証優先度および使用期間を判定し、最後に、このような優先度テーブルを格納する。
【0044】
認証プロセスにおいて、このシステムは、端末および使用期間に従って、優先度テーブルを読み出す。認証には、不均一分布に基づく優先度テーブルを用いた最小数の認証が好ましい。
【0045】
ただし、実際の使用において、ユーザは、共通アカウントを自由に用いてサイン・インできる複数の端末を使用することが多い。したがって、端末の使用状況に応じた最適化を実行するため、端末をデータ集約対象としてグループ化するのが有効である。
【0046】
従来、グループ化方法として、端末の物理的な場所に基づくグループ化および端末が属する組織の情報によるグループ化が提案されている。ただし、これらの方法は、ユーザの実際の使用形態から、最適な手段とはならないグループ化方法である。
【0047】
既存のグループ化方式の問題を解決する手段として、本システムは、単一の端末からの使用データのみならず、端末間の動的な関係および端末の仮想グループ化を計算することにより互いに依存関係を有する端末の使用データを考慮した認証シーケンスの最適化を実現する。
【0048】
具体的に、このシステムは、端末間のユーザの移動を用いて端末間の依存関係を計算することを提案する。このため、端末の物理的な近接性に関わらず、1人のユーザが各端末間を相互に移動して複数の端末を頻繁に使用する場合、これらの端末の使用における依存度は高い。
【0049】
また、過去の固定期間のデータを用いて依存度を動的に計算することにより、端末ユーザの使用傾向に応じた認証最適化を実行することができる。
【0050】
この依存度を利用して、このシステムでは、すべての端末からの使用データを動的依存度と併用するとともに、相関係数を伴う結果を加重係数として計算することにより、適正な認証シーケンスを取得する。
【0051】
図1は、例示的な実施形態を実現可能なデータ処理環境の考え得るシステム構成を示した例示的な図である。
【0052】
図1は、例示的な実施形態を実現可能な考え得るデータ処理環境の例示的な図である。当然のことながら、
図1は例示に過ぎず、異なる実施形態を実現可能な環境に関して、如何なる制限の主張も暗示も意図していないことを諒解されたい。図示の環境に対する多くの改良が可能である。
【0053】
図1を参照して、ネットワーク・データ処理システム100は、例示的な実施形態を実現可能なコンピュータのネットワークである。ネットワーク・データ処理システム100は、その内部で一体的に接続されたさまざまなデバイスおよびコンピュータ間の通信リンクを提供するのに用いられる媒体であるネットワーク101を含む。ネットワーク101は、ワイヤ、無線通信リンク、または光ファイバ・ケーブル等の接続を含んでいてもよい。
【0054】
図示の例においては、端末デバイス・コンピュータ102、認証サーバ・コンピュータ105、ネットワーク124を通じてデータベース・サーバ125およびリポジトリ127に接続されたビジネス・サーバ121を含むビジネス・システム120が存在する。他の例示的な実施形態において、ネットワーク・データ処理システム100は、付加的なクライアントまたはデバイス・コンピュータ、記憶装置またはリポジトリ、サーバ・コンピュータ、および図示しない他のデバイスを具備していてもよい。
【0055】
端末デバイス・コンピュータ102は、ユーザからのコマンドおよびデータ入力を受け入れ可能なインターフェースを具備し得るウェブ・ブラウザ103を含んでいてもよい。また、端末デバイス・コンピュータ102は、ユーザからの認証データの読み込みおよび読み出しを行うプロセッサおよび関連するセンサ104を具備していてもよい。コマンドは、ログ・イン情報に関するものであってもよい。インターフェースとしては、たとえばコマンド・ライン・インターフェース、グラフィカル・ユーザ・インターフェース(GUI)、ナチュラル・ユーザ・インターフェース(NUI)、またはタッチ・ユーザ・インターフェース(TUI)が可能である。端末デバイス・コンピュータ102は、一組の内部コンポーネント800aおよび一組の外部コンポーネント900aを具備する(
図8に詳しく示す)。
【0056】
認証サーバ・コンピュータ105は、一組の内部コンポーネント800bおよび一組の外部コンポーネント900bを具備する(
図8に示す)。図示の例において、サーバ・コンピュータ105は、ブート・ファイル、オペレーティング・システム画像、およびアプリケーション等の情報を端末デバイス・コンピュータ102に提供する。認証サーバ・コンピュータ105は、ローカルで情報を演算することも可能であるし、ネットワーク101上の他のコンピュータから情報を抽出することも可能である。また、認証サーバ・コンピュータ105は、認証プログラム66を含むのが好ましい。認証サーバ・コンピュータ105は、少なくとも1つのプロセッサ107と、リポジトリ108に接続された関連するメモリ106と、を有する。プロセッサ107は、制御機能114を実行する。リポジトリ108は、たとえばバイオメトリック・データ・データベース109、認証結果データベース110、端末使用データベース111、端末関係データベース112、および認証優先度データベース113に認証データを含むのが好ましい。制御機能114としては、認証データを取得する機能115、ハイブリッド認証を実行する機能116、端末関係を計算する機能117、認証優先度リストを生成する機能118、およびバイオメトリック認証データ・データベース119が挙げられるが、これらに限定されない。
【0057】
ビジネス・システム120は、ビジネス・サーバ121を備え、たとえばウェブ・サーバ122がウェブ・アプリケーション123を備える。ビジネス・サーバ121は、内部ネットワーク124を通じて、データベース・システム126および関連するリポジトリ127を含むデータベース・サーバ125に接続されている。ウェブ・サーバ122およびデータベース・サーバ125は、一組の内部コンポーネント800bおよび第2の外部コンポーネント900bを具備する(
図8に示す)。ウェブ・サーバ122およびデータベース・サーバ125は、ローカルで情報を演算することができ、また、ネットワーク124およびネットワーク101上の他のコンピュータから情報を抽出することができる。
【0058】
認証プログラム66等のプログラム・コードおよびプログラムが、
図8に示す1つまたは複数のコンピュータ可読有形記憶装置830のうちの少なくとも1つに格納されていてもよいし、
図8に示す1つまたは複数の携帯型コンピュータ可読有形記憶装置936のうちの少なくとも1つに格納されていてもよいし、リポジトリ108に格納されていてもよいし、端末デバイス・コンピュータ102、認証サーバ・コンピュータ105、またはビジネス・サーバ・コンピュータ121にダウンロードされて、使用されるようになっていてもよい。たとえば、認証プログラム66等のプログラム・コードおよびプログラムが、認証サーバ・コンピュータ105上の1つまたは複数の記憶装置830のうちの少なくとも1つに格納され、ネットワーク101を介して端末デバイス・コンピュータ102にダウンロードされ、使用されるようになっていてもよい。あるいは、認証サーバ・コンピュータ105としてはウェブ・サーバが可能であり、認証プログラム66等のプログラム・コードおよびプログラムが、認証サーバ・コンピュータ105上の1つまたは複数の記憶装置830のうちの少なくとも1つに格納され、端末デバイス・コンピュータ102によりアクセスされるようになっていてもよい。同様に、ビジネス・サーバは、ウェブ・サーバ122であるのが好ましい。他の例示的な実施形態において、認証プログラム66等のプログラム・コードおよびプログラムは、端末デバイス・コンピュータ102上の1つまたは複数のコンピュータ可読記憶装置830のうちの少なくとも1つに格納されるようになっていてもよいし、2つ以上のサーバ間に分散していてもよい。
【0059】
図示の例においては、ネットワーク・データ処理システム100がインターネットであり、ネットワーク101は、伝送制御プロトコル/インターネット・プロトコル(TCP/IP)の一連のプロトコルを用いて互いに通信するネットワークおよびゲートウェイの世界的集まりを表す。インターネットの中心には、主要ノードとホスト・コンピュータとの間の高速データ通信線の基幹回線が存在し、データおよびメッセージをルーティングする何千もの商用、政府用、教育用、および他のコンピュータ・システムから成る。また、当然のことながら、ネットワーク・データ処理システム100は、たとえばイントラネット、ローカル・エリア・ネットワーク(LAN)、またはワイド・エリア・ネットワーク(WAN)等、多くの異なる種類のネットワークとして実現可能である。
図1は一例であり、異なる例示的な実施形態に対してアーキテクチャの制限を意図したものではない。
【0060】
図8は、例示的な実施形態を実現可能な端末デバイス・コンピュータ102、認証サーバ105、ビジネス・サーバ・コンピュータ121、およびデータベース・サーバ・コンピュータ125の内部および外部コンポーネントを示している。
図8において、端末デバイス・コンピュータ102、認証サーバ105、ビジネス・サーバ・コンピュータ121、およびデータベース・サーバ・コンピュータ125は、それぞれ一組の内部コンポーネント800a、800bおよび外部コンポーネント900a、900bを具備する。各一組の内部コンポーネント800a、800bはそれぞれ、1つもしくは複数のバス826上の1つもしくは複数のプロセッサ820、1つもしくは複数のコンピュータ可読RAM822、および1つもしくは複数のコンピュータ可読ROM824、ならびに1つもしくは複数のオペレーティング・システム828および1つもしくは複数のコンピュータ可読有形記憶装置830を具備する。1つまたは複数のオペレーティング・システム828および認証プログラム66は、コンピュータ可読有形記憶装置830のうちの1つまたは複数に格納され、(通常はキャッシュ・メモリを具備する)RAM822のうちの1つまたは複数を介して、プロセッサ820のうちの1つまたは複数により実行される。
図8に示す実施形態において、コンピュータ可読有形記憶装置830はそれぞれ、内部ハード・ドライブの磁気ディスク記憶装置である。あるいは、コンピュータ可読有形記憶装置830はそれぞれ、ROM824、EPROM、フラッシュ・メモリ等の半導体記憶装置、またはコンピュータ・プログラムおよびデジタル情報を格納可能なその他任意のコンピュータ可読有形記憶装置である。
【0061】
また、各組の内部コンポーネント800a、800bは、CD-ROM、DVD、メモリ・スティック、磁気テープ、磁気ディスク、光ディスク、または半導体記憶装置等の1つまたは複数の携帯型コンピュータ可読有形記憶装置936に対する読み書きを行うR/Wドライブまたはインターフェース832を具備する。認証プログラム66は、携帯型コンピュータ可読有形記憶装置936のうちの1つまたは複数に格納し、R/Wドライブまたはインターフェース832を介して読み出し、ハード・ドライブ830にロードすることができる。
【0062】
また、各組の内部コンポーネント800a、800bは、TCP/IPアダプタ・カード等のネットワーク・アダプタまたはインターフェース836を具備する。認証プログラム66は、外部コンピュータからネットワーク(たとえば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク等)およびネットワーク・アダプタまたはインターフェース836を介して、端末デバイス・コンピュータ102および認証サーバ・コンピュータ105にダウンロード可能である。認証プログラム66は、ネットワーク・アダプタまたはインターフェース836からハード・ドライブ830にロードされる。認証プログラム66は、外部コンピュータからネットワーク(たとえば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク等)およびネットワーク・アダプタまたはインターフェース836を介して、認証サーバ・コンピュータ105にダウンロード可能である。認証プログラム66は、ネットワーク・アダプタまたはインターフェース836からハード・ドライブ830にロードされる。ネットワークには、銅線、光ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組合せを含んでいてもよい。
【0063】
各一組の外部コンポーネント900a、900bは、コンピュータ・ディスプレイ・モニタ920、キーボード930、およびコンピュータ・マウス934を具備する。また、各一組の内部コンポーネント800a、800bは、コンピュータ・ディスプレイ・モニタ920、キーボード930、およびコンピュータ・マウス934と連動するデバイス・ドライバ840を具備する。デバイス・ドライバ840、R/Wドライブまたはインターフェース832、およびネットワーク・アダプタまたはインターフェース836は、ハードウェアおよび(記憶装置830またはROM824、あるいはその両方に格納された)ソフトウェアを含む。
【0064】
認証プログラム66は、低水準言語、高水準言語、オブジェクト指向言語、非オブジェクト指向言語等、さまざまなプログラミング言語で書くことができる。あるいは、認証プログラム66の機能は、コンピュータ回路および他のハードウェア(図示せず)によって全部または一部を実現可能である。
【0065】
以下、このシステムの特徴をさらに詳しく説明する。
【0066】
A.認証データの取得
【0067】
このメカニズムの処理における動作実行タイミングを
図2のフローチャート「認証の実行」で説明する。
【0068】
このシステムは、共通端末の共通アカウントへのログ・インで開始となる。ユーザが認証を要する動作を開始する(たとえば、レジ係が購入品をスキャンしようとしたり、レジ係が食品かご等のレジ打ちを行っているレジでマネージャが商品の値引きを許可しようとしたりする)。
【0069】
この新たなユーザは、たとえば親指を指紋スキャナにかざすことによって、従来技術で知られているように、バイオメトリック・データを入力する。
【0070】
図2を参照して、端末デバイス・コンピュータ102は、端末上で認証を開始するユーザ入力を受け付ける(ステップ202)とともに、ユーザからバイオメトリック入力を受け付ける(ステップ204)ことで、この方法は終了となる。
【0071】
そして、このシステムは、以下の
図3のハイブリッド認証に進む。
【0072】
従来のシステムにおいては、ログ・オン情報が認証ログとして記録される。ただし、認証効率および性能を向上させる基本データとして認証実行履歴データを使用するには、各所要項目により対象データを蓄積することによって、各認証時間および対象端末により認証履歴を読み出せるようにする必要がある。したがって、「ユーザ情報DB:ユーザ情報テーブル」と記載された項目を格納データの一例としてデータベースに格納するのが望ましい。
【0073】
B.ハイブリッド認証データの実行
【0074】
複数人で共通アカウントを共用する場合は、いわゆる1:N認証により認証が実行され、入力データに対しての認証に関して、複数の認証確認対象が存在する。
【0075】
1:N認証の実行には、データベースから大量のデータをロードするとともに、このような認証データを転送することが必須である。データの転送は、複数の認証実行時に発生する。このため、処理時間は、入力および確認対象が特定のログ・オンだけの1:1認証よりも長くなる。
【0076】
この状況の解決方法として、本発明のシステムでは、同じ人物に対する同じ端末上での認証の再現性として認証の不均等分布に焦点を当て、認証性能を向上させる。
【0077】
1:1認証の実行を判定する方法では、同じユーザまたは異なる識別情報の入力による前回の認証からの時間(タイムアウト値)を判定して、異なるユーザがログ・オンしているものと判定する。
【0078】
ただし、システムに用いられる端末がフロントエンドの顧客用端末である場合は、当該端末を使用するタスクとしてカウンタ・サービスを単純に特定できないことから、単純なタイムアウト値を設定して端末使用の終了を判定するのが困難である。また、当該使用環境において複数人のユーザがフロントエンド端末を使用する場合は、ユーザを区別する識別入力も困難である。したがって、既存の1:1および1:N認証切り替え方法をこの環境に適用することはできない。
【0079】
このため、本発明のシステムでは、端末にログ・オンするユーザが当該端末に対して前回認証を実行したのと同じユーザであるかに関する概算判定を行う予備認証を実行する。
【0080】
認証速度は、認証実装の粒度によって決まる。まず、予備認証として、前回認証されたのと同じユーザであるか否かが判定される。この判定の後、認証切り替えを行うべきかが判定される。この粗粒度の認証の使用は、セキュリティ・リスクではない。
【0081】
当該ユーザが前回のログ・オンにおいて認証されたのと同じユーザであると判定可能な場合は、データのキャッシュを用いた1:1認証の実行によって、前回のユーザを認証する。
【0082】
前回のログ・オンおよび認証が同じユーザに対するものと判定できない場合または1:1認証において同じユーザを認証できない場合は、通常の1:N認証を実行するシーケンスが実行される。こうすることにより、このシステムでは、主要な使用事例である同じユーザによる繰り返し認証の速度を向上する。
【0083】
認証実行ロジック自体は、バイオメトリック認証方法のような既存の認証ロジックを利用可能である。
【0084】
本システムにおける認証の特徴である動作は、以下2つの部分から成る。
【0085】
B.1:予備認証を含む1:1および1:N認証実行
【0086】
図3は、1:1または1:N認証の選択を示したフローチャートである。
【0087】
図2において、ユーザからバイオメトリック入力およびログ・イン情報を受け付けた後、認証プログラム66は、システムによる最終認証と同じユーザが端末上でシステムにログ・インしている旨をバイオメトリクスが示すかを判定する(ステップ220)。
【0088】
当該ユーザがシステムによる過去の最終認証と同じユーザでない場合またはユーザを認証できない場合(ステップ220)は、認証プログラム66が1:N型認証を実行し(ステップ222)、この方法は、以下に詳述する
図7に続く。
【0089】
当該ユーザがシステムによる前回の最終認証と同じユーザである場合(ステップ220)、認証プログラム66は、1:1型認証を実行する(ステップ224)。
【0090】
認証情報が当該ユーザに対して受け入れられない場合(ステップ226)、この方法は、1:N型認証を実行するステップ222に続くとともに、以下に詳述する
図7に続く。
【0091】
認証情報が当該ユーザに対して受け入れられる場合(ステップ226)は、認証結果が認証結果テーブルに格納され(ステップ228)、認証プログラム66がユーザに対して端末へのアクセスを許可し(ステップ230)、この方法は終了となる。
【0092】
B.1.1:他端末でのログ・イン・ユーザの認証を除外する認証優先度リスト・マスキング機能を伴う1:N認証実行機能
【0093】
認証リクエストを受けて、システムは、バイオメトリック認証情報および前回の認証情報の入力による粗粒度で高速に実行可能な予備認証を実行する。
【0094】
この認証は、最終認証ではなく、前回と同じユーザである可能性の判定である。
【0095】
同じユーザである可能性が高いと判定された場合は、最後にログ・インしたユーザのデータを用いて1:1認証が実行される。一方、ユーザが異なる可能性が高いと判定された場合は、1:N認証の実行に移行する。
【0096】
B.2.1:他端末でのログ・イン・ユーザの認証を除外する認証優先度リスト・マスキング機能を伴う1:N認証実行機能
【0097】
1:N認証の場合は、入力されたバイオメトリック認証および認証優先度リストに基づいて、認証が連続的に実行される。
【0098】
ただし、認証優先度リストは、過去の認証ステータスに基づくリストである。このため、他の端末で現在ログ・インしているユーザが認証優先度リストにおいて高い優先度にランクされることから、不要な認証処理が実行される可能性がある。
【0099】
したがって、読み込まれた認証優先度リストは、認証優先度仮テーブルとして書き出される。これは、仮テーブルであるため、このようなテーブルの格納にはメモリが好ましい。
【0100】
次に、認証結果データから、現在ログ・イン・データが探索された後、仮認証テーブルから判定されたユーザ識別が消去され、認証実行が有意なテーブルとなるように書き換えられる。
【0101】
最後に、更新された認証優先度仮テーブルのリストに記載のデータの順序で認証が実行される。
【0102】
C.端末関係の計算
【0103】
1:N認証の場合は、認証効率の向上において、優先度リストの妥当性が最も重要な因子となる。
【0104】
認証優先度リストの精度を高めるには、認証優先度リストの局在性を高くする必要がある。このため、認証優先度リストはシステム全体の優先度リストではなく、グループ内または端末レベルで優先度リストを生成する。
【0105】
この場合は、局在性の増大による逆効果として、認証優先度の使用時に冗長性が存在する。本システムでは、この冗長性の低減が高速化に寄与するという事実に焦点を当てる。
【0106】
具体的に、共用端末を使用する環境の場合は、同じユーザが複数の端末を使用する。その結果、同じユーザを優先度リストに登録することは、この種の使用事例で通常起こり得る状況である。
【0107】
一方、認証の観点から、同じユーザが複数の端末を同時に認証してログ・インする使用モードは存在しない。
【0108】
認証実行時に、認証優先度を読み込む場合、他の端末でログ・インしているユーザの認証は発生し得ない。このため、本発明のシステムは、この前提に基づいて、他の端末でログ・インしているユーザを認証優先度リストから除外することにより、認証性能を向上させる。
【0109】
ただし、リストからの除去(マスキング)は、認証リクエストが発生するタイミングでのユーザの使用状況に応じて動的に変化する。このため、本発明のシステムでは、認証優先度リストを仮テーブルとしてコピーすることにより、このテーブルへの一時的な変化を可能にした後、この仮認証優先度リストを用いて認証を実行することにより、使用状態に応じた認証を行う。
【0110】
この要素の機能としては、認証データ取得機能、端末関係計算機能、および端末関係データ格納機能が挙げられる。
【0111】
端末グループ化管理方式の例
【0112】
以下は、端末グループ化管理方式の動作の一例である。ただし、端末関連性(関係)を計算する方法は一例に過ぎず、各端末の認証記録に基づいて、端末関連性を計算する別の方法を使用することも可能である。
【0113】
対象端末について、ユーザが次の認証を実行した端末に関するデータが収集される。ある機能により、収集結果を一定期間にわたって集約し、他の端末に対する各端末の端末関連性指数を計算する。この計算は、対象端末にログ・インしたユーザが次の端末にログ・インした端末の割合(%)である。この計算は、「端末関係DB:端末関係テーブル」に格納される。
【0114】
端末(X)の端末(Y)に対する関連性指数(%)=(対象期間内に端末Xにログ・インした後の端末Yへのログ・イン回数)/(特定期間内の端末Xへのログ・イン回数)
【0115】
複数の隣り合う共通端末を共用しつつ顧客のタスクが実行される環境において、ユーザは、一意の端末を意識せずに空いている端末を使ってそれぞれのビジネス・プロセスを実行する。
【0116】
このような状況においては、単一端末の使用データのみから認証優先度リストを生成しても、実際の使用を反映したリストの生成にはならない。
【0117】
したがって、このシステムでは、端末間の動的な関係因子の判定後に因子が重み付けされた関連端末データを用いて優先度リストを生成する。
図4および
図5は、端末1および2を示しており、丸付き「A」要素がユーザ「A」の認証を表し、丸付き「B」要素がユーザ「B」の認証を表す。
【0118】
図4は、端末の物理的な場所に関わらず、端末1と端末2との関連性がゼロの場合を示している。
【0119】
図5は、物理的な場所に関わらず、端末1と端末2との関連性が極めて高い場合を示している。
【0120】
D.認証優先度リストの生成
【0121】
図6は、関係解析および優先度リスト生成の方法のフローチャートである。
図6のプロセスは、毎日または毎週実行可能であり、各認証後に実行する必要はないが、プロセッサ・リソースが許容するなら、各認証後に実行することも可能である。
【0122】
第1のステップにおいて、認証プログラム66は、認証結果テーブルに基づいて、時間スロット当たり端末使用率を計算し、この時間スロット当たり端末使用率を端末使用率テーブルに格納する(ステップ280)。
【0123】
認証プログラム66は、端末関係を計算して、この端末関係を端末関係テーブルに格納する(ステップ282)。
【0124】
その後、認証プログラム66は、端末関係、端末使用率テーブル、および認証結果に基づいて、認証優先度を計算し、この認証優先度を認証優先度テーブルに格納する(ステップ284)ことで、この方法は終了となる。
【0125】
認証優先度リストは、対応する端末ごとに生成される。端末(W)の時間スロットXの認証優先度リストは、以下の手順により計算される。
【0126】
D.1:対応する端末の対象時間スロット当たり認証使用率の推定
【0127】
対応する端末(W)の時間スロット(X)におけるユーザ(Y)推定認証使用率である。
【0128】
対応する端末の対象時間スロット当たり認証使用率の推定=(対応する端末(W)の対象端末(Z)に対する関連性指数(%))×(対象端末(Z)の時間スロット(X)における使用割合(%))。ただし、この計算は、すべての対象端末およびすべてのユーザの両者に対して実行される。
【0129】
D.2:優先度リストの生成
【0130】
対応する端末(W)の時間スロット(X)における優先度は、対応する端末(W)の時間スロット(X)におけるユーザ(Y)推定認証使用率の降順にソートすることにより、優先度リストとして生成される。
【0131】
E.ストレージおよびデータベース
【0132】
以下のいくつかの表は、このシステムの各メカニズムによってストレージに保持されるテーブルの例を示している。システムにおける実際の詳細は、実際の実施態様に応じて変化することが理解される。
【0133】
【0134】
この例においては、バイオメトリック・データが関連付けられた人々である「ユーザ」(例示のため文字A~XXにより識別)と端末へのサイン・インに用いられるシステム識別子である「共通アカウントID」(例示のため数字001~00nにより識別)とが区別されることに留意されたい。
【0135】
各共通アカウントIDは、多くの異なるユーザにより使用されるようになっていてもよいため、1つの共通アカウントIDと関連付け可能な複数人のユーザが存在し、各ユーザが自身の認証(バイオメトリック)データを有する。ユーザ情報テーブルは、各ユーザIDと関連付けられたさまざまなユーザおよび当該ユーザの識別に用いられるバイオメトリック・データを一覧化している。
【0136】
このシステムにおいては、1つの共通アカウントIDが一度に1つの端末だけにログ・インする一方、1人のユーザが多くの端末に同時にログ・イン可能である。たとえば、シフトの過程でマスター・レジ係があるレジから別のレジに移動する必要があり得る事例である。
【0137】
【0138】
この例において、個々の端末の識別は、それぞれがIPアドレスにある単純な数字1~xにより与えられるが、この代替として、IPアドレス自体、英数字識別子(「Shoe Department」)、またはホスト名もしくはID(「Ithaca Store Register 1」)により端末が識別され得ることが理解される。
【0139】
【0140】
表E.3の例において、この結果は、ある日の9:00~10:00の対象期間のログ・イン使用率が、ユーザAの場合に15%、ユーザBの場合に35%、ユーザCの場合に25%であることを示していることに留意されたい。
【0141】
この情報を使用して、認証優先度テーブルを設定可能である。端末を使用している可能性が最も高いユーザには、所与の時間スロットにおいて、当該時間スロットに当該端末を使用している可能性が低い(可能性がない)ユーザよりも、端末に対する高い優先度が割り当てられる(認証優先度テーブルについては、以下の表E.5参照)。
【0142】
【0143】
表E.4において、端末1の端末2に対する関係割合は、20%である。この割合は、ユーザの20%が端末1にログ・オンした後、次のログ・オンにおいて端末2にログ・オンしたことを意味する。
【0144】
この表の端末関係は、端末使用表E.3のデータとの組合せによって、全体優先度を判定可能であり、これは、以下の表E.5に格納される。
【0145】
この表は、所与の期間にユーザが端末を頻繁に変更するいくつかの特定のグループ間で使用される端末に関する情報を提供する。優先使用では、1回の端末使用のみならず、複数回の端末使用も計算する。また、この状況においては、表E.4の端末関係データが用いられる。
【0146】
複数の端末での使用および端末使用関係を考慮した認証優先度の端末使用データは、たとえば以下の式により求められる。
時間スロット(T)における端末(W)の推定端末使用=
【数1】
((表E.4の端末(W)と端末(i)との端末関係)×(表E.3の時間スロット(T)における端末(i)の端末使用率))
【0147】
ここで、この合計は、すべての端末(端末1~端末xと表示)に適用される。
【0148】
【0149】
表E.5において、この例は、2016年11月30日の時間スロット9:00~10:00における端末1の認証優先度が、ユーザB(前日の同じ時間スロットにおける当該端末の35%という使用に基づく)、ユーザC(25%)、ユーザA(15%)、・・・最後にユーザXX(過去に当該端末を一切使用していない)という順番であることを示している。
【0150】
1:N認証の方法のフローチャート
【0151】
【0152】
この例において、共通アカウントID 001は、単一グループのユーザ全員すなわち百貨店の靴売り場の従業員を表す。靴売り場には、多くのレジ端末(端末1~端末xと表示)が存在する可能性があり、店舗が開いたら、売り場のすべての端末が共通アカウントID 001により開かれる。売り場の26人の従業員はそれぞれ、たとえばユーザA・・・ユーザZという文字で表示され、それぞれが認証用のバイオメトリック・データを有することになる。26人の従業員は、それぞれのスケジュールを有するため、全員が任意所与の時間スロットに店舗にいる可能性はないが、店舗にいる場合は、端末1~xのいずれかで認証(ログ・イン)が必要となり得る。
【0153】
ここで、2017年11月30日午前9:30に、ユーザ(ユーザM)が対象端末(この例の目的では、端末1)で認証を試行している。ユーザは前回、1つまたは複数の他の端末にログ・オンしている可能性がある。ユーザは、その認証データを入力する(たとえば、親指をリーダにかざすか、または、レジのキーパッドで自身のコードを入力する)。
【0154】
従来技術においてはその後、新たなユーザのバイオメトリクスの照合が得られるまで、グループ(共通アカウントID 1(靴売り場))のユーザそれぞれ(ユーザA~Z)の認証プロセスをシステムが実行する必要があった。たとえば、バイオメトリック・データがユーザ名により連続的に配置されている場合、システムは、ユーザMの照合を得るまで、ユーザAからユーザLまで各ユーザを経る必要があった。このため、システムは、12回の認証プロセスを経る必要があった。これは明らかに、大規模なグループでは、潜在的にかなりの時間を要することになる。
【0155】
この状況は、特定の時間スロットに特定の端末でログ・インすることが予想され得るユーザを優先することによって改善可能である。これは、認証優先度テーブルに格納可能である。認証優先度テーブルは、以下の情報を有する。
【0156】
【0157】
図3のステップ222から、ユーザMが共通アカウントID 001の端末1でログ・インしようとする場合、認証プログラム66は、現在の時間スロットで対象端末のエントリを認証優先度テーブルから読み出す(ステップ302)。
【0158】
対象端末についてテーブルから抽出される情報は、以下の通りである。
【0159】
【0160】
これは、ユーザMがこの時間スロットにおいて、端末1に対して優先度nでリスト上に存在することを示す。したがって、この方法で単にこの優先度テーブルを使用する場合、このシステムでは、ユーザMのデータに達するまで、(n-1)組の認証データを精査すればよいことになる。この時間にこの端末に対して優先度を有する可能性は比較的小さなユーザ部分集合のみである(すなわち、(n-1)<12)と仮定すると、ユーザMのログ・イン時間が改善されることになる。
【0161】
ただし、本方法において、認証プロセスは、後述の通りに改善される。認証プログラム66は、認証結果テーブルから、他の端末上での認証ステータスを読み込む(ステップ308)。
【0162】
【0163】
このため、認証プログラムは、上述の通り、ユーザAが現在は端末3でログ・インし、ユーザB、D、およびNが現在は端末11でログ・インし、ユーザCが現在は端末12でログ・インし、ユーザGが端末8でログ・インしていることに留意する。他のユーザは、他の端末でログ・インしている。
【0164】
その後、ステップ308で読み込まれた認証ステータスの使用により、後述の通り優先度情報およびマスキング・ステータスを追加することによって、仮認証優先度テーブルを生成する(ステップ310)。優先度ごとに、マスキング・ステータスを示す付加的なデータが追加される。マスキング・ステータスには2つの状態があることから、この例では、「マスキング」を意味する「真」および「脱マスキング」を意味する「偽」としてステータス状態を規定する。単純な0または1の2進数等、その他任意のコードをこの機能に使用することも可能であることが理解される。
【0165】
別の端末でログ・イン済みの各ユーザは、マスキングされる。すなわち、この例では、「真」のマスキング値が割り当てられる。対象端末のマスキングのみに注目すると、表は以下のようになる。
【0166】
【0167】
したがって、この例では、ユーザが他の場所で認証されていることから、最初の2つの優先度エントリがマスキングされる(「真」となる)。優先度3~(n-1)の優先度の他のユーザについても、ログ・インしているため、同じくマスキングされるものと仮定する。
【0168】
ユーザが端末からログ・アウトしている場合、当該ユーザのマスキングは、仮認証優先度テーブルのどこに現れていても、除去されることになることに留意されたい。
【0169】
「認証優先度テーブル」は、以下のように「仮認証優先度テーブル」と異なる。
【0170】
ステータス変化:認証優先度テーブルは毎時、毎日、または毎週、認証動作統計値の測定間隔において、静的状態を有する。一方、仮認証優先度テーブルは、認証動作に応じて、そのデータおよびマスキング・ステータスを動的に変更し得る。
【0171】
格納場所:認証優先度テーブルが静的性質を有することから、これらのテーブルは、リポジトリまたは記憶媒体に格納されるのが好ましい。一方、仮認証優先度テーブルは、適時かつ高速にそのマスキング・ステータスを変更可能である必要があることから、これらのテーブルは、プロセッサ・メモリに格納すべきである。
【0172】
テーブルの生成:仮認証優先度テーブルは、認証優先度テーブルをストレージからメモリにロードすることによって生成される(上述の通り修正される)。
【0173】
その後、認証プログラム66は、仮認証優先度テーブルを用いて、1:N型認証を実行する(ステップ312)。
【0174】
したがって、ユーザMが端末1で認証を試行する場合、システムは、ユーザBの情報でも、ユーザCの情報でも、優先度3~(n-1)の他のユーザのいずれによっても、認証を試行しない。これらのユーザはスキップ(「マスキング」)されるため、システムは、最初の試行で認証を通過した優先度n(ユーザM)に直接たどり着く。
【0175】
これにより、システムの性能が向上する。他の場所でログ・オン済みの任意のユーザのバイオメトリック・データに対しては認証を実行する必要がなく(エントリがマスキングされている)、認証を試行している可能性が最も高いユーザに対して最初にシステムが認証を実行できるように、残りのユーザがそれぞれの優先度(ユーザが今回、この端末にログ・インする尤度)によってランクされるためである。
【0176】
また、ユーザMは、別の端末でログ・オンしている場合もマスキングされ、優先度nのマスキングは「真」となることに留意されたい。この場合、ユーザMは、端末1で認証不可能となる。これにより、別のどこかでログ・イン前に使用している端末では、ユーザのログ・オフが強制されて、セキュリティが強化される。あるいは、このシステムは、非活動期間後にユーザを自動的にログ・オフさせる設定によって、脱マスキングが自動的に起こり、ログ・イン間に一定の時間が確保される限りはユーザが端末間を自由に移動し得るようにすることも可能である。
【0177】
認証が端末により受け入れられた場合(ステップ314)は、端末へのアクセスが許可され(ステップ316)、認証結果が認証テーブルに格納される(ステップ318)ことで、この方法は終了となる。
【0178】
認証が端末により受け入れられない場合(ステップ314)は、認証結果が認証テーブルに格納され(ステップ318)、認証が受け入れられなかったことを示すメッセージが端末に送信される(ステップ320)ことで、この方法は終了となる。
【0179】
G.システムの主要素
【0180】
要素1:ハイブリッド認証処理実行メカニズム
【0181】
ユーザの認証リクエストに応答して、認証基準バイオメトリック・データおよびバイオメトリック情報の認証基準データが格納された対象ユーザの入力バイオメトリック情報を認証することにより、認証が実行される。このシステムは、1:1型認証および1:N認証を実現する。
【0182】
1:N型認証プロセスは、端末による関連認証優先度に従って実行される。
【0183】
また、この1:N型認証においては、別の端末によりログ・インされる共通アカウントIDが確認され、当該他端末によりログ・インされる共通アカウントが認証優先度リストからマスキングされることで、認証対象から除外される。
【0184】
要素2:端末関連性計算機能
【0185】
ユーザ端末における認証結果データに基づく端末の動的グループ化すなわち端末間の仮想的な依存関係の計算が格納される。
【0186】
要素3:認証優先度リストを生成する機能
【0187】
各端末における認証記録および端末間の依存関係データに基づいて、時間等の所定条件ごとに認証優先度リストを生成して保存する。
【0188】
H.他の要素
【0189】
本発明は、任意の考え得る技術的詳細集約レベルのシステム、方法、またはコンピュータ・プログラム製品、あるいはその組合せであってもよい。コンピュータ・プログラム製品は、本発明の態様をプロセッサに実行させるコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体を含んでいてもよい。
【0190】
コンピュータ可読記憶媒体としては、命令実行装置が使用する命令を保持・格納し得る有形デバイスが可能である。コンピュータ可読記憶媒体は、たとえば電子記憶装置、磁気記憶装置、光学記憶装置、電磁記憶装置、半導体記憶装置、またはこれらの任意好適な組合せであってもよいが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的一覧には、携帯型コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、消去・プログラム可能リード・オンリー・メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、携帯型コンパクト・ディスク・リード・オンリー・メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリ・スティック、フロッピー(R)・ディスク、パンチ・カードまたは命令が記録された溝中の隆起構造等の機械的符号化デバイス、およびこれらの任意好適な組合せを含む。本明細書において使用するコンピュータ可読記憶媒体は、無線波または他の自由伝搬電磁波、導波路または他の伝送媒体を伝搬する電磁波(たとえば、光ファイバ・ケーブルを通過する光パルス)、またはワイヤを通って伝わる電気信号等の一過性の信号それ自体として解釈されないものとする。
【0191】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれの演算/処理装置にダウンロードすることも可能であるし、たとえばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、または無線ネットワーク、あるいはその組合せ等のネットワークを介して、外部コンピュータまたは外部記憶装置にダウンロードすることも可能である。ネットワークには、銅製伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組合せを含んでいてもよい。各演算/処理装置のネットワーク・アダプタ・カードまたはネットワーク・インターフェースがネットワークからコンピュータ可読プログラム命令を受信し、当該コンピュータ可読プログラム命令を転送して、各演算/処理装置内のコンピュータ可読記憶媒体に格納する。
【0192】
本発明の動作を実行するコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用設定データ、またはSmalltalk、C++等のオブジェクト指向プログラミング言語および「C」プログラミング言語もしくは類似のプログラミング言語等の手続き型プログラミング言語等の1つもしくは複数のプログラミング言語の任意の組合せにより記述されたソース・コードもしくはオブジェクト・コードであってもよい。コンピュータ可読プログラム命令は、ユーザのコンピュータ上ですべてが実行されるようになっていてもよいし、独立型ソフトウェア・パッケージとしてユーザのコンピュータ上で一部が実行されるようになっていてもよいし、ユーザのコンピュータ上で一部が実行されるとともにリモート・コンピュータ上で一部が実行されるようになっていてもよいし、リモート・コンピュータまたはサーバ上ですべてが実行されるようになっていてもよい。後者のシナリオにおいて、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)またはワイド・エリア・ネットワーク(WAN)等の任意の種類のネットワークを通じてユーザのコンピュータに接続されていてもよいし、(たとえば、インターネット・サービス・プロバイダによりインターネットを通じて)外部のコンピュータに接続されていてもよい。いくつかの実施形態においては、たとえばプログラマブル論理回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル論理アレイ(PLA)等の電子回路がコンピュータ可読プログラム命令の状態情報を利用してコンピュータ可読プログラム命令を実行することにより、電子回路をカスタマイズして本発明の態様を実行するようにしてもよい。
【0193】
本明細書においては、本発明の実施形態に係る方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図、あるいはその両方を参照して、本発明の態様を説明した。フローチャート図またはブロック図、あるいはその両方の各ブロックならびにフローチャート図またはブロック図、あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装可能であることが理解される。
【0194】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサを介して実行する当該命令によって、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定の機能/動作を実装する手段が構成されるように、汎用コンピュータ、専用コンピュータまたは他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを生成するようになっていてもよい。また、これらのコンピュータ可読プログラム命令は、命令が格納されたコンピュータ可読記憶媒体が、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定の機能/動作の態様を実装する命令を含む製造品を含むように、コンピュータ、プログラム可能なデータ処理装置、または他の機器、あるいはその組合せが特定の様態で機能するように指示可能なコンピュータ可読記憶媒体に格納されていてもよい。
【0195】
また、コンピュータ可読プログラム命令は、コンピュータ、他のプログラム可能なデータ処理装置、または他の機器上で実行する当該命令が、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定の機能/動作を実装するように、コンピュータ、他のプログラム可能な装置、または他の機器にロードされ、一連の動作ステップがコンピュータ、他のプログラム可能な装置、または他の機器上で実行されてコンピュータ実装プロセスを生成するようになっていてもよい。
【0196】
図面中のフローチャートおよびブロック図は、本発明の種々実施形態に係るシステム、方法、およびコンピュータ・プログラム製品の考え得る実施態様のアーキテクチャ、機能、および動作を示している。この点、フローチャートまたはブロック図の各ブロックは、命令のモジュール、セグメント、または部分を表していてもよく、指定の論理的機能を実装する1つまたは複数の実行可能な命令を含む。いくつかの代替の実施態様において、各ブロックに記載の機能は、図面に記載の順序から外れて生じ得る。たとえば、関与する機能に応じて、連続して示す2つのブロックが実際のところ、実質的に同時に実行されるようになっていてもよいし、各ブロックが場合により逆の順序で実行されるようになっていてもよい。また、ブロック図またはフローチャート図、あるいはその両方の各ブロックならびにブロック図またはフローチャート図、あるいはその両方におけるブロックの組合せは、指定の機能または動作を実行するか、あるいは専用ハードウェアおよびコンピュータ命令の組合せを実行する専用ハードウェアに基づくシステムにより実装可能であることに留意されたい。