(57)【要約】      （修正有）【課題】生体センサー装置及びシステムの速度を改善し且つコストを低下させる。【解決手段】格納するデータは特別安全処理ハードウエア及び／又はソフトウエアによって暗号化及び／又は署名させることが可能である。認証された生体データのデータベース（例えば、認証されたユーザの指紋の全て又は一部を表すパターン又は重要な特徴）は暗号化するか又は暗号化しないかのいずれか又は両方でホストシステム上に格納することが可能である。多数の登録済み指紋のデータベースに対する予備的マッチングは特別安全処理ハードウエア／ソフトウエアの処理負担を軽減させるためにシステムプロセッサによって達成することが可能である。データの不正変更又は生体識別によって与えられるセキュリティを打ち破るためのその他の努力を阻止するために、最終的なマッチ確認は特別安全処理ハードウエア／ソフトウエアの排他的制御内に留まる。【選択図】図１
2009151788.tif 000002
【特許請求の範囲】
【請求項１】
ホストシステム資源が、前記ホストシステム資源と別であるがそれと通信する
安全生体データシステムに関連する生体認証の格納、処理又は格納及び処理の両方のいずれかのために使用されるシステムにおいて、
ホストデータ処理システムであって、ホストデータプロセッサとホストデータ格納装置とを包含しているホストデータ処理システム、
生体データ採取装置と、前記ホストデータプロセッサから独立的に動作可能であり且つ前記生体データ採取装置及び前記ホストデータ処理システムと通信可能に結合されている生体データプロセッサと、生体データ暗号化エンジンと、生体データ暗号解読エンジンとを包含している生体データ処理システム、
を有しており、前記各エンジンは前記生体データ処理システム内において動作するものであり、前記ホストデータ処理システム及び前記生体データ処理システムは、
前記生体データ採取装置をしてユーザの生体データを採取させ、
前記生体データ暗号化エンジンをして前記ユーザの生体データを暗号化させ、
前記生体データ処理システムをして前記暗号化されたユーザの生体データを前記ホストデータ処理システムへ転送させ、
前記生体データ暗号解読エンジンによって暗号解読するために前記生体データ処理システムへ通信するために前記ホストデータ処理システムによって検索可能であるような態様で、前記ホストデータ処理システムをして前記ホストデータ格納装置上に前記暗号化されたユーザの生体データを格納させる、
べくプログラムされているシステム。
【請求項２】
請求項１において、該生体データ処理システムは、更に、該ユーザの生体データを暗号化し且つ暗号解読する場合に使用されるセッションキーを格納するために前記生体データ暗号化及び暗号解読エンジンへ通信可能に結合されているセッションキー格納装置を有しており、該セッションキーは、そうでなければ、該生体データ処理システム外部においてアクセス不可能であるシステム
【請求項３】
請求項１において、該生体データ処理システムは、更に、暗号化の前に該ユーザの生体データを処理するために前記生体データ採取装置及び前記生体データ暗号化エンジンへ通信可能に結合されている予備処理装置を有しているシステム。
【請求項４】
請求項１において、前記生体データ採取装置は、ユーザの指先におけるか又はそれに近接している皮膚の表面又は構造の特性を決定し且つそれからユーザの生体データを発生することが可能な指紋スキャナーであるシステム。
【請求項５】
請求項１において、前記ユーザの生体データがユーザの指紋パターンの二次元画像に対応するデータを有しているシステム。
【請求項６】
請求項１において、該生体データ処理システムが、更に、
前記ホストデータ格納装置から受け取られ且つ前記生体データ暗号解読エンジンによって暗号解読されたユーザの生体データからユーザの生体テンプレートを発生するために前記生体データ暗号解読エンジンに結合されている安全生体テンプレート発生器、
前記安全生体テンプレート発生器に通信可能に結合されているマッチャー、
前記マッチャーへ通信可能に結合されており且つ少なくとも一つの前に登録した生体テンプレートを包含しているデータベースを格納しているテンプレートデータベース格納装置、
を有しており、前記マッチャーが、前記ユーザの生体テンプレートと前記少なくとも一つの登録されている生体テンプレートの内のいずれかとの間にマッチが存在するか否かを比較し且つ決定し且つ前記生体データ処理システム外部で使用するためにそれを表す信号を供給するシステム。
【請求項７】
請求項６において、該生体データ処理システムが、更に、該ユーザの生体データを暗号化し且つ暗号解読する場合に使用されるセッションキーを格納するために前記生体データ暗号化及び暗号解読エンジンへ通信可能に結合されているセッションキー格納装置を有しており、該セッションキーは、そうでなければ、該生体データ処理システム外部においてアクセス不可能であるシステム。
【請求項８】
請求項６において、該生体データ処理システムが、更に、その暗号解読に続いてであるが前記マッチャーによる前記比較及び決定の前に該ユーザの生体データを処理するために前記暗号解読エンジンと前記マッチャーとに通信可能に結合されている後処理装置を有しているシステム。
【請求項９】
請求項６において、前記生体データがユーザの指紋パターンの二次元画像に対応するデータを有しているシステム。
【請求項１０】
請求項１において、
前記ホストデータ処理システムが、更に、
少なくとも一つの登録済み生体テンプレートを包含しているデータベースを格納しているホスト生体テンプレート格納装置、
を有しており、
前記生体データ処理システムが、更に、
前記ホストデータ格納装置から受け取られ且つ前記生体データ暗号解読エンジンによって暗号解読されるユーザの生体データからユーザの生体テンプレートを発生するために前記生体データ暗号解読エンジンへ結合されている安全生体テンプレート発生器、及び
前記ホスト生体テンプレート格納装置及び前記安全生体テンプレート発生器へ通信可能に結合されているマッチャー、
を有しており、前記マッチャーが、前記ユーザの生体テンプレートと前記少なくとも一つの登録済み生体テンプレートのいずれかとの間にマッチが存在するか否かを比較し且つ決定し且つ前記生体データ処理システム外部で使用するためにそれを表す信号を供給するシステム。
【請求項１１】
請求項１０において、前記少なくとも一つの登録済み生体テンプレートが暗号化された形態で前記ホスト生体テンプレート格納装置内に格納されており、且つ、更に、前記マッチャーが前記ユーザの生体テンプレートと前記少なくとも一つの登録済み生体テンプレートのいずれかの暗号解読したバージョンとの間にマッチがあるか否かを比較し且つ決定するシステム。
【請求項１２】
請求項１１において、前記生体データ暗号解読エンジンが、前記マッチャーによるマッチングの前に、前記少なくとも一つの登録済み生体テンプレートの内の少なくとも一つを暗号解読するように構成されているシステム。
【請求項１３】
生体データの使用によりユーザのアイデンティティが前に登録したユーザのアイデンティティとマッチするか否かを決定するシステムにおいて、
（Ａ）ホストデータ処理システムが設けられており、前記ホストデータ処理システムは、
（ｉ）通信可能に結合されており且つそれにより及びその間の通信を制御するホストデータプロセッサ、
（ｉｉ）ホスト生体データ格納装置、
（ｉｉｉ）少なくとも一つの登録済み生体テンプレートのデータベースを格納しているホスト生体テンプレート格納装置、
（ｉｖ）前記ホスト生体データ格納装置内に包含されているデータから信頼されないユーザの生体テンプレートを発生するために前記ホスト生体データ格納装置へ通信可能に接続されている非安全生体テンプレート発生器、及び
（ｖ）前記非安全生体テンプレート発生器によって供給される信頼されないユーザの生体テンプレートと前記ホスト生体テンプレート格納装置によって供給される前記登録済み生体テンプレートの内のいずれかとの間にマッチがあるか否かを比較し且つ決定し、且つ前記比較及び決定の結果を表す信号を供給するために前記ホスト生体テンプレート格納装置及び前記非安全生体テンプレート発生器に通信可能に接続されているホストテンプレートマッチャー、
を有しており、
（Ｂ）生体データ処理システムが設けられており、前記生体データ処理システムは、
（ｉ）前記ホストデータプロセッサから独立的に動作可能であり且つ通信可能に結合されており且つそれにより且つそれの間で通信を制御する生体データプロセッサ、
（ｉｉ）生体データ採取装置、
（ｉｉｉ）少なくとも一つの登録済み生体テンプレートのデータベースが格納されている生体データ処理システム登録済み生体テンプレート格納装置、
（ｉｖ）前記生体データ処理システム内において動作可能であり、ユーザの生体データを暗号化するために前記ホストデータ格納装置へ通信可能に結合されている生体データ暗号化エンジン、
（ｖ）前記生体データ処理システム内において動作可能であり、前記ホストデータ格納装置から受け取り且つ登録済みのユーザの生体データを暗号解読するために前記ホスト生体データ格納装置へ通信可能に結合されている生体データ暗号解読エンジン、
（ｖｉ）暗号解読されたユーザの生体データを受け取り且つそれから信頼されるユーザの生体テンプレートを発生するために前記暗号解読エンジンに通信可能に結合されている安全テンプレート発生器、
（ｖｉｉ）前記生体データ処理システム登録済み生体テンプレート格納装置へ通信可能に結合されており且つ前記暗号解読された生体データを受け取るために結合されている生体データ処理システムテンプレートマッチャー、
を有しており、
（Ｃ）前記ホストデータ処理システム及び前記生体データ処理システムは、
（ｉ）前記生体データ採取装置をしてユーザの生体データを採取させ、
（ｉｉ）前記生体データ暗号化エンジンをして前記ユーザの生体データを暗号化させ、
（ｉｉｉ）前記生体データ処理システムをして前記暗号化されたユーザの生体データ及び暗号化されていないユーザの生体データを前記ホストデータ処理システムへ転送させ、
（ｉｖ）前記ホストデータ処理システムをして前記暗号化されたユーザの生体データ及び前記暗号化されていないユーザの生体データを、前記ホストデータ処理システム及び前記生体データ処理システムによって検索可能であるような態様で前記ホストデータ格納装置上に格納させ、
（ｖ）前記非安全生体テンプレート発生器をして前記ホストデータ格納装置上に格納されている前記暗号化されていないユーザの生体データから信頼されないユーザの生体テンプレートを発生させ、
（ｖｉ）前記ホストテンプレートマッチャーをして前記非安全生体テンプレート発生器によって発生された前記信頼されないユーザの生体テンプレートと前記ホスト生体テンプレート格納装置によって供給される前記登録済み生体テンプレートのいずれかとの間にマッチが存在するか否かを比較させ且つ決定させ、且つこの様なマッチが決定される場合には、前記登録済み生体テンプレートの内のいずれが前記信頼されないユーザの生体テンプレートとマッチするかの表示を前記生体データ処理システムテンプレートマッチャーへ供給し、
（ｖｉｉ）前記生体データ暗号解読エンジンをして前記ホスト生体データ格納装置上に格納されている前記暗号化されたユーザの生体データを受け取らせ且つ暗号解読させ、
（ｖｉｉｉ）前記安全テンプレート発生器をして前記暗号解読されたユーザの生体データを使用して信頼されるユーザの生体テンプレートを発生させ、
（ｉｘ）前記生体データ処理システムテンプレートマッチャーをして前記信頼されるユーザの生体テンプレートと前記生体データ処理システムテンプレート格納装置内に格納されており且つ前記ホストテンプレートマッチャーによって識別された前記登録済み生体テンプレートとの間にマッチが存在するか否かを比較させ且つ決定させ、且つこの様なマッチが決定される場合には、該ユーザのアイデンティティが該前に登録したユーザのアイデンティティとマッチすることの表示を供給すべく、
プログラムされているシステム
【請求項１４】
生体データの使用によりユーザのアイデンティティが前に登録したユーザのアイデンティティとマッチするか否かを決定するためにホストデータ処理システムと安全生体データ処理システムとを包含するシステムにおいて、
（Ａ）前記ホストデータ処理システムが、
（ｉ）通信可能に結合されており且つそれにより且つそれの間での通信を制御するホストデータプロセッサ、
（ｉｉ）ホスト生体データ格納装置、
（ｉｉｉ）少なくとも一つの暗号化されていない登録された生体テンプレートのデータベースを格納している第１ホスト生体テンプレート格納装置、
（ｉｖ）少なくとも一つの暗号化された登録された生体テンプレートを格納している第２ホスト生体テンプレート格納装置、及び
（ｖ）前記安全生体データ処理システムによって供給される信頼されるユーザの生体テンプレートと前記第１ホスト生体テンプレート格納装置によって供給される前記登録済み生体テンプレートの内のいずれかとの間にマッチが存在するか否かを比較し且つ決定するために前記ホスト生体第１テンプレート格納装置及び前記安全生体データ処理システムへ通信可能に接続されているホストテンプレートマッチャー、
を有しており、
（Ｂ）前記安全生体データ処理システムが、
（ｉ）前記ホストデータプロセッサから独立的に動作可能であり且つ通信可能に結合されており且つそれにより且つそれの間での通信を制御する生体データプロセッサ、
（ｉｉ）生体データ採取装置、
（ｉｉｉ）少なくとも一つの登録済み生体テンプレートのデータベースを格納している生体データ処理システム登録済み生体テンプレート格納装置、
（ｉｖ）前記安全生体データ処理システム内において動作可能であり、ユーザの生体データを暗号化するために前記生体データ採取装置へ通信可能に結合されている生体データ暗号化エンジン、
（ｖ）前記安全生体データ処理システム内において動作可能であり、前記ホスト生体データ格納装置から受け取り且つ暗号化されているユーザの生体データを暗号解読するために前記ホスト生体データ格納装置へ通信可能に結合されている生体データ暗号解読エンジン、
（ｖｉ）前記安全生体データ処理システム内において動作可能であり、前記第２ホスト生体テンプレート格納装置から受け取り且つ少なくとも一つの暗号化されている登録済み生体テンプレートを暗号解読するために前記第２ホスト生体テンプレート格納装置へ通信可能に結合されている生体テンプレート暗号解読エンジン、
（ｖｉｉ）前記生体データ暗号解読エンジンからユーザの生体データを受け取り且つそれから安全ユーザ生体テンプレートを発生させる安全テンプレート発生器、
（ｖｉｉｉ）前記生体データ処理システム登録済み生体テンプレート格納装置へ通信可能に結合されており且つ前記暗号解読された生体データを受け取るべく結合されている生体データ処理システムテンプレートマッチャー、
を有しており、
（Ｃ）前記ホストデータ処理システム及び前記安全生体データ処理システムが、
（ｉ）前記生体データ採取装置をしてユーザの生体データを捕獲させ、
（ｉｉ）前記生体データ暗号化エンジンをして前記ユーザの生体データを暗号化させ、
（ｉｉｉ）前記安全生体データ処理システムをして前記暗号化されたユーザの生体データを前記ホストデータ処理システムへ転送させ、
（ｉｖ）前記ホストデータ処理システムをして前記暗号化されたユーザの生体データを前記ホスト生体データ格納装置上に格納させ、
（ｖ）前記ホストデータ処理システムをして前記ホスト生体データ格納装置上に格納されている前記暗号化されたユーザの生体データを前記安全生体処理システムへ供給させ、
（ｖｉ）前記生体データ暗号解読エンジンをして前記暗号化されたユーザの生体データを暗号解読させ、
（ｖｉｉ）前記安全テンプレート発生器をして前記暗号解読された暗号化されたユーザの生体データから信頼されたユーザの生体テンプレートを発生させ、
（ｖｉｉｉ）前記安全生体処理システムをして前記信頼されたユーザ生体テンプレートを前記ホストデータ処理システムへ供給させ、
（ｉｘ）前記ホストテンプレートマッチャーをして前記信頼されたユーザの生体テンプレートと前記第１ホスト生体テンプレート格納装置内に格納されている前記暗号化されていない登録済み生体テンプレートの内のいずれかとの間にマッチが存在するか否かを比較させ且つ決定させ、且つその様なマッチが決定される場合には、マッチとして識別された前記登録済み生体テンプレート又は複数のテンプレートの暗号化されたバージョンをして前記安全生体データ処理システムへ供給させ、
（ｘ）前記生体テンプレート暗号解読エンジンをして前記ホスト生体データ格納装置上でマッチとして識別された前記登録済み生体テンプレート又は複数のテンプレートの前記暗号化されたバージョンを受け取り且つ暗号解読させ、
（ｘｉ）前記安全生体データ処理システムテンプレートマッチャーをして前記信頼されたユーザの生体テンプレートと前記ホストテンプレートマッチャーによってマッチとして識別された前記登録済み生体テンプレート又は複数のテンプレートの前記暗号解読した暗号化バージョンとの間にマッチが存在するか否かを比較させ且つ決定させ、且つその様なマッチが決定される場合には、ユーザのアイデンティティが前に登録したユーザのアイデンティティとマッチすることの表示を供給するべく、
プログラムされているシステム。
【請求項１５】
請求項１４において、前記生体データ暗号解読エンジン及び前記生体テンプレート暗号解読エンジンが同一の暗号解読エンジンであるシステム。
【請求項１６】
請求項１４において、前記安全生体データ処理システムが、更に、該ユーザの生体データを暗号化し且つ暗号解読する場合に使用されるセッションキーを格納するために前記生体データ暗号化及び暗号解読エンジンへ通信可能に結合されているセッションキー格納装置を有しているシステム。
【請求項１７】
非安全ホストデータ処理システムへ通信可能に結合されている安全生体データ処理システムを使用して生体データを処理する方法において、
ユーザと関連するユーザの生体データを得るステップ、
前記安全生体データ処理システムの一部を形成する暗号化エンジンを使用して、前記ユーザの生体データを暗号化するステップ、
前記非安全ホストデータ処理システム内に、前記暗号化したユーザの生体データを格納するステップ、
前記安全生体データ処理システムによって前記暗号化したユーザの生体データを検索するステップ、
前記安全生体データ処理システムの一部を形成する暗号解読エンジンを使用して、前記暗号化したユーザの生体データを暗号解読するステップ、
前記安全生体データ処理システム内において、前記暗号解読したユーザの生体データを登録済み生体データと比較してそれらの間にマッチが存在するか否かを決定するステップ、及び
その様なマッチが決定される場合には、前記安全生体データ処理システム外部での使用のためにそれの表示を供給するステップ、
を有している方法。
【請求項１８】
請求項１７において、前記ユーザの生体データを得るステップが、ユーザの指先における又はそれに近接する皮膚の表面又は構造の特性を決定し且つそれからユーザの生体データを発生することを包含している方法。
【請求項１９】
請求項１８において、前記暗号化するステップ及び格納するステップがほぼ同じレートで且つユーザと関連するユーザの生体データを得る前記ステップの実施とほぼ同じ時間期間中に実施される方法。
【請求項２０】
請求項１７において、更に、前記暗号化の時にセッションキーを作成するステップ、前記セッションキーを前記安全生体処理システム内に格納し、且つ前記セッションキーを前記ユーザの生体データを暗号化し且つ後に前記暗号化されたユーザの生体データを暗号解読する前記ステップにおいて使用する、ことを包含している方法。
【請求項２１】
請求項１７において、更に、前記得られたユーザの生体データから安全ユーザ生体テンプレートを発生するステップを有しており、且つ、更に、前記比較ステップが、前記テンプレートと前記登録済み生体テンプレートの内のいずれか一つとの間でマッチが存在するか否かを決定するために前記安全ユーザ生体テンプレートを登録済み生体テンプレートと比較することを包含している方法。
【請求項２２】
請求項２１において、更に、前記安全生体データ処理システム外部の格納位置から前記登録済み生体データを得るステップを包含している方法。
【請求項２３】
請求項１７において、前記暗号解読及び比較ステップが前記得るステップ、暗号化ステップ及び格納ステップと異なるレートであるが並列して行うことが可能である方法。
【請求項２４】
生体データに基づいて個人を認証する方法において、
安全生体データ処理システム内においてユーザと関連するユーザの生体データを得るステップ、
前記安全生体データ処理システム内において前記ユーザの生体データを暗号化するステップ、
前記安全生体データ処理システム外部において前記暗号化したユーザの生体データを格納するステップ、
前記安全生体データ処理システム外部において前記ユーザの生体データを格納するステップ、
前記安全生体データ処理システム外部において前記ユーザの生体データから信頼されないユーザの生体テンプレートを発生するステップ、
前記安全生体データ処理システム内において前記格納されている暗号化されたユーザの生体データの内のどの部分が前記信頼されないユーザの生体テンプレートを発生させるために使用された部分に対応するかを決定するステップ、
前記安全生体データ処理システムによって、前記信頼されないユーザの生体テンプレートの発生に使用されたものと決定された前記格納されている暗号化されたユーザの生体データの部分のみを維持するステップ、
前記安全生体データ処理システム内において前記暗号化されたユーザの生体データの前記部分を暗号解読するステップ、
前記暗号解読したユーザの生体データから安全ユーザ生体テンプレートを発生するステップ、
前記安全生体データ処理システム内において前記安全ユーザ生体テンプレートを前記安全生体データ処理システム内に格納されている少なくとも一つの前に登録した生体テンプレートと比較してそれらの間にマッチが存在するか否かを決定するステップ、及び
その様なマッチが決定される場合には、前記安全生体データ処理システムの外部での使用のためにそれの表示を供給するステップ、
を有する方法。
【請求項２５】
生体データに基づいて個人を認証する方法において、
安全生体データ処理システム内においてユーザと関連するユーザの生体データを得るステップ、
前記安全生体データ処理システム内において前記ユーザの生体データを暗号化するステップ、
前記安全生体データ処理システム外部において前記暗号化したユーザの生体データを格納するステップ、
前記安全生体データ処理システム外部において前記ユーザの生体データを格納するステップ、
前記安全生体データ処理システム外部において前記ユーザの生体データから信頼されないユーザの生体テンプレートを発生するステップ、
前記安全生体データ処理システム外部において、前記信頼されないユーザの生体テンプレートが前記安全生体データ処理システム外部に格納されている少なくとも一つの前に登録した生体テンプレートの内のいずれかに対応するか否かを決定し且つ、存在する場合に、この様な登録済み生体テンプレートの内のどれが前記信頼されないユーザの生体テンプレートに対応するかの表示を、予備的マッチとして、前記安全生体データ処理システム内のマッチャーへ供給するステップ、
前記安全生体データ処理システムにより、前記安全生体データ処理システム外部に格納されている前記暗号化されたユーザの生体データを検索するステップ、
前記安全生体データ処理システム内において、前記検索された暗号化されたユーザの生体データを暗号解読するステップ、
前記安全生体データ処理システム内において、前記暗号解読されたユーザの生体データを維持するステップ、
前記安全生体データ処理システム内において、前記維持されている暗号解読されたユーザの生体データから安全なユーザの生体テンプレートを発生するステップ、
前記安全生体データ処理システム内において、前記安全なユーザの生体テンプレートを予備的マッチとして識別された前記信頼されないユーザの生体テンプレートに対応する前記安全生体データ処理システム内に格納されている少なくとも一つの前に登録した生体テンプレートに対して比較しＳて両者間にマッチが存在するか否かを決定するステップ、及び
この様なマッチが存在する場合には、前記安全生体データ処理システム外部での使用のためにそれの表示を供給するステップ、
を有する方法。
【請求項２６】
請求項２５において、更に、
前記安全生体データ処理システム内において前記格納されている暗号化されたユーザの生体データのどの部分が前記信頼されないユーザの生体テンプレートの発生において使用されたかを決定するステップ、
を有しており、
前記維持するステップが前記信頼されないユーザの生体テンプレートの発生において使用されたものと決定された前記格納されている暗号化されたユーザの生体データの部分のみを維持することを包含しており、
前記暗号解読するステップが少なくとも前記暗号化されたユーザの生体データの前記部分を暗号解読することを包含しており、
前記安全ユーザ生体テンプレートを形成するステップが前記暗号解読されたユーザの生体データの前記部分のみからこの様なテンプレートを形成することを包含している、
方法。
【請求項２７】
請求項２５において、前記生体データがユーザの指紋パターンの二次元画像に対応するデータを有している方法。
【請求項２８】
生体データに基づいて個人を認証する方法において、
安全生体データ処理システム内においてユーザと関連するユーザの生体データを得るステップ、
前記安全生体データ処理システム内において前記ユーザの生体データを暗号化するステップ、
前記安全生体データ処理システム外部において前記暗号化したユーザの生体データを格納するステップ、
前記安全生体データ処理システム外部において前記ユーザの生体データを格納するステップ、
前記安全生体データ処理システム外部において前記ユーザの生体データから信頼されないユーザの生体テンプレートを発生するステップ、
前記安全生体データ処理システム外部において前記信頼されないユーザの生体テンプレートが前記安全生体データ処理システム外部に格納された少なくとも一つの前に登録した生体テンプレートのいずれかに対応するか否かを決定し、且つ、そうである場合には、前記安全生体データ処理システムへどの前に登録した生体テンプレートが前記信頼されないユーザの生体テンプレートにマッチするかの表示を供給するステップ、
前記安全生体データ処理システムによって前記安全生体データ処理システム外部から前記格納されている暗号化された生体データを検索するステップ、
前記安全生体データ処理システムによって前記安全生体データ処理システム外部から前記マッチする登録済み生体テンプレートに対応する暗号化された登録されている生体テンプレートを検索するステップ、
前記安全生体データ処理システム内において前記暗号化されたユーザの生体データ及び前記暗号化された登録済み生体テンプレートを暗号解読するステップ、
前記安全生体データ処理システム内において前記暗号解読されたユーザの生体データから安全ユーザ生体テンプレートを発生するステップ、
前記安全生体データ処理システム内において前記安全ユーザ生体テンプレートを前記暗号解読された登録済み生体テンプレートと比較してそれらの間にマッチが存在するか否かを決定するステップ、及び
その様なマッチが決定される場合には、前記安全生体データ処理システム外部での使用のためにそれの表示を供給するステップ、
を有している方法。
【請求項２９】
請求項２８において、前記生体データがユーザの指紋パターンの二次元画像に対応するデータを有している方法。
【請求項３０】
個人を認証するために非安全格納装置上に生体識別データを安全に格納する方法において、
ユーザの生体データを得るステップ、
前記ユーザの生体データに対してデジタル署名を適用するために安全生体プロセッサを使用するステップ、
前記署名済みユーザの生体データを非安全格納装置へ転送するステップ、
前記安全生体プロセッサを使用して前記デジタル署名されたユーザの生体データを検索するステップ、
該デジタル署名を使用する該検索されたユーザの生体データの信憑性を決定するために前記安全生体プロセッサを使用するステップ、
前記安全生体プロセッサと関連する安全格納部上に該検索されたユーザの生体データの少なくとも一部を維持するステップ、
該検索されたユーザの生体データが信憑性のあるものと決定される場合には、該維持されているユーザの生体データを前に登録した生体データとの比較により該個人を認証すべく進行するステップ、
を有している方法。
【請求項３１】
請求項３０において、前記ユーザの生体データがユーザの指紋パターンの二次元画像に対応するデータを有している方法。
【請求項３２】
生体データに基づいて個人を認証する方法において、
安全生体データ処理システム内においてユーザと関連するユーザの生体データを得るステップ、
前記安全生体データ処理システム内において前記ユーザの生体データを暗号化するステップ、
前記安全生体データ処理システム外部において前記暗号化したユーザの生体データを格納するステップ、
前記安全生体データ処理システム外部において前記ユーザの生体データから信頼されないユーザの生体テンプレートを発生するステップ、
前記安全生体データ処理システム外部において前記信頼されないユーザ生体テンプレートが前記安全生体データ処理システム外部に格納されている少なくとも一つの前に登録した生体テンプレートのいずれかに対応するか否かを決定し、且つその様な登録済み生体テンプレートの内のいずれかが前記信頼されないユーザ生体テンプレートに対応する場合には、各々が前記安全生体データ処理システム外部に格納されている前記マッチする登録済み生体テンプレートの暗号化したバージョン及び前記暗号化したユーザの生体データをして前記安全生体データ処理システムへ供給させるステップ、
前記安全生体データ処理システム内において前記マッチする登録済み生体テンプレート及び前記検索された暗号化されたユーザの生体データを暗号解読させるステップ、
前記安全生体データ処理システム内において前記暗号解読されたユーザの生体データから信頼されるユーザ生体テンプレートを発生するステップ、
前記安全生体データ処理システム内において前記信頼されるユーザ生体テンプレートを前記マッチする登録済み生体テンプレートの前記暗号解読されたバージョンと比較してそれらの間にマッチが存在するか否かを決定するステップ、及び
その様なマッチが決定される場合に、前記安全生体データ処理システム外部での使用のためにそれの表示を供給するステップ、
を有している方法。
【請求項３３】
非安全ホストデータ処理システムへ通信可能に結合されている安全生体データ処理システムを使用して生体データを処理するためにそのシーケンス、シンタックス及びコンテントを処理可能な命令が格納されている機械読み取り可能な記録媒体において、前記命令が、
ユーザと関連するユーザの生体データを得ること、
安全生体データ処理システムの一部を形成している暗号化エンジンを使用して前記ユーザの生体データを暗号化すること、
前記非安全ホストデータ処理システム内において前記暗号化されたユーザの生体データを格納すること、
前記安全生体データ処理システムによって前記暗号化したユーザの生体データを検索すること、
前記安全生体データ処理システムの一部を形成する暗号解読エンジンを使用して前記暗号化したユーザの生体データを暗号解読すること、
前記安全生体データ処理システム内において前記暗号解読したユーザの生体データを登録済み生体データと比較してそれらの間にマッチが存在するか否かを決定すること、及び
その様なマッチが決定される場合には、前記安全生体データ処理システム外部での使用のためにそれの表示を供給すること、
を包含している記録媒体。
【請求項３４】
個人を認証するために非安全格納装置上に生体識別データを安全に格納するためにそのシーケンス、シンタックス及びコンテントを処理可能な命令が格納されている機械読み取り可能な記録媒体において、前記命令が、
ユーザの生体データを得ること、
前記ユーザの生体データに対してデジタル署名を適用するために安全生体プロセッサを使用すること、
前記署名したユーザの生体データを非安全格納装置へ転送すること、
前記安全生体プロセッサを使用して前記デジタル署名したユーザの生体データを検索し且つその少なくとも一部を前記安全生体プロセッサと関連する安全格納部に維持すること、
該デジタル署名を使用して該検索されたユーザの生体データの信憑性を決定するために前記安全生体プロセッサを使用すること、
該検索されたユーザの生体データが信憑性のあるものと決定される場合には、該維持されているユーザの生体データを前に登録した生体データと比較することにより該個人を認証すべく進行すること、
を包含している方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は安全なデータ処理に関するものであって、更に詳細には、採取したユーザの生体データの格納及び処理を助けるために安全生体データ採取システム外部の資源を安全に使用するための方法及び装置に関するものである。
【背景技術】
【０００２】
個人の識別及び／又は認証のための生体データの使用はポピュラーなセキュリティツールであったし且つそうであり続ける。例えば、指紋は各個人にユニークなものであるから、ユーザの指先における又はそれに近接した皮膚の表面又は構造の特性を採取し且つ比較し、且つそのデータからそのユーザの指紋パターンを表すユーザの生体データを発生させるための方法及び装置が開発されている。指紋パターン（通常指紋と呼ばれる）は、個人を認証するか、アイデンティティを検証するか、コンピュータ、部屋又は建物へのアクセスを許可するか等の目的のために登録済みパターンからなるライブラリ内のその他のパターンに対して比較される。或る装置及びシステムにおいては、指紋パターンデータはセンサー上を指先を通過させることによって指紋パターンデータが得られ、該センサーは該指先の多数の部分的「画像」を捕獲し、該画像は更なる解析のために単一の複合画像へ組み立てられるか又は正規化される。その他のシステムにおいては、その他の生体画像データを採取し且つセキュリティの目的のために使用することが可能である。
【０００３】
特徴テンプレートは、典型的に、採取された生体画像データから形成される。該テンプレート用の特徴は、全体的な指紋画像からの画像データ、該画像データから抽出された選択されたマニューシャ（minutiae）、又は興味の或る何らかのその他の特徴とすることが可能である。該特徴テンプレートは、前に登録（enrolled）した（又は登録（registered））指紋データを表す一つ又はそれ以上の格納されている登録された生体テンプレートに対して比較される。安全生体アクセスシステムは、該特徴テンプレートと一つ又はそれ以上の登録されている生体テンプレートの内のいずれか一つとの間のマッチの十分性に基づいてファイル、施設などへのアクセスを許可するか又は拒否する。
【０００４】
完全な指紋画像と対比して、テンプレートに関して処理することはシステムメモリ及び処理要求を著しく減少させ、且つ比較プロセスを著しくスピードアップさせる。然しながら、テンプレートの作成は、通常、計算資源に関して付加的な時間、処理及びメモリ要求を課すこととなる。テンプレートの発生のための計算条件についての付加的な詳細については以下に更に説明する。
【０００５】
多くのシステムにおいて、しばしば特別のハードウエア上に格納され且つ処理される、採取された生体画像データ、登録済みデータ、又は比較及び解析プロセスを、不正行為及び不適切な不正変更及び使用から保護するための手段が取られている。しばしば、この保護は、安全生体データ採取、格納及び解析要素を、しばしば安全なものではなく且つコンピュータウイルス、ハッキングなどの攻撃から侵害に屈しやすいホストシステムのプロセッサ及びメモリから分離させることを包含する。従って、コンピュータウイルス及びその他のセキュリティ（安全）攻撃による侵害に抗し且つ比較及び分析プロセスが特別のハードウエア資源上で行われるシステムは、しばしば、安全生体データ処理システムと呼称される。安全生体データ処理システムによって直接的に供給されるデータは不正変更、不正行為、ウイルス等に対して保護されているので、この様なデータは、ここでは、信頼されるデータと呼称する。安全品種ではないデータ処理システムによって供給されたデータは、不正変更されているか、ウイルスを包含しているか、又は生体マッチ結果が信頼することができないものであるような態様で侵害されている場合がある。従って、安全生体データ処理システム以外の資源によって供給されるデータは、ここでは、信頼されないデータと呼称する。
【０００６】
典型的に、生体データ解析はデータ採取よりも一層ゆっくりと進行する。従って、更なる処理の前に実時間で生体センサーから受け取ったデータをバッファするために著しいメモリ資源が必要とされる。例えば、指先がスキャンされ且つその指紋を表すデータが発生されると、それは後の解析及び識別のために実時間で確実に格納されねばならない。（入力してくるデータの一部は生体解析プロセスにおいて使用されている間に、付加的なデータが入力され且つ進行中の解析プロセスにおいて必要とされる迄格納されねばならない。）一方、いずれかの生体データ解析を開始する前に全てのデータが得られている場合がある。いずれの場合においても、解析プロセスにおいて必要とされる迄その信頼性を維持する態様でデータをバッファさせるためにデータ格納資源が必要とされる。生の生体データの量は極めて大きい場合があり、従って、著しい格納資源が必要とされる場合がある。１例として、８ビット１インチ平方指紋画像に対するＮＩＳＴ格納条件は５００ｄｐｉの画像分解能において２５０キロバイトである。
【０００７】
生体識別に対して必要とされる典型的な要素は、例えば、指紋の画像を採取するためのセンサー装置、データ解析を実施するためのプロセッサ、及び生の画像データ、処理した画像データ、特徴、及び登録済み生体テンプレート等を格納するための種々のメモリ要素を包含している。理論的には、生体データ解析を実施するためのプロセッサは、その他のシステム資源によって共用される汎用プロセッサとするか、又は専用の特別のカスタム集積回路の一部を形成することが可能である。即ち、該データ解析を実施する該プロセッサ及びメモリは、その中で生体センサーが動作する汎用コンピュータシステムの一部とすることが可能であり、又は生体センサーシステム自身の必須のコンポーネントとすることが可能である。パソコンのＣＰＵなどの汎用プロセッサ及びパソコンのＲＭＡ及びハードディスクドライブなどの一般的なメモリの使用は廉価なものであるが、典型的に、生体画像プロセスをホストシステムから分離するものではなく、従ってどのデータも信頼できないものとさせ且つコンピュータハッキングなどの脅威からの侵害に犯されやすいものとさせる。カスタムセキュリティハードウエハは、ハッキングからより良い保護を与えるものであるが、専用のハードウエア資源に対する必要性のために、一般的なコンピュータシステム資源よりも一層高価である。
【０００８】
実際上、セキュリティの懸念が高く、且つ指紋データは、典型的に、センサー装置に接続されている専用のカスタムデジタルハードウエア上でのバッファリング及び処理により信頼される態様で維持される。この様なメモリ及び処理用ハードウエハは、物理的に且つ暗号化した通信等の電子的セキュリティ手段による両方でホストシステムから分離されている。
【０００９】
例えば、生体識別装置の一つのクラスは、担体の一表面上に位置させたセンサーチップを包含している。該担体上の他の箇所に配設されているものは、データプロセッサ及びメモリである。これらのコンポーネントは、パソコン、携帯電話、ドアロック等のホストシステム内において動作可能である。これらのコンポーネントは、更に、ユーザが該センサーチップの該表面を横切って指先を滑らせると、そのユーザの指紋の複数の部分的画像が捕獲され且つ該メモリへ送られるように、互いに結合されている。該プロセッサは、次いで、該メモリ内の該画像へアクセスし、且つ、多数の技術の内の一つ又はそれ以上によって、該画像を処理し且つ、そのユーザの生の指紋が一つの登録済み指紋とマッチ即ち一致するか否かを決定するために、該画像を一つ又はそれ以上の前に登録した生体テンプレートと比較する。その比較結果は、次いで、該ホストシステムへ供給され、サーバ又は指紋識別を使用する全体的なシステムの他の要素に要求する。該生体識別装置プロセッサ又はメモリへのその他のシステムアクセスが許可されることはない。然しながら、この様な専用のハードウエア解決法は、従来、一般的なコンピューティング資源と比較して高価なものであり且つメモリ拘束型のものであった。
【００１０】
生体システム開発者等が遭遇したジレンマは、安全性が十分ではない一般的なシステムと、全体的なシステムのコストを著しく加算させる安全なシステムとの間で選択することを強制されることであった。特に、全体的なシステムのコストに対して専用のハードウエア、メモリ等に対する著しいコストを付加させること無しに、データ採取及び指紋解析のために必要とされるバッファリングを取り扱うために十分に安全なメモリ資源を具備する生体センサー装置を提供することは歴史的な挑戦であった。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
従って、本発明は、使用可能なホストシステム資源を使用して生体情報の安全な格納及び処理のためのアーキテクチャ及び技術に関するものである。本発明は、任意の生体セキュリティシステムに対して広く適用を有しており、特に、収集され且つ処理される生体データの量がかなりなものであり、且つ収集と、処理と、最終的な識別手順の間においてバッファリングが必要とされ、及び／又はいずれかの中間手順がユーザ生体データの収集及び認証の全体的なプロセスを関与させる場合である。
【課題を解決するための手段】
【００１２】
本発明の一つの側面によれば、実時間データ暗号化及び／又は実時間データ署名がデータ入力に際して使用されて、ホストシステムレベルにおいて使用可能なより低コストのメモリ資源内においてバッファリングするために、例えば、一般的なシステム格納部へ送られる前に生体入力データを実時間で電子的に安全なものとさせることを可能とする。この安全なものとされた一般的なシステム格納部は、次いで、実時間生体データ採取の時間及び場所と比較して後の時間において且つ異なる速度でアクセスすることが可能である。このアーキテクチャ及び技術の一つの利点は、実質的に減少されたコストで高レベルのハードウエアをベースとした生体セキュリティを提供することである。
【００１３】
ここにおいて使用されるように、生体データ処理システムは、特別の安全処理ハードウエア及び生体データ採取装置と関連してその上で動作可能な適宜のソフトウエアから構成されている。この様なハードウエアは、一つ又は幾つかの回路基板上の幾つかの通信可能に結合された集積回路から、又は、代替的に、データ処理及び／又は格納等のための単一の集積回路（システム・オン・チップ、即ちＳＯＣ）として構成することが可能である。典型的に、この様な特別安全処理ハードウエアは、その他の汎用又は「ホスト」コンピューティング及び格納資源であって、ここではホストプロセッサシステムと呼称しており、プロセッサと、ランダムアクセスメモリ（ＲＡＭ）と、ハードディスクドライブ等のその他のメモリ資源とを具備する一般的なパソコンシステムなどと関連して使用される。特別安全処理ハードウエアによって又はその上で行われるデータ処理及び／又は格納はここでは「オンチップ」と呼称し、一方汎用ホストプロセッサシステム及び／又はＲＡＭ又はハードディスクメモリなどのメモリを使用する処理及び／又は格納は「オフチップ」と呼称する（しかしながら、特別安全処理ハードウエアはそれ自身が単一のチップであることは必要ではなく、又は安全格納部の全てはマルチチップ形態における安全プロセッサからオフチップとすることが可能である。）
実時間データ暗号化及び／又は実時間データ署名を実施することにより、本発明は、ホストシステムレベルにおいて使用可能なより低コストのメモリ及びコンピューティング資源内におけるバッファ格納及び／又は処理のためにオフチップへ送られる前に生体入力データを実時間で電子的に安全なものとさせることを簡単化させる。安全オフチップ格納部内に格納されたデータは、次いで、実時間で実施されねばならない生体データ採取の時間及びペースと比較して後の時間において且つ異なる速度でアクセスすることが可能である。
【００１４】
本発明の別の側面によれば、プロセス及び関連するアーキテクチャが開示され、それは、生体データ採取装置と関連する特別安全処理ハードウエア内においてユニークで一時的な秘密（プライベート）セッションキーを安全なものとさせるためのステップ及び構成を包含している。各セッションに対して一時的でユニークなキーでエンコードすることにより、高レベルの暗号化及び／又は電子データ署名セキュリティが提供される。このことは、更に、不正行為及び誤認に対する非常に高いレベルのセキュリティを維持しながら、実時間生体データ採取の速度を生体データ解析及びマッチングの一層遅い速度から離脱させることを可能とする。
【００１５】
本発明の種々の実施例によれば、オフチップに格納された全てのデータは暗号化又はデジタル署名によって安全なものとされている。本発明の別の実施例によれば、オフチップに格納されるデータの幾つか又は全ては暗号化されないか又はデジタル署名されないが、データ処理のためにオフチップ資源に対して使用可能である。この様な実施例においては、この様なオフチップ資源から戻されるいずれかの実効的に信頼されないデータを使用／検証するための手段が設けられる。
【００１６】
上述したことは、本発明の多数の独特の側面、特徴及び利点の要約である。然しながら、この要約は網羅的なものではない。従って、本発明のこれらの及びその他の側面、特徴、及び利点は、特許請求の範囲に鑑みて以下の詳細な説明及び添付の図面から一層明らかなものとなるものである。
【発明を実施するための最良の形態】
【００１７】
本発明は、多数の異なる実施例の形態で実現することが可能であり、その内の或るものについて以下に説明する。これらの実施例に共通のものは、ユーザの生体入力データが安全ハードウエア上で収集され、オフチップで格納及び／又は処理され（例えば、ホストコンピュータのハードディスク上）、且つ、後に、例えば、処理、解析及び／又は格納のために該安全ハードウエアへ戻されるという概念である。
【００１８】
図１は、基本的なプロセスの一つの例示的実施例１０を示している。実施例１０によれば、米国特許第６，５８０，８１６号（引用によりここに取り込む）に開示されているスキャニング容量性半導体指紋検知器のような多様な電気的、光学的、圧力又はその他の検知装置１２の内の一つが、指紋のスキャン画像のようなユーザの生体データを得る。この得られたユーザの生体データ１４は、オプションとして、画像正規化（ここに引用により取り込む米国特許出願第１１／５６１，２３９号により教示されているようなもの）のような予備処理又はオンチップ予備処理ハードウエア及びソフトウエア１６によるその他のデータ条件付けで処理することが可能である。（ここにおいて及び本開示のその他の箇所において、点線で表されている要素又はステップはオプションとしての要素又はステップである。）オプションとして、指紋画像データ内からの選択されたマイニューシャの位置等のユーザの生体データから生体テンプレートを１７において発生させることが可能である。この点において、該ユーザの生体データのセキュリティ及び認証のために、データ１４の何らかの処理が特別安全処理ハードウエア２６により及びその中で行われる。
【００１９】
この実施例によれば、処理されたユーザの生体データ１８は、次いで、オンチップ暗号化エンジン２０により処理することが可能である。多様な暗号化技術の内のいずれかを安全に暗号化されたデータを作成するために使用することが可能である。暗号化技術の一つの特性は、暗号化されたデータの認証された暗号解読を許可する暗号化「キー」の使用である。従って、暗号化キーは、典型的に、暗号化プロセス期間中に暗号化エンジン２０によって使用される。この実施例の一つの例によれば、セキュリティ即ち安全性のために、該キーは各識別イベント、即ち「セッション」に対して特定的なものとすることが可能であり、且つ、従って、「セッションキー」２２と呼称される。（代替的実施例においては、永久的又は装置特定的なキーを使用することも可能である。）セッションキーは安全ハードウエア内におけるユニークで秘密の「シード（ｓｅｅｄ）」に結合されている予め定められたアルゴリズムによって特別安全処理ハードウエア２６内においてランダムに発生させ、例えば、サーバ２３又はその他の適宜の技術から該安全ハードウエア外部から安全な態様で（例えば、暗号化データに対する監査能力を与えるために）得ることが可能である。
【００２０】
実施例１０（一つの例として）によれば、セッションキー２２は特別安全処理ハードウエア２６内に存在している。従って、この実施例によれば、暗号化は適宜のビット長の単一キー暗号化とすることが可能である。然しながら、一層洗練された暗号化技術を使用することも本発明の範囲内のものであり、その場合には、２キー又はパブリックキー暗号化をオプションとして使用することが可能である。いずれの場合においても、暗号化エンジン２０からの出力は安全な暗号化されたデータ２４であり、それは、次いで、一時的な格納のために例えばホストシステムメモリ２８などの非安全ホストシステム２７へ送ることが可能である。システムメモリ２８はそれ自体としては安全なものではないが、暗号化されたユーザの生体データはその暗号化により信頼されるものとして留まる。
【００２１】
注意すべきことであるが、本発明の一つの特徴は、生体データ採取及び解析に必要とされるメモリ等のオンチップ資源を減少させることである。このオンチップ資源の減少を達成するために、暗号化レートはデータ採取レートよりも著しく一層遅いものとすることは不可能である。即ち、その暗号化（及び可能性のある予備処理）は所謂「実時間」で行われる。通常の暗号化エンジンはこのデータ暗号化レートとすることの能力を有している。市販の指紋センサーに対する一つの例示的なデータ採取レートは２メガバイト／秒の程度であり、それは十分に対称鍵暗号化（ＡＥＳ，３ＤＥＳ等）のレート内のものである。幾らかの制限されたバッファリングが予備処理又は暗号化期間中に行われる場合があるが、これらの機能をデータ採取レートにおいて又はその近くで実施することにより、オンチップメモリ条件を実効的に減少させるか又は最小とさせることが可能である。
【００２２】
更に、最近の汎用パソコンのもののような容易に入手可能な一般的なメモリシステムも典型的な生体センサーが発生するのと同じように早く入ってくるデータを格納することが可能であり、従って、データを実時間で収集し、暗号化し且つ一般的なハードウエア上に格納させることが可能である。暗号化された形態で格納される暗号化されたユーザの生体データを受け取るために一般的なシステムメモリを何ら特別に適用化させることは必要ではない。
【００２３】
セッションキー２２が特別安全処理ハードウエア２６上に安全に格納されると、非安全ホストシステム２７上に現在格納されている暗号化されたユーザの生体データは権限の無いアクセス及び不正変更から保護されている。以下に説明するように、非安全ホストシステム２７上に格納されている暗号化されたデータは、その後、セッションキー２２を使用して暗号解読エンジンによって処理される。真性のデータ以外のなにかがその様に暗号解読されても、認証されたユーザに対するマッチ即ち一致が得られることは無い。従って、安全生体アクセスシステムのセキュリティを打ち破ろうとする試みにおいて特別安全処理ハードウエア２６と非安全ホストシステム２７との間の通信内に不正行為データを導入させるための努力が実ることは無い。
【００２４】
従って、本発明の別の実施例３０においては、且つユーザの生体データを暗号化するための実施例１０の付属として、非安全ホストシステム２７上に格納されている暗号化されたユーザの生体データ２４は、暗号化解読及び解析のために、特別安全処理ハードウエア２６によって要求される（単一のパケット情報又はより小さなサブパケットのいずれかとして）。この実施例は図２に例示されている。基準データに対するユーザの生体データの所要のマッチング（又は、代替的にテンプレートマッチング）に部分的に基づいて、この第２フェーズの処理は、典型的に、データ採取／暗号化よりも一層遅いレートで進行する。然しながら、パスワード認証、バリアエントリ、パーソナルＩＤ等の生体データ解析の多くのアプリケーションは、データ解析が実時間で（即ち、ユーザの生体データ採取されると直ぐに）行われることを要求するものではなく、データ採取／暗号化と同期されることを必要とするものでもない。従って、実施例３０に基づく暗号解読及び解析のための暗号化されたデータ２４の送給は、実施例１０のデータ採取及び暗号化に続いてであるが独立的に行われる。
【００２５】
実施例３０によれば、暗号化されたユーザの生体データ２４は暗号解読エンジン３２へ送られる。データ２４を暗号解読するために、暗号解読エンジン３２はそのデータが暗号化された時に使用されたセッションキー２２へのアクセスを必要とする。暗号解読エンジン３２の出力は暗号解読されたユーザの生体データ３４である。このデータは実施例１０のセンサー１２から得られた生のデータである場合があり、又はデータ解析の品質及び効率を向上させるために予備処理されたデータ又は生体テンプレート（例えば、実施例１０に従い）である場合がある。暗号解読されたユーザの生体データ３４は、例えば、指紋マッチングのために画像からのテンプレートの発生のために画像処理ハードウエア／ソフトウエア３６によって処理することが可能である。その処理された画像データ（又はテンプレート）３８は、次いで、解析されてスキャンされた画像の十分な数の特徴が安全処理ハードウエア２６上のデータベース４０内に格納されている登録済み画像（又は登録済み生体テンプレート）の特徴とマッチするか否かを決定する。十分な数のマッチする特徴が識別される場合には、そのスキャンされた画像は一つの登録済み生体テンプレートとマッチすることが分かり、パスワードチェック、機械的ドアロック等の二次的ハードウエア又はソフトウエア（不図示）による使用のためにマッチャー４２によってマッチ又はパス表示４４を出力させることが可能であり、多分暗号化又はその他のセキュリティプロトコルの使用と安全に通信が行われ、従って意図された受領者のみがそのマッチの結果を知ることとなる。メモリ４０内に見つかった登録済み生体テンプレートに対するマッチが存在しない等の十分な数のマッチする特徴が識別されない場合には、非マッチ即ち不一致表示を発行させることが可能であり且つ本発明の範囲を超える多様な態様で取り扱うことが可能である。データベース４０及びマッチャー４２がオンチップに位置されていることに対する代替として、以下の更に詳細に説明するように、データベース４０及び／又はマッチャーのコピーがオフチップに位置されている場合がある。
【００２６】
一方、安全生体識別システムを出し抜くための不正行為の試みに対する安全確保のためにデジタル署名プロトコルを使用することが望ましい場合がある。この様な署名プロトコルは当該技術においてよく知られている（例えば、ＨＭＡＣ）。この様な実施例においては、ユーザの生体データはセッションキー２２と共にハッシュ化させて「キー付きハッシュ」を作成することが可能である。その署名プロセスは該データを暗号化するものではなく、該データにキー付きハッシュ「署名」をアペンド即ち付属させるものであり、それは、次いで、該データが真性のものであるか又は変更されたものであるかを決定するために使用することが可能である。署名付きデータも暗号化させることが可能であるが、全ての実施例において必要なものではない。署名の利点は、ホストシステムに見ることが可能なデータを供給するということであり、ホストがそのデータに関して処理を行うことを可能とし（例えば、テンプレートの発生）、且つホストシステム２７と安全処理ハードウエア２６との間の通信経路中に不正なデータの導入やデータの不正変更を検知する能力を具備する安全処理ハードウエア２６を供給するということである。
【００２７】
従って、結合されて、実施例１０及び３０は、ユーザの生体データが採取され、暗号化され（又はデジタル的に署名され）、安全生体データシステムとは別に格納され、安全生体システム内に呼び戻され、暗号解読され（又は署名が検証され）、次いで基準データに対するマッチを検査される方法及びシステムを提供する。安全な暗号化されたユーザの生体データをバッファするために非安全ホストメモリを使用することが可能であり、後にそれを信頼される態様で特別安全処理ハードウエアへ送り戻すことを可能とする。次いで、安全な暗号解読を、安全生体システムの解析及びマッチング操作に最も適したペースで特別安全処理ハードウエア上で行うことが可能である。全ての暗号化及び暗号解読は特別安全処理ハードウエア２６上で行われる。臨界的なデータは、それが非安全ハードウエア上にある場合には、該安全なハードウエアによるか又は暗号化又はデータ署名によるかのいずれかにより常に保護され、その信頼性を確保しており、且つ不正なデータを、安全生体アクセスシステムをバイパスすることにより情報又は施設への不当なアクセスを得るために、それに対して成功裏に置換させることは不可能である。セッションキー２２は安全処理ハードウエア２６によって安全に維持されているので、データ不正変更及び侵害に対する機会は最小とされているか又は取り除かれている。
【００２８】
本発明の一つの側面によれば、前に説明した実施例１０及び３０の或る要素は単一の装置又は集積回路上で実現される。例えば、全ての画像処理及び暗号化／暗号解読（及び／又は署名／署名検証）機能を実施する形態とされ且つプログラムされている単一の装置を設けることが望ましい場合がある。この様な集積化は上述した実施例又は以下に説明する実施例のいずれかに、その適用が適切である場合に、適用することが可能である。事実、本発明の一つのユニークな面は、格納及び／又は処理のためにオフチップ資源へ送られる生体データを暗号化し（及び／又は署名し）且つ後に前記オフチップ資源から検索された場合にその同じデータを暗号解読（及び／又はその署名の検証）するために同一の装置を使用することの能力である。
【００２９】
図３はこの様な実施例１０（図１）と実施例３０（図２）との結合に対する処理ステップ及び関連する要素の組を例示している。プロセス５０はユーザの生体データの収集５２で開始する。オプションの予備処理はステップ５４において行うことが可能である。そのユーザの生体データは、次いで、ステップ５６において暗号化され（又はステップ６８において署名されるか、又は暗号化されると共に署名される）、非安全ホストシステムハードウエア（例えば、ディスクメモリ）へ送られ、そこで、それはステップ５８において非安全ホストシステム２７上に格納される。必要とされる場合に、例えばステップ５２におけるデータの収集の完了等、該データは特別安全処理ハードウエア２６によって非安全ホストシステムメモリから採取され、且つステップ６０において暗号解読（及び／又はステップ７０において署名検証）される。次にマッチングをサポートするいずれかの画像処理がステップ６２において行われる。次いで、呼び戻されたユーザの生体データがデータベース４０内に格納されている登録済み生体テンプレートと比較されて信憑性、アイデンティティなどがステップ６４において決定される。最後に、ステップ６４におけるマッチングの結果がステップ６６においてその他のハードウエア及び／又はソフトウエアによる使用のために報告される。マッチ又は非マッチの表示がなされると、その生のデータはステップ７２において捨てられるが、代替的実施例は、例えば、監査目的のために、暗号化されたか又は非安全／信頼されない形態のいずれかでオフチップで該生のデータの格納を排除するものではない。
【００３０】
図４は図３に示されている実施例５０の変形例を表す実施例７４である。実施例７４は、ステップ５２におけるデータ収集とステップ６０におけるリコール即ち呼び戻し及び暗号解読が並列して（通常、「パイプライン処理」と呼称される）進行することが可能であることを例示している。この実施例のプロセスの第１フェーズ（収集、予備処理、暗号化、格納）はデータ採取レートで行われるが、その第２フェーズ（呼び戻し、暗号解読、画像処理、マッチング）は、主に画像処理ステップ６２によって及び多分又データマッチングステップ６４によって、又はより一般的には安全処理ハードウエア２６の全体的なデータ処理能力によって支配されるレートで行われる。
【００３１】
これまで説明した実施例は暗号化したユーザの生体データの格納のためのみに非安全ホストシステム資源に依存している。然しながら、非安全ホストシステム資源は、画像処理及び解析のために必要な時間及び安全処理ハードウエア等に関する処理要求のみならず、特別安全処理ハードウエアのコスト及び複雑性を更に減少させるために多数の付加的な態様で使用することが可能である。例えば、ホストシステムプロセッサが特別安全処理ハードウエア上に存在するプロセッサよりも一層早く且つ一層強力なものである場合には、該ホストシステムプロセッサを使用することは生体データ解析を著しく加速させることが可能である。次に幾つかの実施例について説明するが、その場合に非安全ホストシステム資源は安全生体データ処理を助け且つ加速させるために使用される。
【００３２】
図５に例示されているように、第１のその様な実施例８０によれば、ユーザの生体データを安全に解析し且つマッチングさせるプロセスは、オフチップに送られた（従って信頼されない）同一のデータの暗号化されていないコピーからユーザの生体データの非安全、従って信頼されないユーザの生体テンプレートをオフチップで発生させるために非安全ホストシステムのプロセッサを使用することにより加速させることが可能である。信頼されないユーザの生体テンプレートは、オフチップで格納し且つ安全に信頼されないユーザの生体テンプレートを確認するため、又は「興味のある領域」として信頼されないユーザの生体テンプレートを介して識別された区域のサブセットに関しての解析及び処理に注目することにより暗号化されたユーザの生体データから信頼されるユーザの生体テンプレートを一層効率的に発生させるためのいずれかのためにオンチップ安全ハードウエアによる解析のための要求で特別安全処理ハードウエアへ戻され、尚、いずれの場合においても、安全プロセッサ上での後の解析及びマッチングに対して信頼されるユーザの生体テンプレートが得られる。
【００３３】
この様な態様でのテンプレートの確認又は発生のためにホストプロセッサを使用することは、信頼されるユーザの生体テンプレートを発生するために安全プロセッサに対する時間、複雑性及びメモリ条件を減少させる。何故ならば、信頼されないユーザの生体テンプレートは、安全な態様で処理されるデータの量を信頼されないユーザの生体テンプレートによって識別された「興味のある領域」へ減少させるために安全プロセッサによって使用することが可能だからである。別の言い方をすると、暗号化されたユーザの生体データから興味のある領域及びその結果得られる同一のデータの暗号化されていないコピーの非安全処理により供給されるユーザの生体テンプレートを安全に確認するプロセスは、通常、全ての興味のある領域を識別し且つ関連するユーザの生体テンプレートを最初から発生させるために暗号化されたユーザの生体データの全てを安全に処理するよりも、一層効率的であり且つ必要とするメモリ資源は一層少ない。
【００３４】
図５を参照すると、そのプロセスは、前述したように、特別安全処理ハードウエア２６によるステップ５２におけるユーザの生体データの採取及びステップ５４におけるそのデータの予備処理で開始する。然しながら、ステップ５６におけるそのデータの暗号化及びステップ５８における格納のための暗号化したデータの非安全ホストシステム資源への転送と並列して、特別安全処理ハードウエア２６は暗号化されていないユーザの生体データをステップ８２において非安全システム資源へ送給する。該暗号化されていないユーザの生体データは、次いで、ステップ８４において該生体データから信頼されないユーザの生体テンプレートを発生させるために、ホストシステムプロセッサにより処理させることが可能である。
【００３５】
該信頼されないユーザの生体テンプレートは、例えば、指紋からの興味のある位置（例えば、マイニューシャ点）に関するデータを包含している減少させた組のデータとすることが可能である。ホストプロセッサが該信頼されないユーザの生体テンプレートを発生することが可能であるためには、該ユーザの生体データの解析及び該テンプレートの作成用のソフトウエアがホストシステム内にインストールされていなければならない。この実施例によれば、該非安全ホストプロセッサによる該信頼されないユーザの生体テンプレートの作成は、そのセキュリティについては他の箇所で説明してある暗号化されていない形態で該データへのアクセスを必要とする。然しながら、ホストプロセッサをして該信頼されないユーザの生体テンプレートを作成させることにより、該処理、メモリ及び該特別安全処理ハードウエア２６に関する計算要求を著しく減少させることが可能である。
【００３６】
暗号化したユーザの生体データ、暗号化されていないユーザの生体データ、及び信頼されないユーザの生体テンプレートの作成のための処理は、全て、非安全ホストシステム２７内において行われる。然しながら、データの完全性及びセキュリティは特別安全処理ハードウエア２６内での更なる処理によって与えられる。特に、特別安全処理ハードウエア２６はステップ８８において信頼されないユーザの生体テンプレートを受け取り且つ解析する。ステップ８８における解析は、暗号化されたユーザの生体データの選択した部分に対する要求９０を発生し、例えば、マイニューシアに基づくテンプレートの場合には、該安全プロセッサは、信頼されないユーザの生体テンプレートにおいて識別された個別的なマイニューシア点の各々の周りのユーザの生体データの領域のみをホストシステム２７から要求する場合がある（何故ならば、指紋のその他の領域は、多分、マイニューシア点を包含するものではなく、従って処理する必要性がないからである）。暗号化されたユーザの生体データの要求された部分は、ステップ９２における暗号解読、ステップ９４における画像後処理、及びステップ９６におけるパターン検証（例えば、特別安全処理ハードウエア上に格納されている登録済み生体テンプレートに対するマッチング即ち照合）のために非安全ホストシステム２７によって送給される。暗号化されたユーザの生体データと暗号化されていないユーザの生体データとの間のカップリングは、暗号化されたデータの部分に対するテンプレートに基づくオンチップ要求により決定されるように、該ユーザの生体データの正当性及びセキュリティを確保する。検証がステップ９６において行われると、その結果はステップ９８において報告し、且つ、前述したように、該ユーザの生体データはステップ１００において捨てられるか又はオフチップでアーカイブされる。
【００３７】
従って、非安全ホストシステムプロセッサの速度及びパワーは、特別安全処理ハードウエアに関する要求を減少させるために使用することが可能である。より低コストで、より高速で、且つより堅牢な生体データ検証を提供することが可能である。オフチップ生体データ処理は信頼されないユーザの生体テンプレートを発生し、その正確性は完全なユーザの生体データのサブセットの解析を介して検証することが可能であり、その結果信頼されるユーザの生体テンプレートが得られる。安全なユーザのテンプレートの発生及びその後のマッチングのための暗号化されたユーザの生体データは安全にホストシステム上に格納させ且つ適宜のアドレッシング方法を介してデータサブセットの検索のために組織化させることが可能である。該暗号化されたデータサブセットは、重要な特徴（指紋の場合にはマイニューシア点）を包含しており、その位置は信頼されないユーザの生体テンプレートから決定することが可能であり且つその存在及び正確な決定は該安全プロセッサによって確認させることが可能である。該オンチップ処理は、オフチップメモリからの興味のある点に関してのデータを維持し且つその生体テンプレートを安全な態様で確認し且つその後にマッチさせるためにそのデータを解析することとなる。注意すべきことであるが、データ暗号化技術を使用するためには、データの予め定めた領域を暗号化せねばならないか、又は該データが不正変更されていないことを確保するためのその他の手段が設けられねば
ならず、暗号解読のために全画像データを検索するが、単一の興味のある領域又は興味のある領域のサブセットを含むデータを安全生体処理システムによりいずれかのデータが検索される度に維持すること（即ち、複数の検索）を包含している。
【００３８】
図６に例示されている実施例８１は、暗号化技術ではなくデータ署名技術を使用する上述した実施例の変形例である。データ署名は、非安全ホストシステム２７が署名済みユーザの生体データへアクセスし且つ解析することを可能とし、そのことは、ホストから返されるデータが信頼されるものであることを確保しながら（本発明の適用に依存する妥当なレベルのセキュリティ）、安全ハードウエア２６からホストシステム２７へユーザの生体データの読み取り可能なコピーを送ることによってのみ可能なものである。更に、データ署名は、通常、暗号化と比較して、計算上より廉価であり且つ実時間実施のための実現が一層容易である。注意すべきことであるが、データ署名技術を使用するためには、そのデータが不正変更されていないことを確保するためにデータの所定の領域を署名するか又はその他の手段が設けられねばならず、署名検証のために全画像データを検索するが、安全生体処理システムによってデータが検索される度に単一の興味のある領域又は興味のある複数の領域のサブセットのみを有するデータを維持することを包含している（即ち、複数の検索）。
【００３９】
実施例８１によれば、最初にデジタル署名が５７においてユーザの生体データに対して適用される。前述したように、この署名はユーザの生体データのキー付きハッシュとすることが可能である。署名済みのユーザの生体データは特別安全処理ハードウエア２６によって５９において格納するためにクリアな状態で（即ち、暗号化無しで）非安全ホストシステム２７へ送られる。該デジタル署名用のセッションキー２９は特別安全処理ハードウエア２６によってのみ知られている。ホストシステム２７から戻されて受け取られると、該デジタル署名は９３においてそのデータが本物であることを確保するために検証される。この実施例においてはホストシステム２７による検証は必要とはされないので、該デジタル署名用のキー２９は特別安全処理ハードウエア２６によってのみ知られている秘密のままとなることが可能である。
【００４０】
次に図７を参照すると、本発明の更に別の実施例１０４が示されている。実施例１０４によれば、暗号化されたユーザの生体データを格納し、暗号化されていないユーザの生体データを格納し、信頼されないユーザの生体テンプレートを発生し、且つ更に予備的に該信頼されないユーザの生体テンプレートが一つ又はそれ以上の登録済み生体テンプレートとマッチするか否かを決定するために非安全ホストシステム資源を使用することが可能である。図７に示されているように、このプロセスも、前述したように、特別安全処理ハードウエア２６内において、ステップ５２においてのユーザの生体データの採取及びステップ５４においてのそのデータの予備処理で開始する。非安全ホストシステム２７は特別安全処理ハードウエア２６からステップ５８においての暗号化されたユーザの生体データ及びステップ８２においての同一のユーザの生体データの暗号化されていないコピーの両方を受け取る。暗号化されていないユーザの生体データは、ステップ８４におけるユーザの生体データの信頼されないユーザの生体テンプレートを発生するために、ホストシステムプロセッサによって処理することが可能である。
【００４１】
この実施例によれば、非安全ホストシステム２７は、更に、登録済みテンプレートデータベース１０６を保持しており、それは特別安全処理ハードウエア２６内に格納されている安全オンチップ登録済み生体テンプレートデータベース４０の安全化されていないオフチップのレプリカである。登録済みテンプレートデータベース１０６は暗号化されていない（又はクリア状態）フォーマットでホストシステム２７によって維持される。登録済みテンプレートデータベース１０６は、典型的に、登録済み生体データ又は登録済み生体テンプレートから構成されている。登録済み生体テンプレートのデータベースの寸法は大きなものとすることが可能であり、且つマッチのためのサーチプロセスは、採取されたユーザの生体データと登録済み生体テンプレートの各々との間のマッチングの程度を網羅的にチェックすることからなるものとすることが可能である。従って、使用可能な計算資源の能力に依存して、マッチに対するチェックプロセスは極めて遅いものとすることが可能であり且つ登録済み生体テンプレートデータベースの寸法に依存する場合がある。非安全ホストデータプロセッサのプロセッサ能力（例えば、処理速度）が特別安全データプロセッサのものを越える環境においては、網羅的なマッチングを行うために非安全ホストデータプロセッサを利用することが一層効率的であり、そのことは登録済み生体テンプレートデータベース内の多くの又は全てのデータ／テンプレートに対してのマッチ計算を必要とし、且つ信頼される態様でマッチを確認するために安全プロセッサを使用することが一層効率的であり、そのことは安全オンチップ登録済み生体テンプレートデータベースから単一の登録済み生体テンプレートに対してのマッチ計算を必要とする。
【００４２】
前述したように、ステップ８４において信頼されないユーザの生体テンプレートを発生するためにクリアな状態で（非安全ホストプロセッサ上で）ユーザの生体データを解析することに加えて、ホストプロセッサはクリアな状態で予備的マッチング機能を実施することが可能であり、そのことは、ステップ１０８において、発生された信頼されないユーザの生体テンプレートをテンプレートデータベース１０６内に格納されている安全でないオフチップ登録済み生体テンプレートに対して比較することからなる。
【００４３】
マッチする登録済み生体テンプレートがテンプレートデータベース１０６内に見つかると、そのテンプレートは、登録済み生体テンプレートのデータベース内のインデックス又はテンプレート番号として特別安全生体ハードウエア２６に対してホストプロセッサによってステップ１０９において識別される。（マッチ／マッチ無しの結果は安全プロセッサによって報告されるので、マッチの確認を行うことができない場合には、例えば１１４において、マッチ無しの結果が典型的に安全ハードウエアへ供給される。）選択された暗号化されたユーザの生体データに対する要求がステップ９０においてなされる。特別安全処理ハードウエア２６へ供給されると、その選択された暗号化されたユーザの生体データはステップ９２において暗号解読される。テンプレート発生及びオプションの更なる画像後処理はステップ９４において適用させることが可能である。この様な画像後処理の例は、コントラストエンハンスメント、エッジエンハンスメントなどを包含しており、そのことの使用は本発明の適用例に依存する。
【００４４】
ステップ１０９からの識別されたテンプレートインデックスを使用して、対応する信頼される生体テンプレートがメモリ４０内の安全オンチップテンプレートデータベースにおいて識別される。このメモリ４０からのテンプレートは、完全に特別安全生体ハードウエア２６内においてステップ１１０において信頼されるユーザの生体テンプレートに対して比較される。オフチップマッチが見つかるがオンチップでそのマッチを検証することができない場合には、該非安全ホストシステム上でデータの侵害があったことが結論される。ホスト上でのマッチは、ホスト上での侵害が無かった場合には、安全プロセッサ上のマッチとして常に確認される。この様に、オンチップマッチングが、ホストシステムによる非安全予備マッチングにより与えられるガイダンスを使用して、効率的に且つ安全に使用される。安全プロセッサの機能は、マッチのためのテンプレートデータベースを介してのサーチから、ホストからのインデックスによって識別された安全オンチップテンプレートデータベースからの特定の信頼されるテンプレートとの積極的なマッチを確実に確認することにシフトする。安全生体ハードウエアはデータベース内の全てのテンプレート又はデータベースの大きなサブセットに対してチェックするのではなく、安全オンチップテンプレートデータベースに対しての単一のマッチを確認することに係り合うに過ぎない。
【００４５】
理解されるように、ここに記載した種々の実施例において、登録済み生体テンプレートデータベースの非安全オフチップコピーは、安全オンチップ登録済み生体テンプレートデータベースと完全に同期された状態が維持されねばならない。このことを達成する方法の一例は、各マッチの初期化フェーズの一部として、安全プロセッサをして登録済み生体テンプレートデータベースの暗号化されていないコピーを出力させることである。この暗号化されていないコピーは、各認証セッションのための初期化フェーズにおいて発生させることが可能であり、又は登録済み生体テンプレートデータベースがアップデートされる度に作成させることが可能である。当業者により理解されるように、登録済み生体テンプレートデータベースの非安全コピーを同期した態様でオフチップで維持することを可能とさせることを確保するために種々のキャッシング方法を適用することが可能である。
【００４６】
本発明の更に別の実施例によれば、暗号化されたユーザの生体データを格納するため、暗号化されていないユーザの生体データを格納するため、信頼されないユーザの生体テンプレートを発生するため、該信頼されないユーザの生体テンプレートが一つの登録済み生体テンプレートに対してマッチするか否かを予備的に決定するため、及び更に、実際の安全登録済み生体テンプレートデータベース（単にそのデータベースの非安全コピーに対して）を格納するために、非安全ホストシステム資源を使用することが可能である。この様な実施例は、例えば、特別安全処理ハードウエア２６のコスト、寸法等を最小とさせることが所望される場合に要求される場合があるように、特別安全処理ハードウエア２６が殆ど又は全く非揮発性メモリを具備するものではない場合において、有用である場合がある。
【００４７】
従って、この実施例に基づくマスター安全登録済み生体テンプレートデータベース４１が非揮発性メモリにおいてオフチップで格納されており且つパワーアップ時に特別安全処理ハードウエア２６内にインポートされる。より詳細に説明すると、マスター安全登録データベースに対するセキュリティを確保するために、それは非安全ホスト２７上で使用可能な非揮発性メモリ資源内に暗号化した形態で格納させることが可能である。
【００４８】
図８は登録済み生体テンプレートデータベースをインポートするステップの一つの実施例３００を例示したフローチャートである。特別安全処理ハードウエア２６をステップ３０６においてパワーアップすると、コール又は同様の手順３０４が開始されて非安全ホスト２７から暗号化された登録済み生体テンプレートデータベースを検索し、それは、検索されると、特別安全処理ハードウエア２６の揮発性メモリ内に格納される。ステップ３０６において検索されると、暗号化された登録済み生体テンプレートデータベースが、３１５において供給される適宜のキーを使用して、ステップ３０８において暗号解読される。この点において、ステップ３１０において、新たな登録済み生体テンプレートを付加するか又は前に登録した生体テンプレートを除去することにより登録済み生体テンプレートデータベースを修正する機会を与えることが可能である。登録済み生体テンプレートデータベースが修正されるべき場合には、該データベースは３１２において修正され、次いで３１４において再暗号化され、これらのステップの各々は特別安全処理ハードウエア２６によって又はその上で実施される。暗号化され、修正された登録済み生体テンプレートデータベースは、次いで、ステップ３１６において非安全ホスト２７上で使用可能なものなどの非安全非揮発性メモリ資源上に再格納される。このステップは、暗号化された登録済み生体テンプレートデータベースの前のバージョンを実効的に上書きすることが可能であり、従ってその暗号化され修正された登録済み生体テンプレートデータベースはマスター登録済み生体テンプレートデータベースとなり、それは、ステップ３０４における要求によって特別安全処理ハードウエア２６へ戻させることが可能である。該登録済み生体テンプレートデータベースがこの点においてアップデートされるべきものではない場合、又は何等の更なるアップデートを必要とすること無しにアップデートが完全である場合には、ユーザの生体データと登録済み生体テンプレートとの間のマッチを決定するプロセス３２０は以下に更に説明するように進行することが可能である。指紋検証セッションが終了すると（又は、例えば、ユーザがパソコン又はその中で指紋識別装置が動作しているその他のシステムの操作を終了した時に）、特別安全処理ハードウエア２６はステップ３２２においてパワーオフされる。登録済み生体テンプレートデータベースは特別安全処理ハードウエア２６上の揮発性メモリ内に格納されたので、そのパワーオフプロセスは特別安全処理ハードウエア２６上の登録済み生体テンプレートデータベースのコピーを実効的に消去する。１実施例においては、上のプロセスは、その後のパワーアップ時に暗号解読を許可するために必要とされるように、パワーダウンに続いてキー（実際の暗号及び暗号解読キー）２２を検索するために特別安全処理ハードウエア２６内の非揮発性メモリ内に装置特定的キーを維持させることを必要とする。
【００４９】
セキュリティは、データベースが書き込まれる度に異なるキーを使用することにより向上させることが可能である。即ち、登録済み生体テンプレートデータベースが暗号化される度に、その暗号化のために新たなキーが発生されるか又は得られる。その新たなキーは、登録済み生体テンプレートデータベースが３０８において暗号解読されるために必要とされるまで、特別安全処理ハードウエア２６上に格納される。
【００５０】
然しながら、或る実施例においては、何等の再書込み可能な非揮発性メモリを必要とすること無しにデータベースを暗号化させるために異なるキーを与えることが望ましい場合がある。この様な場合における安全登録済み生体テンプレートマッチングを与えるための例示的プロセス３３０は図９に詳細に示してある。実施例３３０によれば、登録済み生体テンプレートデータベースのセキュリティ及び指紋識別システムの効果性を維持するために、永久的な装置特定的なキー３３２が特別安全処理ハードウエア２６のハードウエア又はファームウエア内にビルトインされている。登録済み生体テンプレートデータベースを暗号化するために使用されるキー２２は、暗号化形態において、セッションキーの暗号化のためのパーマネントキー３３２を使用してオフチップで格納される。そのセッションキーは登録済み生体テンプレートデータベースを暗号解読するために特別安全処理ハードウエア２６をパワーダウンした後においても使用可能でなければならず、更に、登録済み生体テンプレートデータベースが変わる度に再度発生されるか又は再度得られねばならないので、この場合におけるセッションキーを「スティッキー」セッションキーと呼称する。
【００５１】
この実施例によりシステムがステップ３０１においてパワーアップされると、現在のスティッキーセッションキーは３３４において検索され且つ安全処理ハードウエア２６によって３３２において得られたパーマネントキーを使用して３３６において暗号解読される。該スティッキーセッションキーは、次いで、ステップ３４０において登録済み生体テンプレートデータベースを暗号解読するために特別安全処理ハードウエアによって使用することが可能である。図８を参照すると、登録済み生体テンプレートデータベースを修正すべき場合には、該データベースは３１２においてそのように修正され、次いでステップ３１４において新たなスティッキーセッションキー（以下を参照）を使用して再暗号化される。暗号化され、修正された登録済み生体テンプレートデータベースは、次いで、非安全ホスト２７等の非安全メモリ資源上にステップ３１６において再度格納される。
【００５２】
再度図９を参照すると、登録済み生体テンプレートデータベースのセキュリティを保護するために、登録が３１０において変化されると、新たなスティッキーセッションキーがステップ３４２において派生されるか又は得られる。この新たなスティッキーセッションキーは、３４４において修正された登録済み生体テンプレートデータベースを暗号化するために使用される。該スティッキーセッションキーそれ自身は、次いで、３３２からのパーマネントキーを使用して３４６において暗号化される。暗号化された修正済み登録済み生体テンプレートデータベース及び暗号化されたスティッキーセッションキーは、次いで、３４８において非安全ホスト２７上に格納される（各々の前のバージョンを置換させる）。指紋マッチングは、前述したように、ステップ３２０においてこのステップに続いて進行することが可能である。
【００５３】
然しながら、いずれの場合においても、登録済み生体テンプレートデータベースが該セッションにおいて修正されない場合、又は該セッションに対する修正プロセスが完全である場合には、指紋マッチングはステップ３２０において進行する。
【００５４】
理解されるように、上述した本プロセスにおける多くの変形例がこの説明により意図されている。例えば、本発明の適用に依存して、非安全格納部から一度に一つの暗号化した登録済み生体テンプレートを検索し、暗号化キー又はスティッキーセッションキーを使用してそのテンプレートを暗号解読し、且つユーザの生体データから得られたユーザの生体テンプレートに対してのマッチ即ち照合の解析を実施することが望ましい場合がある。マッチが決定される場合には、結果を報告することが可能である。マッチが決定されない場合には、次の登録済み暗号化生体テンプレートを検索し且つ暗号解読することが可能であり、以下同様である。この様な場合には、前述したプロセスが、全データベースに対してではなくテンプレート毎に適用する。注意すべきことであるが、非安全オフチップメモリ内に格納する前に暗号化及び／又はデータ署名を介して安全なものとされたテンプレートデータベースから単一のテンプレートの検索の使用するためには、独立的に同一のキーを使用して該データベース内の各個別的なテンプレートを暗号化するか及び／又は署名せねばならないか、又は暗号解読及び／又は署名検証のために全テンプレートデータベースを検索するが、所望の単一のテンプレートのみを維持すること（複数の検索）を包含する、このテンプレートが不正変更されていないことを確保するためにその他の手段が設けられねばならないかのいずれかである。
【００５５】
次に、図１０を参照すると、本発明の更に別の実施例１０５は、特別安全処理ハードウエア２６内において、ステップ５２におけるユーザの生体データの採取及びステップ５４におけるそのデータの予備処理で開始する。特別安全処理ハードウエア２６は、暗号化されていないユーザの生体データを非安全システム資源へステップ８２において送給する。その暗号化されていないユーザの生体データは、次いで、ステップ８４においてユーザの生体データから信頼されないユーザの生体テンプレートを発生させるために、非安全ホストシステムプロセッサによって処理させることが可能である。特別安全処理ハードウエア２６は、又、別のセッションキー（不図示）を使用してステップ５６においてユーザの生体データを暗号化させる。
【００５６】
この実施例によれば、ホストシステム２７は、前述した如く、暗号化されていない登録済み生体テンプレートデータベース１０６のみならず、前述した如くスティッキーセッションキーを使用して暗号化させた登録済み生体テンプレートデータベース４０の暗号化したバージョン１２０も包含している。この実施例の一つの側面によれば、装置特定的パーマネント暗号化キーが３３２において与えられ、前述した如く、例えば、特別安全処理ハードウエア２６上において使用可能な非揮発性メモリ資源が不十分であることに起因して非安全ホスト２７上のメモリ３４３内に格納されている同一のスティッキーセッションキーの暗号化したバージョンを暗号解読することにより得られた３５０におけるスティッキーセッションキーに加えて、特別安全処理ハードウエア２６内に維持される。代替的に、非揮発性メモリ３５１は、スティッキーセッションキーを排他的にオンチップで維持するために与えることが可能であり、その場合には、装置特定的パーマネントキー３３２は必要とはされない。
【００５７】
前述した如く、ステップ８４において発生した信頼されないユーザの生体データは、非安全環境における登録済み生体テンプレート１０６の非安全データベースからなるエントリに対してステップ１０８において比較される。マッチ即ち一致が見つからない場合には、マッチ無しレポートが１１４において発行され、該結果は安全処理ハードウエア２６の外部で使用するために９８において発行され、且つ該ユーザの生体データは１００において捨てられる（又は、代替的には、監査目的のために保存される）。然しながら、予備的マッチがステップ１０８において識別される場合には、５８における暗号化された（信頼される）ユーザの生体データは特別安全処理ハードウエア２６によって検索される。更に、ステップ１０８における予備的マッチとして識別された暗号化されていないテンプレートに対応する特定の暗号化された登録済み生体テンプレート（又は、代替的に、同時的に検索されるか又は代替的に前に検索されており且つ維持されている実際の暗号化された登録済み生体テンプレートデータベースと共に前の実施例によるようにそのテンプレートの検索のために使用されるそのテンプレートの識別又はインデックス）も特別安全処理ハードウエア２６によって検索される。９２において、暗号化されたユーザの生体データは暗号解読され（３５０におけるセッションキーを使用して）、且つ暗号化された登録済み生体テンプレートが暗号解読される（３３２における装置特定的パーマネントキーか又は３５０におけるスティッキーセッションキーのいずれかを使用して）（又は、代替的には、該マッチングするテンプレートのインデックスを使用して暗号化された登録済み生体テンプレートデータベースから前の実施例によるようにそのテンプレートを検索することが可能であり、それは同時的に暗号解読するか又は代替的に前に検索され、暗号解読され且つ維持されたものとすることが可能である）。次いで、画像後処理を、オプションとして、ステップ９４において暗号解読したユーザの生体データに関して実施することが可能である。該暗号解読され且つ処理されたユーザの生体テンプレートは、次いで、ステップ１１０において暗号解読された登録済み生体テンプレートと比較されてそのマッチを検証する。重要なことであるが、この最終的な比較は完全に特別安全処理ハードウエア２６内において安全な態様で行われる。その比較結果はステップ９８において出力され、且つそのユーザの生体データはステップ１００において捨てられる（又は、代替的に、監査目的のために保存される）。
【００５８】
従って、この実施例によれば、ホストプロセッサは特定の暗号化された登録済み生体テンプレートを直接的に返すことが可能であり、該テンプレートはユーザの生体データに最もよくマッチすることが期待される。次いで安全生体プロセッサは、ホストシステムメモリから必要な安全ユーザ生体データを検索することによってホストプロセッサの解析を確認することが可能である（それは暗号化されており及び／又は安全生体プロセッサに対してのみ知られている秘密（即ちプライベート）セッションキーで署名されている）。
【００５９】
又当業者により理解されるように、装置特定的パーマネントキー３３２は、スティッキーキー及びセッションキーを使用すること無しにオフチップ登録データベースを安全に暗号化するために使用することが可能である。この場合には、該オフチップデータベースは常に装置特定的（例えば、装置毎にユニークである）パーマネントキーを使用して暗号化され且つ暗号解読される。
【００６０】
プライバシーの懸念に起因して、ユーザの生体データ（ユーザのテンプレートと比較して）を非安全プロセッサ上で処理することを全く回避することがしばしば必要である。図１１に示した変形例１０７によれば、非安全ホスト２７は、テンプレート処理を介してのオプションのマッチの加速のみならず、安全且つ非安全格納のためにのみ使用される（即ち、テンプレートの発生はチップ上で安全に実施されるのみである）。この実施例はユーザの生体テンプレートを安全に（且つプライベートに）決定するために安全プロセッサによる後の検索及び処理のためにユーザの生体データの暗号化を介しての安全な格納を使用する。
【００６１】
この実施例によれば、ユーザの生体データの採取及び予備処理は前に説明した如くであり、暗号化エンジン５６によるユーザの生体データの実時間暗号化のためのセッションキー３５０の使用及びホストシステムメモリ５８内に格納するために暗号化されたエンドユーザデータのホストシステム２７への転送が続いている。特別安全処理ハードウエア２６は、次いで、ホストシステムメモリ５８から検索され且つセッションキー３５０を使用してユーザの生体データ暗号解読エンジン８７によって暗号解読された暗号化されていないユーザの生体データを使用して、８５においてユーザの生体テンプレートを安全に発生する。該生体テンプレートは、次いで、クリアな状態でホストシステム２７へ通信される。予備的データベースマッチングが登録済み生体テンプレートデータベースの暗号化されていないコピーに対してホストシステム２７によって実施される。そのマッチは、その後に、ホストにより識別された登録済み生体テンプレートに対して安全プロセッサ２６によって確認される（安全オンチップ登録済み生体テンプレートから又はホストから検索され且つ上述したメカニズムを使用して装置特定的パーマネントキー３３２（又は上述したようなスティッキーセッションキー）を介して暗号解読された安全とされたオフチップ登録済み生体テンプレートを介してのいずれかにより）。注意すべきことであるが、この実施例においては、オンチップメモリを減少させ且つホスト資源の使用を介してのデータベースサーチの加速化の利点が、システムのセキュリティを妥協すること無しに且つユーザの生体データをクリアな状態で非安全ホストへ使用可能なものとさせること無しに、達成される。このことはプライバシーの観点において或る利点を提供しており、というのは、実際のユーザの生体データ自身ではなく、ユーザの生体データに基づくテンプレートのみが非安全ホストプロセッサ２６７内において読み取り可能な形態で使用可能とされるからである。
【００６２】
図１２及び１３は、本発明の実施例を実現するためのシステム２００，２３０の構造的側面の詳細を示している。センサー２０２は多様な生体センサーハードウエア及び関連するドライバソフトウエア及びインターフェースの内のいずれかとすることが可能であり、例えば、光学的及び電気的センサーなどであり、米国特許第６，５８０，８１６に開示されている前述したスキャニング容量性半導体指紋検知器を包含している。テンプレート発生器（及びオプションの画像プロセッサ）ハードウエア及びソフトウエア２０６、テンプレート発生器（及びオプションの画像プロセッサ）ハードウエア及びソフトウエア２３６、マッチャーハードウエア及びソフトウエア２３２、及び暗号化エンジン２１０及び暗号解読エンジン２４０は専用のハードウエア又は適宜のソフトウエア及びファームウエアを具備するプログラムされている汎用ハードウエアとすることが可能である。キーメモリ２１２，２１４はソリッドステートメモリとすることが可能であり（これらの要素に対する格納条件は比較的小さいので）、一方システムメモリ２１８，２２２はソリッドステート、パーマネント又は着脱自在の磁気的、光学的、磁気−光学的、等のディスク媒体等とすることが可能である。特別安全処理ハードウエア２２４の幾らか又は全てをディスクリート要素から構成することが可能であり、又はシステム・オン・チップ集積回路から構成することが可能である。好適には、特別安全処理ハードウエア２２４は、ラップトップコンピュータ、着脱自在格納装置、モバイル電話、乗り物などへ、及びデスクトップコンピュータやサーバ、施設アクセス制御（例えば、ドアーロック等）の一層静的な適用例へ組み込むための低パワー条件を具備しコンパクトなものである。ホストシステム資源２２６は、パソコン、サーバ、通信可能に接続された要素からなるネットワーク、又は典型的により低いレベルのセキュリティを具備するものであるが（又はセキュリティを有するものではない）、通常特別安全処理ハードウエア２２４と比較してより高いデータ処理能力及びメモリ資源を具備しているその他のシステムとすることが可能である。
【００６３】
複数の好適な例示的実施例について上に詳細に説明したが、極めて多数の変形例が存在しており且つこれらの好適な実施例は単に代表的な例であるに過ぎず且つ本発明の範囲、適応性又は形態を何等制限することを意図したものではないことを理解すべきである。
【００６４】
例えば、ユーザの生体データの解析及びマッチングのためにオフチップの揮発性メモリを安全に使用するための及びホストシステム内に登録済み生体テンプレートデータベースを格納するために使用するためのオフチップ非揮発性メモリを安全に使用するための技術は独立的なものであり、且つ各々は他方と共に又は他方無しで使用することが可能である。従って、本発明は、安全サブシステムハードウエアのみ内において安全オンチップ非揮発性メモリに対する必要性を減少させるためにオフチップ非揮発性メモリを安全に使用するために該記載した技術を使用する可能性を予見するものである。この実施例は、登録済み生体テンプレートデータベースの寸法が大きく及び／又は安全非揮発性メモリのコストがユーザの生体データの解析及びマッチングに必要とされる安全な揮発性メモリ（又は作業メモリ）のコストと比較して高いシステムにとって魅力的である場合がある。
【００６５】
又理解されるように、本発明のシーケンス、シンタックス、及びコンテントを具備する命令の形態における方法は磁気媒体、光学的媒体、磁気―光学的媒体、電子的媒体（例えば、ソリッドステートＲＯＭ又はＲＡＭ）等の多様なコンピュータ読み取り可能な媒体のいずれかの上に（又は、等価的にその中に）格納させることが可能であり、その媒体の形式は本発明の範囲を制限するものではない。前記媒体を読み取るコンピュータは前記命令をそれに転送させ（例えば、ダウンロード）且つ次いでこれらの命令に関して操作を行うか、又は前記命令をして該媒体から読み取らせ且つそれに応答して操作するかのいずれかで動作することが可能である。更に、前記媒体上の命令へのアクセスするための装置（例えば、読取機）はこれらの命令を処理するコンピュータ内に収納されているか又はそれに直接的に接続させることが可能であり、又はネットワークまたはその他の通信経路を介して前記コンピュータへ接続させることが可能である。
【００６６】
最後に、理解されるように、ここに記載し又は特許請求の範囲に記載されているいずれの実施例のいずれの方法又は装置を使用する装置の形式又はタイプを明示的に又は暗示的に制限するものではない。例えば、この様なオフチップ資源は、それが、一体化した又はペリフェラルの生体データセンサーを使用する、ラップトップコンピュータ、デスクトップ又はワークステーションコンピュータ、携帯電話、パーソナルデジタルアシスタント等内に組み込まれている装置であっても、使用することが可能である。更に、この様な装置とそれらの非安全ホストシステムとの間の通信は、本発明の特性に重要な影響を与えること無しに、ハードワイアード又はワイアレスとすることが可能である。
【００６７】
従って、前述した詳細な説明は、例として、本発明の実施のための便利なガイドを当業者に提供するものであり、該記載した実施例の機能及び構成における種々の変更を特許請求の範囲により定義される本発明の精神及び範囲を逸脱すること無しに行うことが可能であることを意図したものである。
【図面の簡単な説明】
【００６８】
【図１】本発明の１実施例に基づいて、ユーザの生体データを収集し且つ実時間データ暗号化及び／又はデータ署名を実施するために使用される安全ハードウエア及びソフトウエア、及び実時間生体データ採取フェーズ期間中に暗号化したユーザの生体データを受け取り且つ格納するための非安全システムレベル格納部を示した概略図。
【図２】本発明の１実施例に基づいて、非安全システムレベル格納部上に格納されている暗号化されたユーザの生体データを検索し且つ該ユーザの生体データを暗号解読し且つデータ採取フェーズ期間中に専らではなく認証されたデータに対して検証するための安全ハードウエア及びソフトウエア及び非安全システムレベル格納部を示した概略図。
【図３】図１及び２に例示したハードウエア及びソフトウエアの適用に対する１組のプロセスステップを示した概略図。
【図４】並列に進行するデータ収集の少なくとも一部及び呼び戻し及び暗号解読ステップを表す本発明の１実施例を示した概略図。
【図５】ユーザの生体データを安全に解析し且つマッチングするプロセスが該ユーザの生体データの非安全（信頼されない）ユーザの生体テンプレートをオフチップで発生させるためにホストシステムの非安全プロセッサを使用することにより加速される本発明の１実施例を示した概略図。
【図６】ユーザの生体データの信憑性を検証するためにデータ署名を使用する図５に例示した実施例の変形例を示した概略図。
【図７】暗号化されたユーザの生体データを格納し、暗号化されていないユーザの生体データを格納し、信頼されないユーザの生体テンプレートを発生し、且つ該信頼されない生体テンプレートが一つの登録済み生体テンプレートにマッチするか否かを予備的に決定するために非安全ホストシステム資源が使用される本発明の１実施例を示した概略図。
【図８】本発明の１実施例に従って暗号化された登録済み生体テンプレートデータベースをオフチップで安全に格納する場合に関与するステップを例示したフローチャート。
【図９】本発明の別の実施例に従って、暗号化された登録済み生体テンプレートデータベース及びセッションキーをオフチップで安全に格納する場合に関与するステップを例示したフローチャート。
【図１０】暗号化されたユーザの生体データを格納し、暗号化されていないユーザの生体データを格納し、信頼されないユーザの生体テンプレートを発生し、実際の登録済み生体テンプレートデータベース（単純にそのデータベースのコピーではなく）を格納し、且つ該信頼されないユーザの生体テンプレートが一つの登録済み生体テンプレートに対してマッチするか否かを予備的に決定するために非安全ホストシステム資源が使用される本発明の１実施例を示した概略図。
【図１１】テンプレートの発生が安全な態様でオンチップで行われる場合の図１０の実施例の変形例を示した概略図。
【図１２】図１０に示した且つ説明したプロセスのデータ採取フェーズをサポートするハードウエア及びソフトウエアの１実施例を示した概略図。
【図１３】図１０に示した且つ説明したプロセスのデータ解析フェーズをサポートするハードウエア及びソフトウエアの１実施例を示した概略図。
【符号の説明】
【００６９】
１２：検知装置
１４：ユーザの生体データ
１６：予備処理
１７：テンプレート発生
２０：暗号化エンジン
２２：セッションキー
２３：サーバ
２４：暗号化データ
２６：特別安全処理ハードウエア
２７：非安全ホストシステム
２８：ホストシステムメモリ
【図１】
2009151788.tif 000003
【図２】
2009151788.tif 000004
【図３】
2009151788.tif 000005
【図４】
2009151788.tif 000006
【図５】
2009151788.tif 000007
【図６】
2009151788.tif 000008
【図７】
2009151788.tif 000009
【図８】
2009151788.tif 000010
【図９】
2009151788.tif 000011
【図１０】
2009151788.tif 000012
【図１１】
2009151788.tif 000013
【図１２】
2009151788.tif 000014
【図１３】
2009151788.tif 000015