(57)【要約】【課題】運用時に、シナリオ評価時と同じシナリオで評価を可能とする。【解決手段】ＢＳＰ４０、入出力手段６８及びＤＢ６２を含むフレームワーク６０、及び、アプリケーション８０の階層構造を有している。ＢＳＰは、デバイス２０を制御するデバイス制御手段４２と、デバイスが取得した生体情報から登録コードを作成して、登録コードをＤＢに格納する登録コード作成手段４４と、デバイスが取得した生体情報から照合コードを作成する照合コード作成手段４６と、照合コードをＤＢから読み出された登録コードと照合する１対１照合手段４８とを備えて構成される。フレームワークは、デバイス制御手段及び登録コード作成手段に指示を送ることにより、登録処理を行う登録手段６４と、デバイス制御手段、照合コード作成手段及び１対１照合手段に指示を送ることにより、照合処理を行う照合手段６６とを備えて構成される。【選択図】図１
2011118680.tif 000002
【特許請求の範囲】
【請求項１】
利用者の生体情報を取得するデバイスと、
最下層に位置するバイオメトリックサービスプロバイダ、該バイオメトリックサービスプロバイダの上の階層に位置するフレームワークであって、入出力手段及びデータベースを含む当該フレームワーク、及び、該フレームワークの上の階層に位置するアプリケーションを有する制御部と
を備え、
前記バイオメトリックサービスプロバイダは、
前記デバイスを制御するデバイス制御手段と、
前記デバイスが取得した生体情報から登録コードを作成して、該登録コードを前記データベースに格納する登録コード作成手段と、
前記デバイスが取得した生体情報から照合コードを作成する照合コード作成手段と、
前記照合コードを、前記データベースから読み出された登録コードと照合する１対１照合手段と
を備え、
前記フレームワークは、
前記デバイス制御手段及び前記登録コード作成手段に指示を送ることにより、登録処理を行う登録手段と、
前記デバイス制御手段、前記照合コード作成手段及び前記１対１照合手段に指示を送ることにより、照合処理を行う照合手段と
を備え、
前記アプリケーションは、前記登録手段及び前記照合手段に指示を送る
ことを特徴とする生体認証装置。
【請求項２】
前記フレームワークは、さらに、前記登録手段及び前記照合手段の処理結果に基づいてレポートを作成するレポート作成手段を備える
ことを特徴とする請求項１に記載の生体認証装置。
【請求項３】
前記照合処理を行うに当たり、
前記照合手段が、前記照合コードを前記利用者の登録コードと１対１照合する指示を前記１対１照合手段に送り、さらに、前記照合コードを、１又は複数の前記利用者以外の登録コードと１対１照合する指示を前記１対１照合手段に送る
ことを特徴とする請求項１又は２に記載の生体認証装置。
【請求項４】
前記バイオメトリックサービスプロバイダは、さらに、前記照合コードを、前記データベースから読み出された複数の登録コードと照合する１対多照合手段を備え、
前記照合手段は、さらに、前記デバイス制御手段、前記照合コード作成手段及び前記１対多照合手段に指示を送ることにより、照合処理を行う機能を有する
ことを特徴とする請求項１〜３のいずれか一項に記載の生体認証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、生体認証装置に関するものである。
【背景技術】
【０００２】
生体認証は、バイオメトリック認証とも称され、指紋や虹彩などの生体情報を用いて個体を識別する技術である。この生体認証を行う装置に関して、生体情報の取得や照合を行う生体認証技術部分と、アプリケーションとの間のインタフェースとして、ＢｉｏＡＰＩ（Ｂｉｏｍｅｔｒｉｃ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）の標準化がＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ３７で進められている。
【０００３】
図６を参照して、ＢｉｏＡＰＩを利用した生体認証装置について説明する。図６は、ＢｉｏＡＰＩを利用した生体認証装置の模式図である。
【０００４】
生体認証装置１１０は、例えば、ソフトウェアとして構成される部分（ソフトウェア部）と、ハードウェアとして構成される部分（ハードウェア部）とを備えて構成される。
【０００５】
ハードウェア部には、カメラなど生体情報を取得するデバイス１２０が設けられている。ソフトウェア部は、ＢｉｏＡＰＩによって規定されている、バイオメトリックサービスプロバイダ（ＢＳＰ：Ｂｉｏｍｅｔｒｉｃ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ）１４０、ＢｉｏＡＰＩフレームワーク（ＢｉｏＡＰＩ  Ｆｒａｍｅｗｏｒｋ）１６０及びアプリケーション１８０の階層構造が設けられている。
【０００６】
ＢＳＰ１４０は、階層構造の最下層である第１層に位置するソフトウェアであって、デバイス１２０を制御する機能を含めて、生体情報の取得や照合などを行う機能を有している。ＢｉｏＡＰＩフレームワーク１６０は、第１層上の第２層に位置するソフトウェアであって、ＢｉｏＡＰＩの中核をなしている。アプリケーション１８０は、第２層上の第３層に位置するソフトウェアである。
【０００７】
ＢｉｏＡＰＩフレームワーク１６０とＢＳＰ１４０の間のインタフェースは、ＢｉｏＳＰＩ（ＢｉｏＳＰＩ：Ｂｉｏｍｅｔｒｉｃ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ  Ｉｎｔｅｒｆａｃｅ）と呼ばれる。ＢＳＰ１４０は、ＢｉｏＡＰＩフレームワーク１６０に対して、ＢｉｏＳＰＩ関数（ＢｉｏＳＰＩ  ｆｕｎｃｔｉｏｎ）を提供する。ＢｉｏＡＰＩフレームワーク１６０は、ＢｉｏＳＰＩ関数を呼び出すことにより、ＢＳＰ１４０にアクセスする。
【０００８】
ＢｉｏＡＰＩフレームワーク１６０とアプリケーション１８０の間のインタフェースは、ＢｉｏＡＰＩと呼ばれる。ＢｉｏＡＰＩフレームワーク１６０は、アプリケーション１８０に対して、ＢｉｏＡＰＩ関数（ＢｉｏＡＰＩ  ｆｕｎｃｔｉｏｎ）を提供する。アプリケーション１８０は、ＢｉｏＡＰＩ関数を呼び出すことにより、ＢｉｏＡＰＩフレームワーク１６０にアクセスする。
【０００９】
なお、多くのＢｉｏＡＰＩ関数に１対１に対応して、ＢｉｏＳＰＩ関数が存在している。従って、アプリケーション１８０がＢｉｏＡＰＩ関数を呼び出すと、ＢｉｏＡＰＩフレームワーク１６０が対応するＢｉｏＳＰＩ関数を呼び出す。例えば、生体情報の登録を行う場合は、アプリケーション１８０が、ＢｉｏＡＰＩ＿Ｅｎｒｏｌｌ関数を呼び出すと、ＢｉｏＳＰＩ＿Ｅｎｒｏｌｌ関数が呼び出され、登録処理が行われる。また、照合を行う場合は、アプリケーション１８０が、ＢｉｏＡＰＩ＿Ｖｅｒｉｆｙ関数を呼び出すと、ＢｉｏＳＰＩ＿Ｖｅｒｉｆｙ関数が呼び出され、照合処理が行われる。
【００１０】
これら、登録処理や照合処理の精度評価は、取得失敗率（ＦＴＡ：ｆａｉｌｕｒｅ−ｔｏ−ａｃｑｕｉｒｅ  ｒａｔｅ）、登録失敗率（ＦＴＥ：ｆａｉｌｕｒｅ−ｔｏ−ｅｎｒｏｌ  ｒａｔｅ）、誤拒否率（ＦＲＲ：ｆａｌｓｅ  ｒｅｊｅｃｔ  ｒａｔｅ）及び誤受入率（ＦＡＲ：ｆａｌｓｅ  ａｃｃｅｐｔ  ｒａｔｅ）などにより行われる。精度評価には、テクノロジ評価、シナリオ評価及び運用評価がある（例えば、非特許文献１参照）。
【００１１】
テクノロジ評価は、既に取得済みのサンプルデータ等を用いて、アルゴリズム単独でのＦＲＲやＦＡＲなどの精度を評価するものである。
【００１２】
シナリオ評価は、登録シナリオや照合シナリオを備える模擬的なアプリケーションを用いた生体認証装置において、ＦＲＲやＦＡＲなどの精度を評価するものである。このシナリオ評価では、上記のＦＲＲやＦＡＲに加えて、生体認証装置の登録や認証の処理時間の評価などが行われる。また、シナリオ評価では、被験者に対する生体情報の取得の評価も行われるので、人間工学的な評価も行われる。
【００１３】
運用評価は、シナリオ評価と同様の評価を、実運用時に行うものである。
【先行技術文献】
【非特許文献】
【００１４】
【非特許文献１】”Information technology - Biometric performance testing and reporting - Part 1: Principles and framework”,  ISO/IEC 19795-1
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら、上述の従来例の生体認証装置では、登録シナリオや照合シナリオがアプリケーションに設けられる。シナリオ評価時には、模擬的なアプリケーションが用いられるので、運用時のアプリケーションと異なっている場合がある。この場合、シナリオ評価と運用評価とでは、シナリオが異なり、その結果、シナリオ評価の結果が、運用時に再現されないことがある。  
【００１６】
また、評価項目もアプリケーションに依存するので、シナリオ評価と運用評価とで完全に一致させることが困難である。
【００１７】
この発明は、上述の問題点に鑑みてなされたものであり、この発明の目的は、登録や照合のシナリオを、ＢｉｏＡＰＩフレームワークに設けることで、運用時に、シナリオ評価時と同じシナリオで評価を可能とする、生体認証装置を提供することである。
【課題を解決するための手段】
【００１８】
上述した目的を達成するために、この発明の生体認証装置は、利用者の生体情報を取得するデバイスと、制御部とを備えて構成される。制御部は、最下層に位置するバイオメトリックサービスプロバイダ（ＢＳＰ）、ＢＳＰの上の階層に位置するフレームワークであって、入出力手段及びデータベース（ＤＢ）を含む当該フレームワーク、及び、フレームワークの上の階層に位置するアプリケーションを有している。
【００１９】
ＢＳＰは、デバイスを制御するデバイス制御手段と、デバイスが取得した生体情報から登録コードを作成して、登録コードをＤＢに格納する登録コード作成手段と、デバイスが取得した生体情報から照合コードを作成する照合コード作成手段と、照合コードを、ＤＢから読み出された登録コードと照合する１対１照合手段とを備えて構成される。また、フレームワークは、デバイス制御手段及び登録コード作成手段に指示を送ることにより、登録処理を行う登録手段と、デバイス制御手段、照合コード作成手段及び１対１照合手段に指示を送ることにより、照合処理を行う照合手段とを備えて構成される。また、アプリケーションは、登録手段及び照合手段に指示を送る。
【発明の効果】
【００２０】
この発明の生体認証装置によれば、登録や照合のシナリオがフレームワーク内に登録手段及び照合手段として設けられている。このため、アプリケーションが異なる場合であっても、同一のシナリオで、登録や照合が行われるので、同一基準の評価が可能になる。また、全てのＢＳＰに対して評価結果の項目を容易に統一できる。また、実運用時に、精度評価を継続的に行うことも可能になる。
【００２１】
さらに、ＤＢやＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）などの入出力手段がフレームワーク内に設けられることで、入出力手段がＢＳＰに設けられる従来のシステムに比べて、ＢＳＰの開発負荷が軽減される。
【００２２】
また、登録や照合のシナリオがフレームワーク内に設けられることで、シナリオがアプリケーションに設けられる従来のシステムに比べて、アプリケーションの開発負荷が軽減される。
【図面の簡単な説明】
【００２３】
【図１】この実施形態の生体認証装置の概略図である。
【図２】登録シナリオの処理フローの一例である。
【図３】照合シナリオの処理フローの一例である。
【図４】分割型全件照合の処理フローの一例である。
【図５】この実施形態の生体認証装置の変形例を示す概略図である。
【図６】ＢｉｏＡＰＩを利用した生体認証装置の模式図である。
【発明を実施するための形態】
【００２４】
以下、図を参照して、この発明の実施の形態について説明するが、各構成要素の配置関係については、この発明が理解できる程度に概略的に示したものに過ぎない。また、以下、この発明の好適な構成例につき説明するが、数値的条件などは、単なる好適例にすぎない。従って、この発明は以下の実施の形態に限定されるものではなく、この発明の構成の範囲を逸脱せずにこの発明の効果を達成できる多くの変更又は変形を行うことができる。
【００２５】
（生体認証装置）
図１を参照して、この発明の一実施形態に係る生体認証装置について説明する。図１は、この実施形態の生体認証装置の概略図である。
【００２６】
生体認証装置１０は、デバイス２０と制御部３０とを備えて構成される。
【００２７】
デバイス２０は、利用者の生体情報を取得するために用いられ、例えば、カメラなどを備えて構成される。生体認証として、顔認証、静脈認証、虹彩認証又は指紋認証を行う場合は、カメラにより、必要な領域の撮影を行い、生体情報を取得する。以下の説明では、この取得された生体情報を取得データと称することもある。なお、ここでは、デバイス２０としてカメラを用いる例について説明するが、生体認証として声紋認証を行う場合には、デバイス２０としてマイクを用いるなどしても良い。
【００２８】
制御部３０は、階層構造のソフトウェアとして構成される。
【００２９】
標準化が進められているＢｉｏＡＰＩで規定されている階層構造は、３層構造である。最下層である第１層には、バイオメトリックサービスプロバイダ（ＢＳＰ：Ｂｉｏｍｅｔｒｉｃ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ）４０が設けられる。ＢＳＰ４０が設けられている第１層の上の階層である第２層には、フレームワークとしてＢｉｏＡＰＩフレームワーク６０が設けられる。ＢｉｏＡＰＩフレームワーク６０が設けられている第２層の上の階層である第３層に、アプリケーション８０が設けられている。ＢＳＰ４０、ＢｉｏＡＰＩフレームワーク６０及びアプリケーション８０が備える各機能手段は、生体認証装置が備えるＣＰＵ（図示を省略する。）が所定のプログラムを実行するなど、任意好適な手法により実現される。
【００３０】
ＢｉｏＡＰＩフレームワーク６０とアプリケーション８０の間のインタフェースは、ＢｉｏＡＰＩ（Ｂｉｏｍｅｔｒｉｃ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）と呼ばれる。アプリケーション８０は、ＢｉｏＡＰＩ関数を呼び出すことにより、ＢｉｏＡＰＩフレームワーク６０にアクセスする。
【００３１】
ＢｉｏＡＰＩフレームワーク６０とＢＳＰ４０の間のインタフェースは、ＢｉｏＳＰＩ（Ｂｉｏｍｅｔｒｉｃ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ  Ｉｎｔｅｒｆａｃｅ）と呼ばれる。ＢｉｏＡＰＩフレームワーク６０は、ＢｉｏＳＰＩ関数を呼び出すことにより、ＢＳＰ４０にアクセスする。
【００３２】
ＢＳＰ４０は、デバイス２０を制御する機能を含めて、生体情報の取得や照合などを行う機能を有している。ＢＳＰ４０は、機能手段として、デバイス制御手段４２、登録コード作成手段４４、照合コード作成手段４６及び１対１照合手段４８を備えている。
【００３３】
デバイス制御手段４２は、対応するデバイス２０を制御する手段である。デバイス制御手段４２は、例えば、カメラを作動させて所定の領域の撮影を行わせるなどして、利用者の生体情報を取得する。ＢｉｏＡＰＩフレームワーク６０が、ＢｉｏＳＰＩ関数として、ＢｉｏＳＰＩ＿Ｃａｐｔｕｒｅ関数を呼び出すと、デバイス制御手段４２が作動する。
【００３４】
登録コード作成手段４４は、デバイス制御手段４２を経て受け取った生体情報から登録コード（テンプレート）を作成する。この登録コードは、生体情報として撮影された写真の画像データから対象領域が抽出され、さらに、生体認証に必要な特徴が抽出されたものである。また、この登録コードには、利用者の名称など、利用者を特定する情報が付加されている。登録コード作成手段４４は、作成した登録コードを、ＢｉｏＡＰＩフレームワーク６０が備えるデータベース（ＤＢ）６２に登録する。ＢｉｏＡＰＩフレームワーク６０が、ＢｉｏＳＰＩ関数として、ＢｉｏＳＰＩ＿ＣｒｅａｔｅＴｅｍｐｌａｔｅ関数を呼び出すと、登録コード作成手段４４が作動する。
【００３５】
照合コード作成手段４６は、デバイス制御手段４２を経て受け取った生体情報から照合コードを作成する。この照合コードは、生体情報として撮影された写真の画像データから対象領域が抽出され、さらに、生体認証に必要な特徴が抽出されたものである。ＢｉｏＡＰＩフレームワーク６０が、ＢｉｏＳＰＩ関数として、ＢｉｏＳＰＩ＿Ｐｒｏｃｅｓｓ関数を呼び出すと、照合コード作成手段４６が作動する。
【００３６】
１対１照合手段４８は、照合コード作成手段４６が作成した照合コードと、ＤＢ６２から読み出された１の登録コードとを照合する。この場合、１対１照合手段４８は、照合を行う利用者の登録コードをＤＢ６２から読み出す。１対１照合手段４８は、登録コードと照合コードを照合して、登録コードと照合コードが同一特徴を有しているか否かを判定する。ＢｉｏＡＰＩフレームワーク６０が、ＢｉｏＳＰＩ関数として、ＢｉｏＳＰＩ＿ＶｅｒｉｆｙＭａｔｃｈ関数を呼び出すと、１体１照合手段４８が作動する。
【００３７】
ＢｉｏＡＰＩフレームワーク６０は、ＤＢ６２に加えて、登録手段６４及び照合手段６６を備えている。また、ＢｉｏＡＰＩフレームワーク６０は、入出力手段６８として、例えばＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を備えて構成されるのが良い。この入出力手段６８は、生体認証装置１０がディスプレイ、スピーカなどの出力部や、キーボード、タッチパネルなどの入力部を備えている場合に、これらの制御を行う。
【００３８】
この入出力手段６８は、登録及び照合のいずれの処理を行うのかを選択させるなど、利用者に指示をすると共に、利用者の入力を受け付ける。また、撮影対象の変更を利用者に指示する。撮影対象の変更には、例えば、指紋認証の場合であれば、指の位置や、指の変更があり、虹彩認証の場合であれば、視線の方向や、右目と左目の変更がある。
【００３９】
登録手段６４は、登録処理（登録シナリオ）を実行する機能手段であり、デバイス制御手段４２及び登録コード作成手段４４に指示を送ることにより、登録処理を行う。アプリケーション８０が、ＢｉｏＡＰＩ関数として、ＢｉｏＡＰＩ＿Ｅｎｒｏｌｌ関数を呼び出すと、登録手段６４が登録処理を開始する。この登録手段６４は、ＢｉｏＳＰＩ＿Ｃａｐｔｕｒｅ関数を呼び出すことによりデバイス制御手段４２を作動させ、また、ＢｉｏＳＰＩ＿ＣｒｅａｔｅＴｅｍｐｌａｔｅ関数を呼び出すことにより登録コード作成手段４４を作動させる。
【００４０】
図２を参照して登録シナリオの一例について説明する。図２は、登録シナリオの処理フローの一例である。なお、ここでは、ＧＵＩなど入出力手段６８に係る処理についての説明を省略している。
【００４１】
登録シナリオは、ＢｉｏＡＰＩ＿Ｅｎｒｏｌｌ関数が呼ばれることにより開始する。
【００４２】
先ず、ステップ（以下、ステップをＳで示す。）１０において、変数の初期化がなされる。変数には、試行回数、取得（キャプチャ）回数があり、初期化により、これらの変数が０となる。
【００４３】
次に、Ｓ２０において、試行回数に１が加算される。
【００４４】
次に、Ｓ３０において、生体情報の取得が行われる。すなわち、登録手段６４が、ＢｉｏＳＰＩ＿Ｃａｐｔｕｒｅ関数を呼び出す。
【００４５】
次に、Ｓ４０において、生体情報の取得が成功したか否かの判定が行われる。Ｓ４０では、ＢＳＰ４０のデバイス制御手段４２が、取得された生体情報から対象領域を抽出し、所定の精度で生体情報が取得されているか否かを判定する。判定の結果は、ＢｉｏＳＰＩ＿Ｃａｐｔｕｒｅ関数の実行結果として、ＢｉｏＡＰＩフレームワーク６０に送られる。登録手段６４は、受け取ったＢｉｏＳＰＩ＿Ｃａｐｔｕｒｅ関数の実行結果に応じて、生体情報の取得が成功した場合は、続いてＳ５０を行い。失敗した場合は、続いてＳ４５の処理を行う。
【００４６】
Ｓ４０における判定の結果、生体情報の取得が失敗した場合は、Ｓ４５において、試行回数が予め定められた最大試行回数と比較される。試行回数が最大試行回数以上の場合（Ｙｅｓ）は、登録処理を終了する。一方、試行回数が最大試行回数より小さい場合（Ｎｏ）は、再びＳ２０〜Ｓ４０のステップを行う。
【００４７】
Ｓ４０における判定の結果、生体情報の取得が成功した場合は、Ｓ５０において、取得回数に１が加算される。
【００４８】
次に、Ｓ６０において、登録コードの生成が行われる。すなわち、登録手段６４がＢｉｏＳＰＩ＿ＣｒｅａｔｅＴｅｍｐｌａｔｅ関数を呼び出す。この過程では、ＢＳＰ４０の登録コード作成手段４４が、取得された生体情報から生体認証に必要な特徴を抽出し、所定のフォーマットにコード化する。このとき、登録の対象となる利用者の情報も付加される。登録コード作成手段４４は、登録コードをＤＢ６２に格納する。なお、利用者の情報は、入出力手段７０を用いて入力されても良いし、ＩＤカードのような利用者を特定する手段を用いても良い。
【００４９】
次に、Ｓ７０において、登録コードの生成が成功したか否かの判定が行われる。ここで、特徴の抽出に成功したか否かの判定の結果は、ＢｉｏＳＰＩ＿ＣｒｅａｔｅＴｅｍｐｌａｔｅ関数の実行結果として、ＢｉｏＡＰＩフレームワーク６０に送られる。登録手段６４は、受け取った実行結果に応じて、登録コードの生成が成功した場合は、登録処理を終了し、失敗した場合は、続いてＳ７５の処理を行う。
【００５０】
Ｓ７０における判定の結果、生体情報の取得が失敗した場合は、Ｓ７５において、取得回数が予め定められた最大取得回数と比較される。取得回数が最大取得回数以上の場合は、登録処理を終了する。一方、取得回数が最大取得回数より小さい場合は、再びＳ２０〜Ｓ７０のステップを行う。
【００５１】
照合手段６６は、照合処理（照合シナリオ）を実行する機能手段であり、デバイス制御手段４２、照合コード作成手段４６及び１対１照合手段４８に指示を送ることにより、照合処理を行う。アプリケーション８０が、ＢｉｏＡＰＩ関数として、ＢｉｏＡＰＩ＿Ｖｅｒｉｆｙ関数を呼び出すと、照合手段６６が照合処理を行う。この照合手段６６は、ＢｉｏＳＰＩ＿Ｃａｐｔｕｒｅ関数を呼び出すことによりデバイス制御手段４２を作動させ、ＢｉｏＳＰＩ＿Ｐｒｏｃｅｓｓ関数を呼び出すことにより照合コード作成手段４６を作動させ、また、ＢｉｏＳＰＩ＿ＶｅｒｉｆｙＭａｔｃｈ関数を呼び出すことにより１対１照合手段４８を作動させる。
【００５２】
図３を参照して照合シナリオの一例について説明する。図３は、照合シナリオの処理フローの一例である。なお、ここでは、ＧＵＩなど入出力手段６８に係る処理についての説明を省略している。
【００５３】
照合シナリオは、ＢｉｏＡＰＩ＿Ｖｅｒｉｆｙ関数が呼ばれることにより開始する。
【００５４】
先ず、Ｓ１２において、変数の初期化がなされる。変数には、試行回数、取得回数及び照合回数があり、初期化により、これらの変数が０となる。また、トランザクション回数を１とする。
【００５５】
続いて、Ｓ２０〜Ｓ５０の過程が行われる。なお、Ｓ２０〜Ｓ５０までの過程は、登録シナリオと同様なので、説明を省略する。
【００５６】
Ｓ５０において、取得回数に１が加算された後、Ｓ６２において、照合コードの生成が行われる。この過程では、照合手段６６がＢｉｏＳＰＩ＿Ｐｒｏｃｅｓｓ関数を呼び出す。
【００５７】
次に、Ｓ７２において、照合コードの生成が成功したか否かの判定が行われる。この過程では、ＢＳＰ４０の照合コード作成手段４６が、取得された生体情報から生体認証に必要な特徴を抽出し、所定のフォーマットにコード化する。
【００５８】
ここで、特徴の抽出に成功したか否かの判定の結果は、ＢｉｏＳＰＩ＿Ｐｒｏｃｅｓｓ関数の実行結果として、ＢｉｏＡＰＩフレームワーク６０に送られる。照合手段６６は、受け取った実行結果に応じて、照合コードの生成が成功した場合は、続いてＳ９０を行い。失敗した場合は、続いてＳ７７の処理を行う。
【００５９】
Ｓ７２における判定の結果、照合コードの生成が失敗した場合は、Ｓ７７において、取得回数が予め定められた最大取得回数と比較される。取得回数が最大取得回数以上の場合は、照合処理を終了する。一方、取得回数が最大取得回数より小さい場合は、再びＳ２０〜Ｓ７２のステップを行う。
【００６０】
Ｓ７２における判定の結果、生体情報の取得が成功した場合は、Ｓ９０において、照合回数に１を加算する。
【００６１】
次に、Ｓ１００において、ＤＢ６２から登録コードが読み出される。この過程では、照合手段６６が、ＢｉｏＳＰＩ＿ＶｅｒｉｆｙＭａｔｃｈ関数を呼び出す。この場合、ＢｉｏＳＰＩ＿ＶｅｒｉｆｙＭａｔｃｈ関数の引数として、１対１照合を行う利用者の情報が、１対１照合手段４８に送られる。１対１照合手段４８は、ＤＢ６２から、利用者の登録コードを呼び出す。
【００６２】
次に、Ｓ１１０において、１対１照合手段４８が、ＤＢ６２から読み出した登録コードと、照合コードとで１対１照合を行う。
【００６３】
次に、Ｓ１２０において、１対１照合が成功したか否かの判定が行われる。この判定は、登録コードと照合コードを比較した類似度が、所定の閾値以上であるか、閾値より小さいかにより行われる。類似度が閾値以上の場合は、登録コードと照合コードとが一致していると判定される。すなわち、１対１照合による本人認証が成功と判定される。一方、類似度が閾値より小さい場合は、登録コードと照合コードとが不一致であると判定される。すなわち、１対１照合による本人認証は失敗と判定される。
【００６４】
なお、閾値が小さいと、本人認証の成功率は高くなるが、その一方で、他人を誤って受理する率が高くなる。また、閾値が大きいと、他人を誤って受理する率は低くなるが、本人認証の成功率も低くなる。閾値は、ＢＳＰ４０の提供者あるいは運用者などにより、適宜定められる。
【００６５】
Ｓ１２０において、照合処理が成功と判定された場合は、処理を終了する。一方、失敗と判定された場合は、Ｓ１２５において、照合回数が予め定められた最大照合回数と比較される。照合回数が最大照合回数以上の場合（Ｙｅｓ）は、続いて、Ｓ１２７の過程が行われる。一方、照合回数が最大照合回数より小さい場合（Ｎｏ）は、再びＳ２０〜Ｓ１２０のステップを行う。
【００６６】
Ｓ１２７において、トランザクション回数が予め定められた最大トランザクション回数と比較される。トランザクション回数が最大トランザクション回数以上の場合は、照合処理を終了する。一方、トランザクション回数が最大トランザクション回数より小さい場合は、Ｓ１２９のステップを行う。
【００６７】
Ｓ１２９では、トランザクション回数に１を加算するとともに、試行回数、取得回数及び照合回数を０とする。その後、再びＳ２０〜Ｓ１２０のステップを行う。
【００６８】
ここで、照合シナリオは、例えば、Ｓ１２〜Ｓ１２５までのステップにより照合が成功しなかった場合に、この一連のステップを複数回許容する場合がある。この繰り返しの回数がトランザクション回数である。例えば、最大トランザクション回数が３の場合は、照合処理の失敗が２回まで許容される。
【００６９】
なお、ここでは、トランザクション回数を照合シナリオで用いる例について説明したが、図２を参照して説明した登録シナリオで用いても良い。
【００７０】
この実施形態の生体認証装置１０によれば、登録シナリオや照合シナリオを実行する登録手段６４や照合手段６６がＢｉｏＡＰＩフレームワーク６０内に設けられている。このため、アプリケーション８０が異なる場合であっても、同一のシナリオで、登録や照合が行われるので、同一基準の評価が可能になる。また、全てのＢＳＰに対して評価結果の項目を容易に統一できる。また、シナリオ評価と同じシナリオが、運用時にも用いられるので、運用環境における精度評価を継続的に行うことも可能になり、シナリオ評価の運用時における再現性なども評価可能になる。
【００７１】
また、登録手段６４や照合手段６６がＢｉｏＡＰＩフレームワーク６０内に設けられることで、シナリオがアプリケーションに設けられる従来のシステムに比べて、アプリケーションの開発負荷が軽減される。
【００７２】
この入出力手段の機能は、生体認証において、通常用いられる。従って、この入出力手段をＢｉｏＡＰＩフレームワークに設けることで、入出力手段がＢＳＰに設けられる従来のシステムに比べて、ＢＳＰの開発負荷が軽減される。
【００７３】
また、ＢｉｏＡＰＩフレームワーク６０が、さらに、登録手段６４及び照合手段６６の処理結果を示すレポートを作成するレポート作成手段７０を備えるのが良い。レポートの項目は、例えば、ＩＳＯ／ＩＥＣ  １９７９５の規定に従って定めれば良い。
【００７４】
このレポート作成手段７０を、ＢｉｏＡＰＩフレームワーク６０内に設けることで、評価対称のシステムが複数ある場合であっても、シナリオ評価のレポートの項目、すなわち評価結果を統一することができる。また、運用評価においても、シナリオ評価と同一の項目で評価結果を得ることができる。このため、精度等の継続監視が容易になる。
【００７５】
また、この実施形態の生体認証装置１０は、ＤＢ６２をＢｉｏＡＰＩフレームワーク６０内に設けている。従来の生体認証装置のように、ＤＢがＢＳＰに設けられている場合には、新たなＢＳＰを導入する場合に、既にシステムを利用している利用者の全てについて、ＤＢの登録をしなおす必要がある。これに対し、この実施形態の生体認証装置では、運用している生体認証装置が備えているＢＳＰを新たなＢＳＰに変更する場合に、既存のＤＢをそのまま用いることができる。
【００７６】
既存のＢＳＰ＿Ａ及びデバイス＿Ａ（技術Ａ）を、新たにＢＳＰ＿Ｂ及びデバイス＿Ｂ（技術Ｂ）に変更する場合の手順について、説明する。なお、技術Ａによる登録コードＡと、技術Ｂによる登録コードＢとの間には、登録コードのフォーマットにおいて互換性があるものとする。
【００７７】
先ず、すでに技術Ａを用いてＤＢ６２に登録されている利用者から被験者を選択し、その被験者に、技術Ｂを用いた登録をさせる。この場合、ＤＢ６２には、技術Ａによる登録コードＡと、技術Ｂによる登録コードＢの両者を格納させる。照合の際には、登録コードＡと登録コードＢの両者に対して、技術Ｂを用いて照合を行う。
【００７８】
この技術Ｂを用いた、登録コードＡと登録コードＢに対するＦＡＲやＦＲＲの値から、他の利用者に再登録を促すかどうかは、運用者が容易に判断できる。再登録が不要な利用者については、技術Ａによる登録コードに対して、技術Ｂによる照合を行うことができる。このため、この実施形態の生体認証装置は、技術Ａを技術Ｂに変更する場合に、全ての利用者に対する再登録が不要になるなど、互換性に優れる。
【００７９】
ここでは、照合シナリオが１対１照合を用いて実行する例について説明したが、１対多照合を利用可能な構成にしても良い。この場合、ＢＳＰ４０に、１対多照合手段（図示を省略する。）を設ければよい。
【００８０】
１対多照合手段は、照合コード作成手段４６が作成した照合コードと、ＤＢ６２から読み出された複数の登録コードとを照合する。この場合、１対多照合手段は、格納されている全ての登録コードをＤＢ６２から読み出す。１対多照合手段は、照合コードと、複数の登録コードとを照合して、照合コードが、既に登録済みの登録コードと一致するか否かを判定する。ＢｉｏＡＰＩフレームワーク６０が、ＢｉｏＳＰＩ関数として、ＢｉｏＳＰＩ＿ＩｄｅｎｔｉｆｙＭａｔｃｈ関数を呼び出すと、１対多照合手段が作動する。
【００８１】
なお、ＢＳＰ４０が１対多照合手段を備えない場合であっても、１対１照合手段を用いて、１対多照合を実現することができる。この場合、ＢｉｏＳＰＩ＿ＶｅｒｉｆｙＭａｔｃｈ関数の引数として、複数の登録コードを示す情報が、１対１照合手段４８に送られる。１対１照合手段４８が、ＤＢ６２から、全ての登録コードを順に呼び出して、繰り返し１対１照合を行うことにより１対多照合が行われる。
【００８２】
ここで、運用時に精度評価結果として、誤受入率（ＦＡＲ）値を得るためには、照合コードと、ＤＢ中の登録コードとの全件照合を行い、他人同士のコードで照合した際の類似度などを統計的に分析する必要がある。
【００８３】
しかしながら、１対多照合には、時間がかかる場合がある。このため、利用者が生体認証を行うたびに、ＤＢに登録されている全ての登録コードに対して照合を行うのは、時間がかかったりＣＰＵ負荷が大きくなったりするなどの理由で従来の生体認証装置には適用できないことが多い。これに対し、この実施形態の生体認証装置では、分割型全件照合が可能になる。
【００８４】
図４を参照して分割型全件照合について説明する。図４は、分割型全件照合の処理フローの一例である。なお、この分割型全件照合は、図３を参照して説明した照合シナリオのＳ１２０の判定により、成功と判定された後に行うことができる。
【００８５】
Ｓ１２０の後、Ｓ１３０において、他人登録コード読出を行う。すなわち、１対１照合手段４８が、ＤＢ６２から利用者以外の登録コード（他人登録コード）を読み出す。
【００８６】
次に、Ｓ１４０において、他人照合、すなわち、他人登録コードと照合コードとの１対１照合を行う。照合を行った後、Ｓ１５０において照合人数に１を加算する。
【００８７】
次にＳ１６０において、照合人数を最大照合人数と比較する。照合人数が最大照合人数より小さい場合は、再びＳ１３０を行う。一方、照合人数が最大照合人数以上の場合は、処理を終了する。
【００８８】
例えば、分割型全件照合の精度算出までにかかる日数をｄ、利用者が一日に行う平均の利用回数をｎ、データベースに登録されている登録コードの数をｅとする。この場合、利用者が行う１回の利用にあたり、最大照合人数ａとして、ｅ／（ｄ×ｎ）人分の登録コードとの照合を行うと、日数ｄの間に全件照合が完了する。
【００８９】
例えば、精度評価に要する日数ｄを２５０日とし、利用者の平均の利用回数ｎを２回とし、ＤＢに登録されている登録コードの数ｅを１０００件とすると、最大照合人数ａは、２（＝１０００／（２５０×２）となる。この場合、利用者の１回の照合ごとに、２回の他人照合を追加するだけですむので、ＣＰＵ負荷などに与える影響を軽減することができる。
【００９０】
なお、この場合、利用者の登録コードに、例えば照合回数の情報をインデックスとして付加しておき、この照合回数を用いて他人の登録コードを取り出す構成にすれば、毎回の照合における他人照合の登録コードが変わる。すなわち、同じ登録コードを繰り返し使用することを避けることができる。
【００９１】
(生体認証装置の変形例)
上記の実施形態では、生体認証装置が、１つの装置で構成される例について説明したが、インターネットなどネットワークを介して接続されている複数の生体認証装置で構成しても良い。
【００９２】
図５を参照して、第１の生体認証装置と第２の生体認証装置が、インターネットを介して接続される例について説明する。図５は、この実施形態の生体認証装置の変形例を示す概略図である。
【００９３】
第１の生体認証装置１０ａは、アプリケーション８０ａとＢｉｏＡＰＩフレームワーク６０ａを備えている。また、第２の生体認証装置１０ｂは、ＢｉｏＡＰＩフレームワーク６０ｂとＢＳＰ４０ｂを備えて構成されている。このとき、第１及び第２の生体認証装置１０ａ及び１０ｂが備えるＢｉｏＡＰＩフレームワーク６０ａ及び６０ｂは、ＢｉｏＡＰＩインターワーキングプロトコル（ＢＩＰ：ＢｉｏＡＰＩ  Ｉｎｔｅｒｗｏｒｋｉｎｇ  Ｐｒｏｔｏｃｏｌ）７２ａ及び７２ｂを含んでいる。ＢＩＰ７２ａ及び７２ｂは、ＢｉｏＡＰＩ関数をネットワークデータに変換し、ネットワークを経て接続された他のＢＩＰと、ネットワークデータのやり取りをする機能を有している。
【００９４】
例えば、第１の生体認証装置１０ａのアプリケーション８０ａが、ＢｉｏＡＰＩ＿Ｅｎｒｏｌｌ関数を呼び出すと、ＢｉｏＡＰＩフレームワーク６０ａ内のＢＩＰ７２ａが、ＢｉｏＡＰＩ関数の情報をネットワークデータに変換して、インターネット９０を介して第２の生体認証装置１０ｂに送る。
【００９５】
第２の生体認証装置１０ｂのＢｉｏＡＰＩフレームワーク６０ｂは、第１の生体認証装置１０ａから受け取った指示に応じて、登録シナリオ又は照合シナリオを実行する。一方、この登録シナリオ又は照合シナリオの実行結果は、インターネット９０を経て第１の生体認証装置１０ａのＢｉｏＡＰＩフレームワーク６０ａに送られる。
【００９６】
ＢｉｏＡＰＩフレームワーク６０ａは、ＢｉｏＡＰＩフレームワーク６０ｂからインターネット９０を経て受け取った処理結果、すなわち、登録シナリオ又は照合シナリオの実行結果をアプリケーション８０ａに送る。アプリケーション８０ａは、ＢｉｏＡＰＩフレームワーク６０ａに対して、ＢｉｏＡＰＩ関数を呼び出すことにより与えた指示に基づく処理結果を、ＢｉｏＡＰＩ関数の実行結果として、ＢｉｏＡＰＩフレームワーク６０ａから受け取る。このため、アプリケーション８０ａは、インターネット９０の存在を意識することなく、他の生体認証装置に指示を送り、その指示に基づいて処理された処理結果を受け取ることができる。
【符号の説明】
【００９７】
１０、１１０    生体認証装置    
２０、１２０    デバイス
３０    制御部    
４０、１４０    バイオメトリックサービスプロバイダ（ＢＳＰ）
４２    デバイス制御手段
４４    登録コード作成手段
４６    照合コード作成手段
４８    １対１照合手段
６０、１６０    ＢｉｏＡＰＩフレームワーク
６２    データベース（ＤＢ）
６４    登録手段
６６    照合手段
６８    入出力手段
７０    レポート作成手段    
８０、１８０    アプリケーション        
９０    インターネット    
【図１】
2011118680.tif 000003
【図２】
2011118680.tif 000004
【図３】
2011118680.tif 000005
【図４】
2011118680.tif 000006
【図５】
2011118680.tif 000007
【図６】
2011118680.tif 000008