(57)【要約】本発明は、サーバのリソースを利用して高速に認証可能で、且つ、生体テンプレートに代表される秘匿情報として扱うべき情報を二次利用できないように保護しつつ、生体認証といった認証処理の基礎となるデータ（ベクトル）を生成するベクトル生成装置、ベクトル生成方法及び集積回路を提供することを目的とする。  端末１００が、外部より第１のベクトルとして特徴抽出ベクトルを受信する受信部１０１と、第２のベクトルとして生体テンプレートベクトルを記憶する記憶部１０２と、第１のベクトルと第２のベクトルとの間の相関係数を算出し、相関係数が一致する、第２のベクトルとは異なる第３のベクトルを生成するベクトル演算部１０３と、上記第３のベクトルをサーバ１０へ送信する送信部１０４とを備える。【特許請求の範囲】
【請求項１】
一定の要件を満たすデータを生成する装置であって、
情報伝送可能に接続されたサーバよりＮ（Ｎは２以上の自然数）次元の第１のベクトルＲを受信する受信部と、
Ｎ次元の第２のベクトルＴを記憶する記憶部と、
前記第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出し、前記相関係数Ｅが一致する、前記第２のベクトルＴとは異なる第３のベクトルＵを生成するベクトル演算部と、
前記第３のベクトルＵを前記サーバへ送信する送信部と、
を備えることを特徴とするベクトル生成装置。
【請求項２】
請求項１記載のベクトル生成装置であって、
前記ベクトル演算部は、
前記第１のベクトルＲと前記第２のベクトルＴとの相関係数を算出する関数を用いて前記相関係数Ｅを算出する相関係数算出手段と、
前記第２のベクトルＴから、ベクトルＴｒと変数ベクトルＴｙとを生成するベクトル置換手段と、
前記変数ベクトルＴｙのうち、相関係数の値が、前記第１のベクトルＴと前記第２のベクトルＲとの相関係数の値となる変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
少なくとも、前記相関係数Ｅと、前記第１のベクトルＲと、前記ベクトルＴｒとを前記ベクトル関数Ｇの変数として、相関係数の値が、前記第１のベクトルＴと前記第２のベクトルＲとの相関係数の値となる変数ベクトルＴｙを算出するベクトル演算手段と、
前記ベクトル演算手段で算出された変数ベクトルＴｙを第３のベクトルＵとして生成するベクトル合成手段と、
を備えることを特徴とするベクトル生成装置。
【請求項３】
請求項１記載のベクトル生成装置であって、
前記ベクトル演算部は、
第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を用いて、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを前記第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出する相関係数算出手段と、
前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎを選択し、選択したｎ次元の部分ベクトルＴｎの該ベクトルＴｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの、（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することによりに、前記第３のベクトルＵを生成するベクトル置換手段と、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
前記相関係数Ｅ、前記第１のベクトルＲ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数とした、ベクトルＷ＝Ｇ（Ｅ，Ｒ，Ｔｒ）を算出するベクトル演算手段と、
変数ベクトルＴｙを前記ベクトルＷに置き換えて成る、前記第３のベクトルＵを生成するベクトル合成手段と、
を備えることを特徴とするベクトル生成装置。
【請求項４】
請求項１記載のベクトル生成装置であって、
前記ベクトル演算部は、
第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を用いて、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを前記第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出する相関係数算出手段と、
前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎを選択し、選択したｎ次元の部分ベクトルＴｎの該ベクトルＴｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することにより、前記第３のベクトルＵを生成するベクトル置換手段と、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
前記相関係数Ｅ、前記第１のベクトルＲ、前記第２のベクトルＴ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数とした、ベクトルＷ＝Ｇ（Ｅ，Ｔ，Ｒ，Ｔｒ）を算出するベクトル演算手段と、
変数ベクトルＴｙを前記ベクトルＷに置き換えて成る、前記第３のベクトルＵを生成するベクトル合成手段と、
を備えることを特徴とするベクトル生成装置。
【請求項５】
請求項１乃至４いずれか記載のベクトル生成装置であって、
前記受信部は、前記相関係数Ｅの許容範囲の情報を受け取り、
前記ベクトル演算部は、前記相関係数Ｅを、前記許容範囲に応じて変動させる相関係数変動手段を有することを特徴とするベクトル生成装置。
【請求項６】
請求項１乃至４いずれか記載のベクトル生成装置であって、
前記記憶部は、前記ベクトル演算部が生成した前記第３のベクトルＵの履歴情報を記憶し、
前記ベクトル演算部は、前記履歴情報に記録されていない前記第３のベクトルＵを生成するよう制御する生成ベクトル分散手段を有することを特徴とするベクトル生成装置。
【請求項７】
請求項１乃至４いずれか記載のベクトル生成装置であって、
前記記憶部は、前記第１のベクトルＲを検証するための基準となる情報であるベクトル検証情報を記憶し、
前記ベクトル演算部は、前記ベクトル検証情報を基準にして、前記第１のベクトルＲを検証し、検証結果に応じて、前記第３のベクトルＵの生成方法を変えるベクトル検証手段を有することを特徴とするベクトル生成装置。
【請求項８】
請求項１乃至４いずれか記載のベクトル生成装置であって、
前記記憶部は、前記第１のベクトルＲの各成分の機密レベルと前記機密レベルに応じた対応方法の情報である受信ベクトル制御情報を記憶し、
前記受信部は、前記受信ベクトル制御情報を基準にして、前記第１のベクトルＲの成分を選択することを特徴とする請求項１乃至３いずれか記載のベクトル生成装置。
【請求項９】
演算機能を有する装置におけるベクトル生成方法であって、
前記装置によって実行されるところの、
情報伝送可能に接続されたサーバより、第１のベクトルＲを受信する第１のステップと、
第２のベクトルを記憶する記憶部より、第２のベクトルＴを取得する第２のステップと、
前記第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出する第３のステップと、
前記相関係数Ｅが一致する、第２のベクトルＴとは異なる第３のベクトルＵを算出する第４のステップと、
前記第３のベクトルＵを前記サーバへ送信する第５のステップと、
からなるベクトル生成方法。
【請求項１０】
請求項９記載のベクトル生成方法であって、
前記第３ステップにおける前記相関係数Ｅの算出は、第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数をＶ＝Ｆ（Ｘ，Ｙ）として、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出し、
前記第４のステップは、前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎの、該Ｔｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの、（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することにより、前記第３のベクトルＵを生成するステップと、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを取得するステップと、
前記相関係数Ｅ、前記第１のベクトルＲ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数として、Ｗ＝Ｇ（Ｅ，Ｒ，Ｔｒ）によりベクトルＷを算出するステップと、
前記変数ベクトルＴｙを前記ベクトルＷに置き換えた、前記第３のベクトルＵを生成するステップと、
からなるベクトル生成方法。
【請求項１１】
一定の要件を満たすデータを生成するベクトル装置を搭載する集積回路であって、
前記ベクトル生成装置は、Ｎ次元の第２のベクトルＴを記憶する記憶部と、
情報伝送可能に接続されたサーバより受信したＮ（Ｎは２以上の自然数）次元の第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出し、前記相関係数Ｅが一致する、前記第２のベクトルＴとは異なる第３のベクトルＵを生成するベクトル演算部を備えることを特徴とする集積回路。
【請求項１２】
請求項１１記載の集積回路であって、
前記ベクトル演算部は、第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を用いて、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを前記第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出する相関係数算出手段と、
前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎを選択し、選択したｎ次元の部分ベクトルＴｎの該Ｔｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの、（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することにより、前記第３のベクトルＵを生成するベクトル置換手段と、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
前記相関係数Ｅ、前記第１のベクトルＲ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数とした、Ｗ＝Ｇ（Ｅ，Ｒ，Ｔｒ）を算出するベクトル演算手段と、
変数ベクトルＴｙを前記ベクトルＷに置き換えて成る、前記第３のベクトルＵを生成するベクトル合成手段と、
を備えることを特徴とする集積回路。
【請求項１３】
請求項１１記載の集積回路であって、
前記ベクトル演算部は、第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を用いて、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを前記第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出する相関係数算出手段と、
前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎを選択し、選択したｎ次元の部分ベクトルＴｎの該Ｔｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの、（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することにより、前記第３のベクトルＵを生成するベクトル置換手段と、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
前記相関係数Ｅ、前記第１のベクトルＲ、前記第２のベクトルＴ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数とした、Ｗ＝Ｇ（Ｅ，Ｔ，Ｒ，Ｔｒ）を算出するベクトル演算手段と、
変数ベクトルＴｙを前記ベクトルＷに置き換えて成る、前記第３のベクトルＵを生成するベクトル合成手段と、
を備えることを特徴とする集積回路。
【請求項１４】
生体認証に用いられる請求項２乃至４いずれか記載のベクトル生成装置であって、
前記第１のベクトルＲは、センサで取得したユーザの生体情報から、特徴量であるベクトルを抽出したものである特徴抽出ベクトルであり、
前記第２のベクトルＴは、事前に登録処理された、あるユーザが本人であるかどうかを判断する際に基準となるものである生体テンプレートであることを特徴とするベクトル生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、ユーザの正当性を認証するためのベクトル生成装置、ベクトル生成方法及び集積回路に関するものである。
【背景技術】
【０００２】  生体認証技術の分野において、近年、ＩＣカード等のＣＰＵと耐タンパ性のある記憶領域を持つセキュリティデバイスをユーザが携帯し、セキュリティデバイスに記憶されたユーザの生体的特徴を示す生体テンプレートと、センサから取得したユーザの顔や、指紋画像、声紋を照合して、電子マネーや定期券、電子チケット等のサービスを利用する際に、ユーザに対して本人認証を行う生体認証技術が求められ始めている。【０００３】  そのような背景の中で、近年、プライバシー保護の観点から、生体テンプレートを保護する技術が求められている（例えば特許文献１参照）。【０００４】  このシステムは、図２１に示すように、例えば操作者２１０８を認証する認証装置２１００と、操作者２１０８が保持する可搬型記憶部２１０６とから構成されている。【０００５】  認証装置２１００は、人から生体情報を読み取る生体情報入力部２１０１と、可搬型記憶部２１０６に対して、データの読み書きを行うリーダライタ２１０２と、データを格納するメモリ２１０３と、生体情報とテンプレートを比較して個人認証を行う認証部２１０４と、から構成されている。【０００６】  生体テンプレートは、部分テンプレートＡ２１０５と、部分テンプレートＢ２１０７に分割され、メモリ２１０４と、可搬型記憶部２１０６に格納されている。【０００７】  認証時には、操作者２１０８の生体情報を生体入力部２１０１が読み取り、認証部２１０４に渡し、認証部２１０４は、メモリ２１０３に格納された部分テンプレートＡ２１０５と、リーダライタ２１０２が可搬型記憶部２１０６から読み出した部分テンプレートＢ２１０７から元のテンプレートを合成し、操作者２１０８から読み取った生体情報と比較して、個人認証を行うという装置である。【０００８】
【特許文献１】特開２００１−６７１３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】  しかしながら、上記のような従来の、生体テンプレートと、生体情報入力部２１０１から取得した生体情報を照合する認証装置においては、認証時には生体テンプレートが完全な形で存在するため、生体テンプレートが漏洩した場合に、二次利用される危険性があるという問題があった。【００１０】  これを解決するために、ユーザの携帯するセキュリティデバイス（従来例における可搬型記憶部２１０６に該当する）内で認証処理する方法が提案されている。しかし、処理能力を考慮した場合、サーバのリソースを利用して認証処理する場合の方が高速に処理可能であるため、より望ましい構成である。【００１１】  本発明は、従来の問題を解決するためになされたもので、サーバのリソースを利用して高速に認証可能で、且つ、生体テンプレートに代表される秘匿情報として扱うべき情報を二次利用できないように保護しつつ、生体認証といった認証処理の基礎となるデータ（ベクトル）を生成するベクトル生成装置、ベクトル生成方法及び集積回路を提供することを目的とする。
【課題を解決するための手段】
【００１２】  本発明のベクトル生成装置は、一定の要件を満たすデータを生成する装置であって、情報伝送可能に接続されたサーバよりＮ（Ｎは２以上の自然数）次元の第１のベクトルＲを受信する受信部と、Ｎ次元の第２のベクトルＴを記憶する記憶部と、前記第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出し、前記相関係数Ｅが一致する、前記第２のベクトルＴとは異なる第３のベクトルＵを生成するベクトル演算部と、前記第３のベクトルＵを前記サーバへ送信する送信部とを備える構成を有している。【００１３】  この構成により、第２のベクトルを外部に出すことなく保護した状態で、外部が「端末が第２のベクトルを保持していること」を確認可能となり、高速に認証可能で、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全である。【００１４】  また、本発明のベクトル生成装置は、前記受信部は、前記相関係数Ｅの許容範囲の情報を受け取り、前記ベクトル演算部は、前記相関係数Ｅを、前記許容範囲に応じて変動させる相関係数変動手段を備えた構成を有している。【００１５】  この構成により、ベクトルＵからベクトルＴを推測しようとした場合の候補となる範囲がさらに広がり、ベクトルＴを推測することが更に困難になる。【００１６】  また、本発明のベクトル生成装置は、前記記憶部は、前記ベクトル演算部が生成した前記第３のベクトルＵの履歴情報を記憶し、前記ベクトル演算部は、前記履歴情報に記録されていない前記第３のベクトルＵを生成するよう制御する生成ベクトル分散手段を備えた構成を有している。【００１７】  この構成により、乱数の生成方法の分析を利用したベクトルＴの推測を困難にする。【００１８】  また、本発明のベクトル生成装置は、前記記憶部は、前記第１のベクトルＲを検証するための基準となる情報であるベクトル検証情報を記憶し、前記ベクトル演算部は、前記ベクトル検証情報を基準にして、前記第１のベクトルＲを検証し、検証結果に応じて、前記第３のベクトルＵの生成方法を変えるベクトル検証手段を備えた構成を有している。【００１９】  この構成により、ベクトルＲを操作して生成されたベクトルＵから、ベクトルＴを推測することを困難にする。【００２０】  また、本発明のベクトル生成装置は、前記記憶部は、前記第１のベクトルＲの各成分の機密レベルと前記機密レベルに応じた対応方法の情報である受信ベクトル制御情報を記憶し、前記受信部は、前記受信ベクトル制御情報を基準にして、前記第１のベクトルＲの成分を選択する構成を有している。【００２１】  この構成により、第２のベクトルのうち、機密レベルの高い成分を優先的に保護することが可能である。【００２２】  本発明のベクトル生成方法は、演算機能を有する装置におけるベクトル生成方法であって、前記装置によって実行されるところの、情報伝送可能に接続されたサーバより、第１のベクトルＲを受信する第１のステップと、第２のベクトルを記憶する記憶部より、��２のベクトルＴを取得する第２のステップと、前記第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出する第３のステップと、前記相関係数Ｅが一致する、第２のベクトルＴとは異なる第３のベクトルＵを算出する第４のステップと、前記第３のベクトルＵを前記サーバへ送信する第５のステップとからなる構成を有している。【００２３】  この構成により、高速に認証可能で、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全である。【００２４】  本発明の集積回路は、一定の要件を満たすデータを生成するベクトル生成装置を搭載する集積回路であって、前記ベクトル生成装置は、Ｎ次元の第２のベクトルＴを記憶する記憶部と、情報伝送可能に接続されたサーバより受信したＮ（Ｎは２以上の自然数）次元の第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出し、前記相関係数Ｅが一致する、前記第２のベクトルＴとは異なる第３のベクトルＵを生成するベクトル演算部を備える構成を有している。【００２５】  この構成により、高速に認証可能で、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全である。
【発明の効果】
【００２６】  本発明は、高速に認証可能で、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全であるという効果がある。
【図面の簡単な説明】
【００２７】
【図１】本発明の第１の実施の形態におけるベクトル生成装置のシステム構成図
【図２】本発明の第１の実施の形態における処理フロー図
【図３】本発明の第１の実施の形態における端末の詳細構成図
【図４】本発明の第１の実施の形態におけるベクトルＴｒを求める処理フロー図
【図５】本発明の第２の実施の形態におけるベクトル生成装置のシステム構成図
【図６】本発明の第２の実施の形態におけるベクトルＴｒを求める処理フロー図
【図７】本発明の第３の実施の形態におけるベクトル生成装置のシステム構成図
【図８】本発明の第３の実施の形態における処理フロー図
【図９】本発明の第３の実施の形態における相関係数を変動させる処理フロー図
【図１０】本発明の第４の実施の形態におけるベクトル生成装置のシステム構成図
【図１１】本発明の第４の実施の形態における処理フロー図
【図１２】本発明の第４の実施の形態における履歴情報の具体例を示す図
【図１３】本発明の第５の実施の形態におけるベクトル生成装置のシステム構成図
【図１４】本発明の第５の実施の形態における処理フロー図
【図１５】本発明の第５の実施の形態におけるベクトル検証情報の具体例を示す図
【図１６】本発明の第６の実施の形態におけるベクトル生成装置のシステム構成図
【図１７】本発明の第６の実施の形態における処理フロー図
【図１８】本発明の第６の実施の形態における受信ベクトル制御情報の具体例を示す図
【図１９】本発明の第１の実施の形態におけるベクトル演算部と記憶部がＬＳＩである場合のベクトル生成装置のシステム構成図
【図２０】本発明の第２の実施の形態におけるベクトル演算部と記憶部がＬＳＩである場合のベクトル生成装置のシステム構成図
【図２１】従来例のシステム構成図
【符号の説明】
【００２８】  １０    外部機器
１００  端末
１０１  受信部
１０２  記憶部
１０３  ベクトル演算部
１０４  送信部
３００  相関係数算出手段
３０１  ベクトル置換手段
３０２  ベクトル関数記憶手段
３０３  ベクトル演算手段
３０４  ベクトル合成手段
３０５  テンプレートベクトル
５００  ベクトル演算部
５０１  相関係数算出手段
５０２  ベクトル置換手段
５０３  ベクトル関数記憶手段
５０４  ベクトル演算手段
５０５  ベクトル合成手段
７００  受信部
７０１  ベクトル演算部
７０２  相関係数変動手段
８００  処理「相関係数許容範囲受信」
８０１  処理「相関係数変動」
１０００  ベクトル演算部
１００１  生成ベクトル分散手段
１００２  履歴情報
１２００  識別番号
１２０１  値
１２０２  履歴情報の一行目
１３０１  ベクトル検証情報
１３０２  ベクトル検証手段
１３０３  ベクトル演算部
１４００  処理「ベクトル検証情報取得」
１５００  しきい値
１５０１  個数
１６００  受信ベクトル制御情報
１６０１  受信部
１７００  処理「受信ベクトル制御」
１８００  絶対受信成分
１８０１  成分優先度
１８０２  識別番号
１９００  ＬＳＩ
２０００  ＬＳＩ
２１００  認証装置
２１０１  生体情報入力部
２１０２  リーダライタ
２１０３  メモリ
２１０４  認証部
２１０５  部分テンプレートＡ
２１０６  可搬型記憶部
２１０７  部分テンプレートＢ
【発明を実施するための最良の形態】
【００２９】  以下、本発明の実施の形態を、図面を参照しながら説明する。
（実施の形態１）【００３０】  本発明の第１の実施形態における、ベクトル生成装置のシステム構成を図１に示す。【００３１】  端末１００は、内容について外部機器に知られたくないベクトルを保持しているベクトル生成装置であり、サーバと情報伝送可能に接続されている。【００３２】  そのベクトルを持っているかどうかを、外部機器が保持するベクトルとの相関係数を算出し調べることで、確認したいという要求を外部機器から受けると、端末１００は、外部機器（例えば認証機器）１０での相関係数の算出方法に合わせて、算出結果が同じになり、且つ、元のベクトルを特定できない新たなベクトルを生成し、外部機器１０へ送信する。【００３３】  外部機器１０では、その新たなベクトルを受け取り、相関係数を算出し、「端末がそのベクトルを保持している」かどうかを判断する。【００３４】  上記の端末１００は、外部から通信網を利用してベクトルを受け取る受信部１０１と、ベクトルを記憶する記憶部１０２と、二つのベクトルの間の相関係数を算出し、その相関係数と一致する新たなベクトルを生成するベクトル演算部１０３と、ベクトルを外部へ送信する送信部１０４とから構成されている。【００３５】  図２は本実施形態の処理フローの概要を示す図である。【００３６】  処理２００の第１ベクトル受信では、受信部１０１が、外部から通信網を利用して、第１のベクトルを受信し、ベクトル演算部１０３に渡す。【００３７】  処理２０１の第２ベクトル取得では、ベクトル演算部１０３が、記憶部１０２から、第２のベクトルを取得する。【００３８】  処理２０２の相関係数算出では、ベクトル演算部１０３が、相関係数を算出する関数を利用して、第１のベクトルと、第２のベクトルの相関係数を算出する。【００３９】  処理２０３の第３ベクトル算出では、ベクトル演算部１０３が、第１のベクトルと第２のベクトルの相関係数と一致する第１のベクトルに類似する新たな第３のベクトルを生成する。【００４０】  処理２０４の第３のベクトル送信では、生成した第３のベクトルを外部へ送信する。【００４１】  端末１００は、例えば、携帯電話、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｔａｎｔ）といった携帯端末や、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カードといった携帯型の記憶デバイスや、パーソナルコンピュータなどである。【００４２】  携帯端末の場合には、記憶部１０２は、フラッシュメモリなどの不揮発性メモリから構成されており、ベクトル演算部１０３は、ＣＰＵと、ＲＯＭと、ＲＡＭから構成されており、送信部１０１は、外部のネットワークと通信するためのアンテナ、ＲＦ部、無線通信制御回路から構成されている。【００４３】  携帯型の記憶デバイスの場合には、記憶部１０２は、フラッシュメモリなどの不揮発性メモリから構成されており、ベクトル演算部１０３は、ＣＰＵと、ＲＯＭと、ＲＡＭから構成されており、送信部１０４は、外部の機器と通信するための、接触通信インターフェースや、非接触通信インターフェースで構成されている。【００４４】  パーソナルコンピュータの場合には、記憶部１０２は、ＨＤＤから構成されており、ベクトル演算部１０３は、ＣＰＵとメモリによって構成されており、送信部１０４は、外部のネットワークと通信するためのモデムやネットワークカード、無線で通信するためのＲＦ部、無線通信制御回路を備えたカードやＵＳＢデバイスから構成されている。【００４５】  ＲＯＭには、ＯＳなどの基本的なソフトウェアが格納され、それらがＲＡＭを用いてＣＰＵで実行されることによって、記憶部１０２、ＲＯＭに格納されている各種のソフトウェアを実行する携帯端末、携帯型の記憶デバイス、パーソナルコンピュータが実現される。【００４６】  次に、ベクトルについて説明する。本実施形態において、ベクトルとは、生体認証に利用する顔、指紋、掌静脈などの生体的な特徴量を抽出した値の列のことを指す。【００４７】  ここでは、生体認証のアルゴリズムの一つである固有顔を利用した方法を例にとり、ベクトルについて説明する。【００４８】  複数の顔画像サンプルの平均をとった顔画像である平均顔をμとする。μは、例えば、モノクロ濃淡画像で、１２８＊１２８ピクセルの画像とすると、各ピクセルを要素とする１２８行１２８列の行列である。【００４９】  ｉ番目の正規直行基底をΦｉと表現する。このΦｉは、学習用の顔画像の集合について、主成分分析を行い求められるものである。Φｉについてもμと同じ次元の行列である。【００５０】  あるユーザから取得した顔画像を行列Ａとする。行列ＡをμとＮ個のΦｉで表現した場合の各Φｉにかかる係数をｂｉとした場合に、ある画像Ａは、下記の式で表せる。【００５１】
【数１】
2006090680.tif 000002
【００５２】  このベクトルは、２種類ある。一つのベクトルは、キオスク端末、サービスを提供するサーバなどの外部の者が、あるユーザが本人であるかどうかを判断する際にセンサからそのユーザの生体情報である顔画像を取得し、特徴量であるベクトルを抽出したものである。【００５３】  もう一つのベクトルは、事前に登録処理を行い、記憶部１０２に保存されており、あるユーザが本人であるかどうかを判断する際に基準となるものであり、生体テンプレートと呼ばれるものである。そして、この２種類のベクトル情報を比較することで、あるユーザが本人かどうかを判断することが可能になる。【００５４】  本実施の形態では、前者のベクトルを特徴抽出ベクトル、後者のベクトルをテンプレートベクトルと呼ぶことにする。【００５５】  前述の受信部１０１が受信する第１のベクトルは、特徴抽出ベクトルに相当し、記憶部１０２に格納されている第２のベクトルは、テンプレートベクトルに相当する。【００５６】  次に、ベクトル演算部１０３の動作について、詳細を説明する。図３に詳細構成を示す。【００５７】  ベクトル演算部１０３は、外部から受信した特徴抽出ベクトルＲと、記憶部１０２に記憶されているテンプレートベクトルＴから、二つのベクトルＸ、Ｙを入力して相関係数を算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を利用して、相関係数Ｅ＝Ｆ（Ｒ，Ｔ）を算出する相関係数算出手段３００と、テンプレートベクトルの任意のｎ個を要素とするｎ次元のベクトルＴｎを選択し、元のテンプレートベクトルＴｎとは異なるｎ次元のベクトルＴｒに置き換え、その他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元のベクトルＴＮ−ｎを、（Ｎ−ｎ）次元の変数ベクトルＴｙに置き換えてなるＮ次元のベクトルＵを生成するベクトル置換手段３０１と、関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求める関数Ｇを記憶するベクトル関数記憶手段３０２と、相関係数Ｅ、特徴抽出ベクトルＲ、ｎ次元部分ベクトルＴｒをベクトル関数Ｇの変数とした、ベクトルＷ＝Ｇ（Ｅ，Ｒ，Ｔｒ）を算出するベクトル演算手段３０３と、変数ベクトルＴｙをベクトルＷに置き換え、ベクトルＵを生成するベクトル合成手段３０４とから構成されている。ベクトルＵが、前述した第３のベクトルに相当する。【００５８】  次に、相関係数について説明する。【００５９】  本実施形態における相関係数とは、二つのベクトルの類似度を表すものである。例えば、距離、内積などである。【００６０】  距離の場合には、基本的には、ベクトルの各成分の差の二乗の和を利用し、０に近いかどうかなどを判断基準に利用する。本実施形態の場合は、式で表すと
Ｅ＝‖Ｔ−Ｒ‖２または、Ｅ＝‖Ｕ−Ｒ‖２
となる。Ｔ、Ｒ、Ｕのｉ番目の成分をｔｉ、ｒｉ、ｕｉとすると、次のようになる。【００６１】
【数２】
2006090680.tif 000003
【００６２】  上式を利用して相関係数Ｅを算出するのが、相関係数算出手段３００の処理である。【００６３】  次に部分ベクトルＴｒについて説明する。Ｔｒのｉ番目の成分をｔｒｉとする。【００６４】
【数３】
2006090680.tif 000004
【００６５】  そして、ベクトルＴｒと特徴抽出ベクトルＲの各成分の差の二乗の和の値が相関係数の値を越えないように、順に値を確定させる。【００６６】  Ｔｒの各成分の求め方を示す処理フローを図４に示す。【００６７】  処理４００では、まずどの成分の値を確定させるかを決定する。本実施の形態では、一例として１番目の成分から順に確定させることとし、ｉ＝１とする。【００６８】  処理４０１では、乱数を発生させて、仮のｔｒｉとする。ｔｒｉは基本的には、実数である。【００６９】  処理４０２では、仮にＴｒの成分の値として決めた値が、本来のＴの成分の値と一致しないように、調べる処理を行う。【００７０】  一致しない場合は、処理４０３へ進み、一致する場合には、処理４０１へ戻る。【００７１】  処理４０３では、ＴｒとＲの差の二乗の和が、相関係数を越えていないかどうかを調べる処理である。【００７２】
【数４】
2006090680.tif 000005
【００７３】  越えていない場合には、処理４０４に進み、越えている場合には、処理４０１に戻る。【００７４】  処理４０４では、仮に決めていたｔｒｉの値を、確定した値とする。【００７５】  処理４０５では、次の成分を決めるために、ｉに１を足している。尚、決める順番については、１ずつ足していく方法以外でも良い。【００７６】  処理４０６では、全てのＴｒの成分の値が確定したかどうかを調べる。【００７７】  Ｔｒはｎ次元であるので、ｉがｎ＋１になっていれば、全ての成分の値が確定したことが分かる。【００７８】  確定していれば、処理は終了し、確定していない場合には、処理４０１に戻る。
以上が、Ｔｒの各成分を求めるフローである。【００７９】  上記のＴｒを確定し、残りの部分を変数ベクトルＴｙに置換する処理が、ベクトル置換手段３０１の処理である。そしてＴｙの成分について、後述するベクトル関数Ｇで求める。【００８０】  ベクトル関数Ｇについて説明する。
ベクトル関数Ｇは、相関係数Ｅ、特徴抽出ベクトルＲ、ｎ次元部分ベクトルＴｒからベクトルＷを算出する関数である。【００８１】
【数５】
2006090680.tif 000006
【００８２】  上記式を利用して、ベクトルＷを求めるのが、訳って清楚ｓ尾ベクトル演算手段３０３の処理である。【００８３】  以上の結果と、Ｔｙ＝Ｗから、Ｕの各成分が求められ、下記のようになる。【００８４】
【数６】
2006090680.tif 000007
上記Ｕを求めるのが、ベクトル合成手段３０４の処理である。【００８５】  なお、本実施の形態では、距離により相関係数を求める場合に、ｕ１からｕＮ−１をｔｒ１からｔｒＮ−１としたが、ベクトルＵの任意のＮ−１個の要素をＴｒの成分とし、残りの要素をＴｙとしても良い。【００８６】  また、本実施形態では、ｔｒ１から順に値を確定させたが、確定させる順番については、任意の順で良く、差の二乗の和の値が相関係数の値を越えないように、値を確定させれば良い。最終的に、ＵとＲの相関係数と、ＴとＲの相関係数が一致すれば良い。【００８７】  以上が距離で判断する場合についての説明である。【００８８】  次に、具体的な値を例にとって、距離で判定する場合について説明する。【００８９】
【数７】
2006090680.tif 000008
【００９０】  尚、本実施形態では、特徴抽出ベクトルＲをＮ次元受信したパターンで説明しているが、Ｎ次元よりも少ない次元の分だけ受信する場合もあり得る。そのような場合には、受け取った部分について、本実施の形態で説明した方法でベクトルを生成することになる。【００９１】  また、本実施形態では、ベクトルＵの成分を決定する方法として、乱数を利用して、順に決めていく方法をとったが、ベクトルＵを求める方法はそれに限らない。例えば、端末１００の処理能力が低い場合には、（数８）に示す各項が等しいと仮定して、（数９）に示す式から各ｕｉを求める方法をとることで、低速、小メモリの端末においても実行可能であるため有効である。【００９２】
【数８】
2006090680.tif 000009
【数９】
2006090680.tif 000010
【００９３】  以上の処理により、相関係数が同じになるベクトルＵを生成し、ベクトルＵを外部機器に送信することによって、秘匿情報であるベクトルＴを外部に出すことなく保護した状態で、外部機器が「端末がベクトルＴを保持していること」を確認可能となる。【００９４】  特に、生体認証に適応する場合には、漏洩した場合に無効化することが困難な生体テンプレートを外部に出すことなく保護した状態で、生体認証を行うことが可能となる。【００９５】  尚、図１９に示すように、記憶部１０２、ベクトル演算部１０３は、典型的には、集積回路であるＬＳＩ１９００として実現される。これらは個別に１チップ化されても良いし、一部または、全てを含むように１チップ化されても良い。【００９６】  ここではＬＳＩとしたが、集積度の違いにより、ＩＣ，システムＬＳＩ，スーパーＬＳＩ，ウルトラＬＳＩと呼称されることもある。【００９７】  また、集積回路化の手法は、ＬＳＩに限るものではなく、専用回路または汎用プロセサで実現しても良い。ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を動的に再構成可能なダイナミック・リコンフィギュラブル・プロセッサーを利用しても良い。【００９８】  さらには、半導体技術の進歩または派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応などが可能性としてありえる。【００９９】（実施の形態２）
本発明の第２の実施形態におけるベクトル生成装置のシステム構成を図５に示す。【０１００】  本実施形態は、第１の実施形態とほぼ同じ内容であるが、ベクトルの類似性を判断する基準に、内積を利用する点が異なる。【０１０１】  端末１００は、二つのベクトルの間の内積を利用した相関係数を算出し、その相関係数と一致する新たなベクトルを生成するベクトル演算部５００が異なる。【０１０２】  手段として異なるのは、ベクトル演算部５００を構成する手段である。すなわち、内積を利用した相関係数を算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を利用して、相関係数Ｅ＝Ｆ（Ｒ，Ｔ）を算出する相関係数算出手段５０１と、テンプレートベクトルの任意のｎ個を要素とするｎ次元のベクトルＴｎを選択し、元のテンプレートベクトルＴｎとは異なるｎ次元のベクトルＴｒに、内積を判断基準にして置き換え、その他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元のベクトルＴＮ−ｎを、（Ｎ−ｎ）次元の変数ベクトルＴｙに置き換えてなるＮ次元のベクトルＵを生成するベクトル置換手段５０２と、内積を利用した関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求める関数Ｇを記憶するベクトル関数記憶手段５０３と、相関係数Ｅ、ベクトルＴ、特徴抽出ベクトルＲ、ｎ次元部分ベクトルＴｒを、ベクトル関数Ｇの変数とした、ベクトルＷ＝Ｇ（Ｅ，Ｔ，Ｒ，Ｔｒ）を算出するベクトル演算手段５０４と、変数ベクトルＴｙをベクトルＷに置き換え、ベクトルＵを生成するベクトル合成手段５０５が第１の実施形態と異なる。【０１０３】  次に具体的に、相関係数として、内積を利用する場合について説明する。
以下、その一例を示す。内積を判断基準にする場合には、ベクトルの成す角が、０に近いかどうかなどを判断基準に利用する。【０１０４】  本実施形態の場合は、式で表すと、ｃｏｓθ＝Ｔ・Ｒ／‖Ｔ‖‖Ｒ‖を判断基準に利用する場合がある。ＴをあらたなベクトルＵに変換するので、分母の‖Ｒ‖は、ここでは、値が変わらないため、省略することにし、条件‖Ｕ‖＝‖Ｔ‖の下で、Ｅ＝Ｆ（Ｒ，Ｔ）＝Ｒ・Ｔ＝Ｆ（Ｒ，Ｕ）＝Ｒ・Ｕ、とする。Ｔ、Ｒ、Ｕのｉ番目の成分をｔｉ、ｒｉ、ｕｉとすると、相関係数は、下記式で表せる。【０１０５】
【数１０】
2006090680.tif 000011
【０１０６】  上記式を利用して、相関係数Ｅを算出するのが、相関係数算出手段５０１の処理である。【０１０７】  次に部分ベクトルＴｒについて説明する。Ｔｒのｉ番目の成分をｔｒｉとする。【０１０８】
【数１１】
2006090680.tif 000012
【０１０９】  そして、ベクトルＴｒと特徴抽出ベクトルＲの各成分との積の和が相関係数の値を越えない、且つ、大きさが、ベクトルＴの大きさを越えないように、順に値を確定させる。【０１１０】  Ｔｒの各成分の求め方を示す処理フローを図６に示す。
基本的な流れは、図４の処理４００から４０６と同じである。但し、４０３と６０３の処理が異なる。【０１１１】  処理４０３では、ＴｒとＲの内積の和が、相関係数を越えていないかどうかを調べる処理である。【０１１２】
【数１２】
2006090680.tif 000013
【０１１３】  上記両方を満たしている場合には、処理６０４に進み、満たしていない場合には、処理６０１に戻る。【０１１４】  上記のＴｒを確定し、残りの部分を変数ベクトルＴｙに置換する処理が、ベクトル置換手段５０２の処理である。そしてＴｙの成分について、後述するベクトル関数Ｇで求める。【０１１５】  ベクトル関数Ｇについて説明する。
ベクトル関数Ｇは、相関係数Ｅ、特徴抽出ベクトルＲ、ｎ次元部分ベクトルＴｒからベクトルＷを算出する関数である。【０１１６】
【数１３】
2006090680.tif 000014
【０１１７】  上記式を利用してベクトルＷを求めるのが、ベクトル演算手段５０４の処理である。【０１１８】  実数として求める場合には、平方根の中の値が０以上になるように各成分を決める必要がある。虚数を認める場合には特に問題ない。【０１１９】  以上の結果と、Ｔｙ＝Ｗから、Ｕの各成分が求められ、下記のようになる。【０１２０】
【数１４】
2006090680.tif 000015
（複合任意である。）【０１２１】  上記Ｕを求めるのが、ベクトル合成手段５０５の処理である。【０１２２】  なお、本実施形態では、内積を相関係数算出に利用する場合に、ｕ１からｕＮ−２をｔｒ１からｔｒＮ−２としたが、ベクトルＵの任意の要素をＴｒの成分とし、残りの要素をＴｙとして良い。【０１２３】  また、本実施形態では、ｔｒ１から順に値を確定させたが、確定させる順番については任意の順で良く、内積の和の値が相関係数の値を越えない、且つ、ベクトルの大きさがベクトルＴの大きさを越えないように値を確定させれば良い。最終的に、ＵとＲの相関係数と、ＴとＲの相関係数、及び、ＵとＴの大きさが一致すれば良い。【０１２４】  また、基本的には、ｔｒ１を実数として求めたが、虚数を認める場合には虚数でも良い。【０１２５】  その場合には、処理６０３の条件の内積に関しても、大きさに関しても判定する必要がなくなる。【０１２６】  また、その他の例として、単純に内積の値のみを利用して判定を行う場合には、内積の値を維持するようにＵを計算すれば良い。【０１２７】  以上が内積で判断する場合についての説明である。【０１２８】  尚、本実施形態では、特徴抽出ベクトルＲをＮ次元受信したパターンで説明しているが、Ｎ次元よりも少ない次元の分だけ受信する場合もあり得る。【０１２９】  そのような場合には、受け取った部分について、本実施形態で説明した方法で、ベクトルを生成することになる。【０１３０】  以上の処理により、相関係数が同じになるベクトルＵを生成し、ベクトルＵを外部に送信することによって、ベクトルＴを外部に出すことなく保護した状態で、外部が「端末がベクトルＴを保持していること」を確認可能となる。【０１３１】  特に、生体認証に適応する場合には、漏洩した場合に無効化することが困難な生体テンプレートを外部に出すことなく保護した状態で、生体認証を行うことが可能になる。また、漏洩した場合に無効化することが困難な生体テンプレートを外部に出すことなく保護した状態で、生体認証を行うことが可能となる。【０１３２】  尚、図２０に示すように、記憶部１０２、ベクトル演算部５００は、典型的には、集積回路であるＬＳＩ２０００として実現される。これらは個別に１チップ化されても良いし、一部または、全てを含むように１チップ化されても良い。【０１３３】  ここではＬＳＩとしたが、集積度の違いにより、ＩＣ，システムＬＳＩ，スーパーＬＳＩ，ウルトラＬＳＩと呼称されることもある。【０１３４】  また、集積回路化の手法は、ＬＳＩに限るものではなく、専用回路または、汎用プロセサで実現しても良い。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。【０１３５】  さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応などが可能性としてありえる。【０１３６】（実施の形態３）
本発明の第３の実施形態におけるベクトル生成装置のシステム構成を図７に示す。
第１及び第２の実施形態では、算出した相関係数Ｅと同じになるベクトルＵを生成するという内容であったが、本実施形態では、算出したＥを判断基準の許容範囲内で更に変動させた後に、ベクトルＵを生成する。【０１３７】  端末１００は、外部から通信網を利用してベクトルと相関係数の許容範囲を受け取る受信部７００と、二つのベクトルの間の相関係数を算出し、許容範囲内で相関係数の値を変動させ、その相関係数と一致する新たなベクトルを生成するベクトル演算部７０１が異なる。【０１３８】  処理フローの概要を図８に示す。基本的には、図２の処理フローの内容であるが、更に、相関係数を変動させるための処理が増えている。【０１３９】  処理８００の相関係数許容範囲受信では、受信部７００が、外部から通信網を利用して相関係数の許容範囲に関する情報を受信し、ベクトル演算部７０１に渡す。【０１４０】  処理８０１の相関係数変動では、処理２０２で算出した相関係数を、相関係数の許容範囲内で変動させる。【０１４１】  以上が処理フローの概要についての異なる点である。【０１４２】  ベクトル演算部７０１については、相関係数Ｅと、相関係数の許容範囲に関する情報から、相関係数Ｅを変動させる相関係数変動手段７０２を備えている点が、第１及び第２の実施形態とは異なる。【０１４３】  ベクトル演算部７０１の詳細なフローに関しては、相関係数算出手段３００が相関係数を算出した後に、その相関係数を相関係数変動手段７０２が変動させる点が異なる。【０１４４】  図９に相関係数を変動させる処理フローを示す。【０１４５】  処理９００では、算出した相関係数Ｅが、相関係数の許容範囲を満たすかどうかを判断する。許容範囲を満たす場合には、処理９０１に進み、許容範囲を満たさない場合には、処理９０４に進む。【０１４６】  処理９０１では、相関係数を変動させるための値を乱数を利用して生成する。【０１４７】  処理９０２では、相関係数と、相関係数を変動させるための値の和が、相関係数の許容範囲内かどうかを判断する。【０１４８】  範囲内である場合には、処理９０３に進み、範囲外である場合には、処理９０１へ戻る。【０１４９】  処理９０３では、生成した相関係数を変動させる値が条件を満たしたので、相関係数と、生成した相関係数を変動させる値の和を、新たに相関係数として確定し、処理が終わる。【０１５０】  また、処理９０４へ進んだ場合には、相関係数を変動させるための値を乱数などを利用し生成する。【０１５１】  処理９０５では、相関係数と、相関係数を変動させるための値の和が、相関係数の許容範囲外かどうかを判断する。【０１５２】  範囲外である場合には、処理９０３に進み、範囲内である場合には、処理９０４へ戻る。【０１５３】  例えば、相関係数Ｅで、許容範囲が、相関係数Ｅ０以上、Ｅ１以下（Ｅ０＜Ｅ１）であった場合について説明する。【０１５４】  Ｅ０≦Ｅ≦Ｅ１となる場合には、変動させるための値をαとして、αを処理９０１で生成し、Ｅ０≦Ｅ＋α≦Ｅ１を満たすかどうかを処理９０２で判断する。【０１５５】  尚、０からＥ１−Ｅ０の値を処理９０１で生成し、その値にＥ０を足した値がＥ１以下かどうかを、処理９０２で判断する方法もある。【０１５６】  以上が、��関係数を変動させる処理のフローである。【０１５７】  例えば、相関係数の許容範囲が「相関係数の値が０から５の範囲の値を許す」という場合には、算出した相関係数の値に応じて、元の相関係数が範囲内ならば、０から５の範囲を満たすように変動し、元の相関係数が範囲外ならば、０から５を満たさない範囲で変動させる。【０１５８】  また、本実施形態で算出している相関係数が、外部で判断する際のベクトルの一部分である場合には、ベクトル全体に対する割合を考慮した上で、相関係数を変動させても良い。【０１５９】  例えば、相関係数の許容範囲が、０以上５以下で、ベクトルが全体で１００次元で、その内５０次元を受信した場合には、全体の半分の次元数なので、相関係数の変動範囲も全体の半分である０以上２．５以下で変動させる。ただし、外部から、受信する次元数に合わせた許容範囲を受信する場合には、考慮する必要はない。【０１６０】  これにより、ベクトルを部分的に受信する場合に、相関係数Ｅを変動させたことによって、本体受け入れられるはずのユーザが、受け入れられない場合や、その逆の場合が起こらないように相関係数を変動させることが可能である。【０１６１】  以上のように、ベクトルＵを生成する際の基準となるＥを、判断基準の許容範囲内で変動させた後に、ベクトルＵを生成することで、ベクトルＵからベクトルＴを推測しようとした場合の候補となる範囲がさらに広がり、ベクトルＴを推測することが更に困難になる。【０１６２】  特に、生体認証に適応する場合には、許容範囲を考慮した上で、相関係数を変動させた後に、漏洩した場合に無効化することが困難な生体テンプレートとは異なるベクトルを生成して、外部へ送信し、生体認証を行うため、外部へ送信されたベクトルを利用した生体テンプレートの推測が困難となる。【０１６３】（実施の形態４）
本発明の第４の実施形態におけるベクトル生成装置のシステム構成を図１０に示す。【０１６４】  基本的には、第１及び第２の実施形態と同じであるが、本実施形態では、生成したベクトルＵの履歴を基に、外部に送信するＵの値を分散させる点が異なる。そうすることにより、ベクトルＵを利用したベクトルＴの推測を困難にする。【０１６５】  端末１００は、記憶部１０２に、新たに、過去に生成したベクトルＵを記録した履歴情報１００２が格納される点と、二つのベクトルの間の相関係数を算出し、相関係数の値を変動させ、その相関係数と一致する新たなベクトルを、履歴情報１００２を参照して分散させ、生成するベクトル演算部１０００が異なる。【０１６６】  処理フローの概要を図１１に示す。基本的には、図２の処理フローの内容であるが、更に、ベクトルＵを分散させるための処理が増えている。【０１６７】  処理１１００の「履歴情報と一致していないか？」では、処理２０３で算出した第三のベクトルを、履歴情報１００２を参照して、一致しているものが無いか調べ、一致している場合には、処理２０３の第３のベクトル算出からもう一度行い、一致していない場合には、今回生成したベクトルＵを履歴情報に記録し、処理２０４に進む。【０１６８】  以上が処理フローの概要についての異なる点である。【０１６９】  ベクトル演算部１０００については、履歴情報１００２を参照して、ベクトルＵを分散させる生成ベクトル分散手段１００１を備えている点が異なる。【０１７０】  図１２に履歴情報１００２の具体例を示す。【０１７１】  例えば、ベクトルの何番の値であるかを示す識別番号１２００と、その値１２０１の組を横一列に並べたもので、１回で生成したベクトルＵを表現し、それを生成した回数分だけ縦にならべたもので、過去に生成したベクトルＵの履歴情報１００２を表現できる。【０１７２】  一行目１２０２は、ベクトルの１番目の値を３にし、２番目の値を４にし、３番目の値を５にしたことを表している。【０１７３】  新たにベクトルＵを生成した際に、例えば、そのベクトルの成分が、１番目が３で、２番目が４で、３番目が５だった場合には、履歴情報を参照すると一行目１２０２と一致するため、ベクトルＵをもう一度生成しなおす。【０１７４】  一致したかどうかの判断基準は、完全一致のみ生成し直しにしても良いし、部分一致も生成し直しにしても良く、どの程度分散させたいかによって決めることになる。【０１７５】  以上、生成ベクトル分散手段１００１で、履歴情報に記憶されたベクトルを利用することにより、外部へ送信するベクトルＵを分散させることによって、乱数の生成方法の分析を利用したベクトルＴの推測を困難にするという効果を有する。【０１７６】  なお、本実施形態では、生成したベクトルを、履歴情報を基に、一致していないかどういかを調べ、送信するベクトルＵを分散させたが、予め分散させたベクトルＵの集合を用意し、それを順に外部へ送信する方法もある。【０１７７】  その場合の効果としては、分散させたベクトルＵをその場で生成する必要がなくなるため、認証時に処理時間が、その場でベクトルＵを生成する場合より、早くなるという効果を有する。【０１７８】  また、生成した日付を記憶し、ある程度の期間内は一致しないようにする方法もある。また、生成回数を利用して、ある程度の回数は一致しないようにする方法もある。【０１７９】  その場合の効果としては、端末の記憶容量に制限がある場合でも、ベクトルＵの履歴を分散させることが可能である。【０１８０】  以上のようにして、本実施形態では、生成したベクトルＵの履歴を元に、外部に送信するＵの値を分散させ、ベクトルＵを利用したベクトルＴの推測を困難にする。【０１８１】（実施の形態５）
本発明の第５の実施形態におけるベクトル生成装置のシステム構成を図１３に示す。【０１８２】  基本的には、第１及び第２の実施形態と同じであるが、本実施形態では、受信した第１のベクトルである特徴抽出ベクトルＲを、受信する第１のベクトルＲが、信頼できるかどうかを検証するための基準となるベクトル検証情報１３０１を基に検証する点が異なる。【０１８３】  端末１００は、記憶部１０２に、新たにベクトル検証情報１３０１が格納される点と、受信した第１のベクトルを検証情報１３０１を参照して検証するベクトル演算部１３０３が異なる。【０１８４】  処理フローの概要を図１４に示す。【０１８５】  基本的には、図２の処理フローの内容であるが、更に、第１のベクトルを検証し、検証結果によって信用できるという結果の場合には、ベクトルの生成処理を継続し、信用できないという結果の場合には、ベクトルの生成処理を中断する点が異なる。【０１８６】  処理２００で第１のベクトルを受信した後、処理１４００のベクトル検証情報取得では、ベクトル演算部１３０３が、記憶部１０２からベクトル検証情報１３０１を取得する。【０１８７】  処理１４０１の「ベクトル検証情報の条件と一致していないか？」では、受信した第１のベクトルがベクトル検証情報１３０１に記述された条件と一致していないかどうかを、ベクトル演算部１３０３が調べる。【０１８８】  条件と一致していない場合には、処理２０１の第２のベクトル取得へ進み、
条件と一致した場合には、処理１４０２へ進む。【０１８９】  処理１４０２では、受信した第１のベクトルがベクトル検証情報１３０１に記述された条件と一致したため、第３のベクトルを生成する処理を中断し、外部へ警告を送信するなどして、処理を終了する。【０１９０】  ベクトル検証情報１３０１に記述されている第１のベクトルを検証する際の基準としては、所定のしきい値以下の値の個数を調べる方法がある。【０１９１】  図１５に示すように、ベクトル検証情報１３０１には、どのような値を調べる基準にするかを示すしきい値１５００と、ベクトルにどの程度含まれているかを示す個数１５０１が記述されている。【０１９２】  ベクトルＲとして、例えば、（ｒ１，０，０，０，０，０）を受信し、ベクトルＴとの相関係数Ｅを内積で求める場合で、受信したベクトルの要素の値を検証しない場合には、ベクトルＲの第１成分の値以外は全てゼロなので、ベクトルＴの第１成分ｔ１は、ｔ１＝Ｅ／ｒ１という演算によって求められてしまう。【０１９３】  ベクトル演算部１３０３については、ベクトル検証情報１３０１を参照して第１のベクトルを検証するベクトル検証手段１３０２を備えている点が異なる。【０１９４】  ベクトル検証手段１３０２は、受信部１０１が受信した第１のベクトルであるベクトルＲを、ベクトル検証情報１３０１を参照して検証する。【０１９５】  ベクトルＲとして、例えば、（ｒ１，０，０，０，０，０）を受信した場合には、しきい値１５００が０で、個数１５０１が５個であるため、ベクトル検証情報１３０１が図１５の場合には、ベクトル検証情報の判断基準と一致するため、第３のベクトルの生成処理は中断される。【０１９６】  以上のように、ベクトル検証手段１３０２は、ある範囲に含まれる値をどの程度含んでいるかを検証する。【０１９７】  中断処理１４０２については、ベクトル検証手段１３０２は、ベクトル生成を中止し、送信部１０４を通じて、警告を外部に送信する。【０１９８】  また、外部へ送信後の認証処理を通過しないベクトルを生成して送信するなどしても良い。【０１９９】  受信したベクトルの０の数が５個である場合には、警告を出す、ベクトルを送信しないなどとすることにより、ベクトルの成分に０の多いベクトルからベクトルＵを生成させることでベクトルＴを推測することを防ぐ効果がある。【０２００】  以上のように、受信した第１のベクトルである特徴抽出ベクトルを、ベクトル検証情報１３０１を基に検証することにより、ベクトルＲを操作して生成されたベクトルＵから、ベクトルＴを推測することを困難にする。【０２０１】  また、ベクトル検証情報１３０１に過去Ｋ回（Ｋは自然数）受信した第１のベクトルの内容を記録しておき、記録されたベクトルと一致していないかを調べる方法もある。【０２０２】  この方法により、同じ第一ベクトルから生成されるベクトルＵの分布からベクトルＴを推測することを防ぐ効果がある。この場合には、ベクトル検証手段１３０２は、受信した第１のベクトルの値を、ベクトル検証情報１３０１に記録する。【０２０３】（実施の形態６）
本実施形態のベクトル生成装置のシステム構成を図１６に示す。【０２０４】  基本的には、第１及び第２の実施形態と同じであるが、本実施形態では、受け取るべき第１のベクトルの要素に関する情報が記述された受信ベクトル制御情報１８００を基に、受信部１６０１が、第１のベクトルである特徴抽出ベクトルＲを選択的に受信する点が異なる。【０２０５】  端末１００は、記憶部１０２に、新たに、受信ベクトル制御情報１６００が格納される点と、受信ベクトル制御情報１６００を基に受信部１６０１が、第１のベクトルを受信する点が異なる。【０２０６】  処理フローの概要を図１７に示す。基本的には、図２の処理フローの内容であるが、更に、第１のベクトルの受信を制御する処理が増えている点が異なる。【０２０７】  処理１７００では、受信部１６００１が、受信ベクトル制御情報１６００を基にして、受信する第１のベクトルを制御する。【０２０８】  図１８に受信ベクトル制御情報１６００の具体例を示す。【０２０９】  受信ベクトル制御情報１６００には、第１のベクトルの内、必ず受け取る必要がある成分を示す絶対受信成分１８００と、各成分の第１のベクトル全体における優先度を示す成分優先度から構成されている。【０２１０】  図１８の例では、ベクトルの何番目の成分かを表す識別番号１８０２が示すように、絶対受信成分１８００は、１番目と２番目と３番目であり、成分優先度１８０１は、５番目、７番目、９番目の順に高いことを示している。【０２１１】  この場合、受信部１７００は、１、２、３番目の成分は必ず受信し、さらに受信する場合には、５、７、９の順に優先的に第１のベクトルの成分を受信するよう制御する。【０２１２】  受信するベクトルの次元数は、予めサーバの認証を行いサーバの信頼度を決め、信頼度によって、決める。なお、受信しない成分に対応するベクトルＴの成分の値は変えない。【０２１３】  サーバの信頼度は、例えば、信頼できる第三者がつけた各サーバの格付け情報の利用や、認証に利用する公開鍵の証明書のルートまでのチェーンの数を信頼の基準として利用する。【０２１４】  第１のベクトルを受信する処理以降の処理については、第１及び第２の実施形態と同様である。【０２１５】  なお、受信していないベクトルの成分の値については、そのまま送信する。【０２１６】  以上のように、受信ベクトル制御情報１６００を基に、受信部１６０１が、第１のベクトルである特徴抽出ベクトルＲを選択的に受信することにより、機密レベルの高い成分は必ず受信した後に、第３のベクトルを生成し、第２のベクトルのうち、機密レベルの高い成分を優先的に保護することが可能である。【０２１７】  また、次元数の大きいベクトルの場合に、機密レベルの高い成分を優先的に選択して受信し、第３のベクトルを生成することにより、第２のベクトルの機密レベルの高い成分を優先的に保護することが可能になる。【０２１８】  本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
本出願は、２００５年２月２５日出願の日本特許出願（特願２００５−０５０９３７）に基づくものであり、その内容はここに参照として取り込まれる。
【産業上の利用可能性】
【０２１９】  本発明は、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全であるという効果を有し、保護したい秘密情報を格納可能な携帯端末や、パーソナルコンピュータや、記憶デバイスに適用が可能である。
【図１】
2006090680.tif 000016
【図２】
2006090680.tif 000017
【図３】
2006090680.tif 000018
【図４】
2006090680.tif 000019
【図５】
2006090680.tif 000020
【図６】
2006090680.tif 000021
【図７】
2006090680.tif 000022
【図８】
2006090680.tif 000023
【図９】
2006090680.tif 000024
【図１０】
2006090680.tif 000025
【図１１】
2006090680.tif 000026
【図１２】
2006090680.tif 000027
【図１３】
2006090680.tif 000028
【図１４】
2006090680.tif 000029
【図１５】
2006090680.tif 000030
【図１６】
2006090680.tif 000031
【図１７】
2006090680.tif 000032
【図１８】
2006090680.tif 000033
【図１９】
2006090680.tif 000034
【図２０】
2006090680.tif 000035
【図２１】
2006090680.tif 000036
【手続補正書】
【提出日】平成18年10月20日(2006.10.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
一定の要件を満たすデータを生成する装置であって、
情報伝送可能に接続されたサーバよりＮ（Ｎは２以上の自然数）次元の第１のベクトルＲを受信する受信部と、
Ｎ次元の第２のベクトルＴを記憶する記憶部と、
前記第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出し、前記相関係数Ｅが一致する、前記第２のベクトルＴとは異なる第３のベクトルＵを生成するベクトル演算部と、
前記第３のベクトルＵを前記サーバへ送信する送信部と、
を備えることを特徴とするベクトル生成装置。
【請求項２】
請求項１記載のベクトル生成装置であって、
前記ベクトル演算部は、
前記第１のベクトルＲと前記第２のベクトルＴとの相関係数を算出する関数を用いて前記相関係数Ｅを算出する相関係数算出手段と、
前記第２のベクトルＴから、ベクトルＴｒと変数ベクトルＴｙとを生成するベクトル置換手段と、
前記変数ベクトルＴｙのうち、相関係数の値が、前記第1のベクトルTと前記第2のベクトルRとの相関係数の値となる変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
少なくとも、前記相関係数Ｅと、前記第１のベクトルＲと、前記ベクトルＴｒとを前記ベクトル関数Ｇの変数として、相関係数の値が、前記第1のベクトルTと前記第2のベクトルRとの相関係数の値となる変数ベクトルＴｙを算出するベクトル演算手段と、
前記ベクトル演算手段で算出された変数ベクトルＴｙを第３のベクトルＵとして生成するベクトル合成手段と、
を備えることを特徴とするベクトル生成装置。
【請求項３】
請求項１記載のベクトル生成装置であって、
前記ベクトル演算部は、
第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を用いて、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを前記第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出する相関係数算出手段と、
前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎを選択し、選択したｎ次元の部分ベクトルＴｎの該ベクトルＴｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの、（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することによりに、前記第３のベクトルＵを生成するベクトル置換手段と、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
前記相関係数Ｅ、前記第１のベクトルＲ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数とした、ベクトルＷ＝Ｇ（Ｅ，Ｒ，Ｔｒ）を算出するベクトル演算手段と、
変数ベクトルＴｙを前記ベクトルＷに置き換えて成る、前記第３のベクトルＵを生成するベクトル合成手段と、
を備えることを特徴とするベクトル生成装置。
【請求項４】
請求項１記載のベクトル生成装置であって、
前記ベクトル演算部は、
第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を用いて、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを前記第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出する相関係数算出手段と、
前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎを選択し、選択したｎ次元の部分ベクトルＴｎの該ベクトルＴｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することにより、前記第３のベクトルＵを生成するベクトル置換手段と、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
前記相関係数Ｅ、前記第１のベクトルＲ、前記第２のベクトルＴ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数とした、ベクトルＷ＝Ｇ（Ｅ，Ｔ，Ｒ，Ｔｒ）を算出するベクトル演算手段と、
変数ベクトルＴｙを前記ベクトルＷに置き換えて成る、前記第３のベクトルＵを生成するベクトル合成手段と、
を備えることを特徴とするベクトル生成装置。
【請求項５】
請求項１乃至４いずれか記載のベクトル生成装置であって、
前記受信部は、前記相関係数Ｅの許容範囲の情報を受け取り、
前記ベクトル演算部は、前記相関係数Ｅを、前記許容範囲に応じて変動させる相関係数変動手段を有することを特徴とするベクトル生成装置。
【請求項６】
請求項１乃至４いずれか記載のベクトル生成装置であって、
前記記憶部は、前記ベクトル演算部が生成した前記第３のベクトルＵの履歴情報を記憶し、
前記ベクトル演算部は、前記履歴情報に記録されていない前記第３のベクトルＵを生成するよう制御する生成ベクトル分散手段を有することを特徴とするベクトル生成装置。
【請求項７】
請求項１乃至４いずれか記載のベクトル生成装置であって、
前記記憶部は、前記第１のベクトルＲを検証するための基準となる情報であるベクトル検証情報を記憶し、
前記ベクトル演算部は、前記ベクトル検証情報を基準にして、前記第１のベクトルＲを検証し、検証結果に応じて、前記第３のベクトルＵの生成方法を変えるベクトル検証手段を有することを特徴とするベクトル生成装置。
【請求項８】
請求項１乃至４いずれか記載のベクトル生成装置であって、
前記記憶部は、前記第１のベクトルＲの各成分の機密レベルと前記機密レベルに応じた対応方法の情報である受信ベクトル制御情報を記憶し、
前記受信部は、前記受信ベクトル制御情報を基準にして、前記第１のベクトルＲの成分を選択することを特徴とする請求項１乃至３いずれか記載のベクトル生成装置。
【請求項９】
演算機能を有する装置におけるベクトル生成方法であって、
前記装置によって実行されるところの、
情報伝送可能に接続されたサーバより、第１のベクトルＲを受信する第１のステップと、
第２のベクトルを記憶する記憶部より、第２のベクトルＴを取得する第２のステップと、
前記第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出する第３のステップと、
前記相関係数Ｅが一致する、第２のベクトルＴとは異なる第３のベクトルＵを算出する第４のステップと、
前記第３のベクトルＵを前記サーバへ送信する第５のステップと、
からなるベクトル生成方法。
【請求項１０】
請求項９記載のベクトル生成方法であって、
前記第３ステップにおける前記相関係数Ｅの算出は、第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数をＶ＝Ｆ（Ｘ，Ｙ）として、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出し、
前記第４のステップは、前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎの、該Ｔｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの、（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することにより、前記第３のベクトルＵを生成するステップと、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを取得するステップと、
前記相関係数Ｅ、前記第１のベクトルＲ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数として、Ｗ＝Ｇ（Ｅ，Ｒ，Ｔｒ）によりベクトルＷを算出するステップと、
前記変数ベクトルＴｙを前記ベクトルＷに置き換えた、前記第３のベクトルＵを生成するステップと、
からなるベクトル生成方法。
【請求項１１】
一定の要件を満たすデータを生成するベクトル装置を搭載する集積回路であって、
前記ベクトル生成装置は、Ｎ（Ｎは２以上の自然数）次元の第２のベクトルＴを記憶する記憶部と、
情報伝送可能に接続されたサーバより受信したＮ次元の第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出し、前記相関係数Ｅが一致する、前記第２のベクトルＴとは異なる第３のベクトルＵを生成するベクトル演算部を備えることを特徴とする集積回路。
【請求項１２】
請求項１１記載の集積回路であって、
前記ベクトル演算部は、第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を用いて、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを前記第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出する相関係数算出手段と、
前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎを選択し、選択したｎ次元の部分ベクトルＴｎの該Ｔｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの、（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することにより、前記第３のベクトルＵを生成するベクトル置換手段と、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
前記相関係数Ｅ、前記第１のベクトルＲ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数とした、Ｗ＝Ｇ（Ｅ，Ｒ，Ｔｒ）を算出するベクトル演算手段と、
変数ベクトルＴｙを前記ベクトルＷに置き換えて成る、前記第３のベクトルＵを生成するベクトル合成手段と、
を備えることを特徴とする集積回路。
【請求項１３】
請求項１１記載の集積回路であって、
前記ベクトル演算部は、第１変数ベクトルＸと第２変数ベクトルＹとの相関係数Ｖを算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を用いて、前記第１変数ベクトルＸを前記第１のベクトルＲ、前記第２変数ベクトルＹを前記第２のベクトルＴとした場合の、前記関数Ｆの値Ｖを相関係数Ｅとして算出する相関係数算出手段と、
前記第２のベクトルＴの任意のｎ（Ｎより小さい自然数）個を要素とするｎ次元の部分ベクトルＴｎを選択し、選択したｎ次元の部分ベクトルＴｎの該Ｔｎと異なるｎ次元ベクトルＴｒへの置換、及び、前記第２のベクトルＴのその他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元の部分ベクトルの、（Ｎ−ｎ）次元の変数ベクトルＴｙへの置換を実行することにより、前記第３のベクトルＵを生成するベクトル置換手段と、
関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求めるベクトル関数Ｇを記憶するベクトル関数記憶手段と、
前記相関係数Ｅ、前記第１のベクトルＲ、前記第２のベクトルＴ、前記ベクトルＴｒを前記ベクトル関数Ｇの変数とした、Ｗ＝Ｇ（Ｅ，Ｔ，Ｒ，Ｔｒ）を算出するベクトル演算手段と、
変数ベクトルＴｙを前記ベクトルＷに置き換えて成る、前記第３のベクトルＵを生成するベクトル合成手段と、
を備えることを特徴とする集積回路。
【請求項１４】
生体認証に用いられる請求項２乃至４いずれか記載のベクトル生成装置であって、
前記第１のベクトルＲは、センサで取得したユーザの生体情報から、特徴量であるベクトルを抽出したものである特徴抽出ベクトルであり、
前記第２のベクトルＴは、事前に登録処理された、あるユーザが本人であるかどうかを判断する際に基準となるものである生体テンプレートであることを特徴とするベクトル生成装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの正当性を認証するためのベクトル生成装置、ベクトル生成方法及び集積回路に関するものである。
【背景技術】
【０００２】
生体認証技術の分野において、近年、ＩＣカード等のＣＰＵと耐タンパ性のある記憶領域を持つセキュリティデバイスをユーザが携帯し、セキュリティデバイスに記憶されたユーザの生体的特徴を示す生体テンプレートと、センサから取得したユーザの顔や、指紋画像、声紋を照合して、電子マネーや定期券、電子チケット等のサービスを利用する際に、ユーザに対して本人認証を行う生体認証技術が求められ始めている。
【０００３】
そのような背景の中で、近年、プライバシー保護の観点から、生体テンプレートを保護する技術が求められている（例えば特許文献１参照）。
【０００４】
このシステムは、図２１に示すように、例えば操作者２１０８を認証する認証装置２１００と、操作者２１０８が保持する可搬型記憶部２１０６とから構成されている。
【０００５】
認証装置２１００は、人から生体情報を読み取る生体情報入力部２１０１と、可搬型記憶部２１０６に対して、データの読み書きを行うリーダライタ２１０２と、データを格納するメモリ２１０３と、生体情報とテンプレートを比較して個人認証を行う認証部２１０４と、から構成されている。
【０００６】
生体テンプレートは、部分テンプレートＡ２１０５と、部分テンプレートＢ２１０７に分割され、メモリ２１０４と、可搬型記憶部２１０６に格納されている。
【０００７】
認証時には、操作者２１０８の生体情報を生体入力部２１０１が読み取り、認証部２１０４に渡し、認証部２１０４は、メモリ２１０３に格納された部分テンプレートＡ２１０５と、リーダライタ２１０２が可搬型記憶部２１０６から読み出した部分テンプレートＢ２１０７から元のテンプレートを合成し、操作者２１０８から読み取った生体情報と比較して、個人認証を行うという装置である。
【０００８】
【特許文献１】特開２００１−６７１３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記のような従来の、生体テンプレートと、生体情報入力部２１０１から取得した生体情報を照合する認証装置においては、認証時には生体テンプレートが完全な形で存在するため、生体テンプレートが漏洩した場合に、二次利用される危険性があるという問題があった。
【００１０】
これを解決するために、ユーザの携帯するセキュリティデバイス（従来例における可搬型記憶部２１０６に該当する）内で認証処理する方法が提案されている。しかし、処理能力を考慮した場合、サーバのリソースを利用して認証処理する場合の方が高速に処理可能であるため、より望ましい構成である。
【００１１】
本発明は、従来の問題を解決するためになされたもので、サーバのリソースを利用して高速に認証可能で、且つ、生体テンプレートに代表される秘匿情報として扱うべき情報を二次利用できないように保護しつつ、生体認証といった認証処理の基礎となるデータ（ベクトル）を生成するベクトル生成装置、ベクトル生成方法及び集積回路を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明のベクトル生成装置は、一定の要件を満たすデータを生成する装置であって、情報伝送可能に接続されたサーバよりＮ（Ｎは２以上の自然数）次元の第１のベクトルＲを受信する受信部と、Ｎ次元の第２のベクトルＴを記憶する記憶部と、前記第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出し、前記相関係数Ｅが一致する、前記第２のベクトルＴとは異なる第３のベクトルＵを生成するベクトル演算部と、前記第３のベクトルＵを前記サーバへ送信する送信部とを備える構成を有している。
【００１３】
この構成により、第２のベクトルを外部に出すことなく保護した状態で、外部が「端末が第２のベクトルを保持していること」を確認可能となり、高速に認証可能で、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全である。
【００１４】
また、本発明のベクトル生成装置は、前記受信部は、前記相関係数Ｅの許容範囲の情報を受け取り、前記ベクトル演算部は、前記相関係数Ｅを、前記許容範囲に応じて変動させる相関係数変動手段を備えた構成を有している。
【００１５】
この構成により、ベクトルＵからベクトルＴを推測しようとした場合の候補となる範囲がさらに広がり、ベクトルＴを推測することが更に困難になる。
【００１６】
また、本発明のベクトル生成装置は、前記記憶部は、前記ベクトル演算部が生成した前記第３のベクトルＵの履歴情報を記憶し、前記ベクトル演算部は、前記履歴情報に記録されていない前記第３のベクトルＵを生成するよう制御する生成ベクトル分散手段を備えた構成を有している。
【００１７】
この構成により、乱数の生成方法の分析を利用したベクトルＴの推測を困難にする。
【００１８】
また、本発明のベクトル生成装置は、前記記憶部は、前記第１のベクトルＲを検証するための基準となる情報であるベクトル検証情報を記憶し、前記ベクトル演算部は、前記ベクトル検証情報を基準にして、前記第１のベクトルＲを検証し、検証結果に応じて、前記第３のベクトルＵの生成方法を変えるベクトル検証手段を備えた構成を有している。
【００１９】
この構成により、ベクトルＲを操作して生成されたベクトルＵから、ベクトルＴを推測することを困難にする。
【００２０】
また、本発明のベクトル生成装置は、前記記憶部は、前記第１のベクトルＲの各成分の機密レベルと前記機密レベルに応じた対応方法の情報である受信ベクトル制御情報を記憶し、前記受信部は、前記受信ベクトル制御情報を基準にして、前記第１のベクトルＲの成分を選択する構成を有している。
【００２１】
この構成により、第２のベクトルのうち、機密レベルの高い成分を優先的に保護することが可能である。
【００２２】
本発明のベクトル生成方法は、演算機能を有する装置におけるベクトル生成方法であって、前記装置によって実行されるところの、情報伝送可能に接続されたサーバより、第１のベクトルＲを受信する第１のステップと、第２のベクトルを記憶する記憶部より、第２のベクトルＴを取得する第２のステップと、前記第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出する第３のステップと、前記相関係数Ｅが一致する、第２のベクトルＴとは異なる第３のベクトルＵを算出する第４のステップと、前記第３のベクトルＵを前記サーバへ送信する第５のステップとからなる構成を有している。
【００２３】
この構成により、高速に認証可能で、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全である。
【００２４】
本発明の集積回路は、一定の要件を満たすデータを生成するベクトル生成装置を搭載する集積回路であって、前記ベクトル生成装置は、Ｎ（Ｎは２以上の自然数）次元の第２のベクトルＴを記憶する記憶部と、情報伝送可能に接続されたサーバより受信したＮ次元の第１のベクトルＲと前記第２のベクトルＴとの間の相関係数Ｅを算出し、前記相関係数Ｅが一致する、前記第２のベクトルＴとは異なる第３のベクトルＵを生成するベクトル演算部を備える構成を有している。
【００２５】
この構成により、高速に認証可能で、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全である。
【発明の効果】
【００２６】
本発明は、高速に認証可能で、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全であるという効果がある。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態を、図面を参照しながら説明する。
（実施の形態１）
【００２８】
本発明の第１の実施形態における、ベクトル生成装置のシステム構成を図１に示す。
【００２９】
端末１００は、内容について外部機器に知られたくないベクトルを保持しているベクトル生成装置であり、サーバと情報伝送可能に接続されている。
【００３０】
そのベクトルを持っているかどうかを、外部機器が保持するベクトルとの相関係数を算出し調べることで、確認したいという要求を外部機器から受けると、端末１００は、外部機器（例えば認証機器）１０での相関係数の算出方法に合わせて、算出結果が同じになり、且つ、元のベクトルを特定できない新たなベクトルを生成し、外部機器１０へ送信する。
【００３１】
外部機器１０では、その新たなベクトルを受け取り、相関係数を算出し、「端末がそのベクトルを保持している」かどうかを判断する。
【００３２】
上記の端末１００は、外部から通信網を利用してベクトルを受け取る受信部１０１と、ベクトルを記憶する記憶部１０２と、二つのベクトルの間の相関係数を算出し、その相関係数と一致する新たなベクトルを生成するベクトル演算部１０３と、ベクトルを外部へ送信する送信部１０４とから構成されている。
【００３３】
図２は本実施形態の処理フローの概要を示す図である。
【００３４】
処理２００の第１ベクトル受信では、受信部１０１が、外部から通信網を利用して、第１のベクトルを受信し、ベクトル演算部１０３に渡す。
【００３５】
処理２０１の第２ベクトル取得では、ベクトル演算部１０３が、記憶部１０２から、第２のベクトルを取得する。
【００３６】
処理２０２の相関係数算出では、ベクトル演算部１０３が、相関係数を算出する関数を利用して、第１のベクトルと、第２のベクトルの相関係数を算出する。
【００３７】
処理２０３の第３ベクトル算出では、ベクトル演算部１０３が、第１のベクトルと第２のベクトルの相関係数と一致する第１のベクトルに類似する新たな第３のベクトルを生成する。
【００３８】
処理２０４の第３のベクトル送信では、生成した第３のベクトルを外部へ送信する。
【００３９】
端末１００は、例えば、携帯電話、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｔａｎｔ）といった携帯端末や、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カードといった携帯型の記憶デバイスや、パーソナルコンピュータなどである。
【００４０】
携帯端末の場合には、記憶部１０２は、フラッシュメモリなどの不揮発性メモリから構成されており、ベクトル演算部１０３は、ＣＰＵと、ＲＯＭと、ＲＡＭから構成されており、送信部１０１は、外部のネットワークと通信するためのアンテナ、ＲＦ部、無線通信制御回路から構成されている。
【００４１】
携帯型の記憶デバイスの場合には、記憶部１０２は、フラッシュメモリなどの不揮発性メモリから構成されており、ベクトル演算部１０３は、ＣＰＵと、ＲＯＭと、ＲＡＭから構成されており、送信部１０４は、外部の機器と通信するための、接触通信インターフェースや、非接触通信インターフェースで構成されている。
【００４２】
パーソナルコンピュータの場合には、記憶部１０２は、ＨＤＤから構成されており、ベクトル演算部１０３は、ＣＰＵとメモリによって構成されており、送信部１０４は、外部のネットワークと通信するためのモデムやネットワークカード、無線で通信するためのＲＦ部、無線通信制御回路を備えたカードやＵＳＢデバイスから構成されている。
【００４３】
ＲＯＭには、ＯＳなどの基本的なソフトウェアが格納され、それらがＲＡＭを用いてＣＰＵで実行されることによって、記憶部１０２、ＲＯＭに格納されている各種のソフトウェアを実行する携帯端末、携帯型の記憶デバイス、パーソナルコンピュータが実現される。
【００４４】
次に、ベクトルについて説明する。本実施形態において、ベクトルとは、生体認証に利用する顔、指紋、掌静脈などの生体的な特徴量を抽出した値の列のことを指す。
【００４５】
ここでは、生体認証のアルゴリズムの一つである固有顔を利用した方法を例にとり、ベクトルについて説明する。
【００４６】
複数の顔画像サンプルの平均をとった顔画像である平均顔をμとする。μは、例えば、モノクロ濃淡画像で、１２８＊１２８ピクセルの画像とすると、各ピクセルを要素とする１２８行１２８列の行列である。
【００４７】
ｉ番目の正規直行基底をΦｉと表現する。このΦｉは、学習用の顔画像の集合について、主成分分析を行い求められるものである。Φｉについてもμと同じ次元の行列である。
【００４８】
あるユーザから取得した顔画像を行列Ａとする。行列ＡをμとＮ個のΦｉで表現した場合の各Φｉにかかる係数をｂｉとした場合に、ある画像Ａは、下記の式で表せる。
【００４９】
【数１】
2006090680.tif 000037
【００５０】
このベクトルは、２種類ある。一つのベクトルは、キオスク端末、サービスを提供するサーバなどの外部の者が、あるユーザが本人であるかどうかを判断する際にセンサからそのユーザの生体情報である顔画像を取得し、特徴量であるベクトルを抽出したものである。
【００５１】
もう一つのベクトルは、事前に登録処理を行い、記憶部１０２に保存されており、あるユーザが本人であるかどうかを判断する際に基準となるものであり、生体テンプレートと呼ばれるものである。そして、この２種類のベクトル情報を比較することで、あるユーザが本人かどうかを判断することが可能になる。
【００５２】
本実施の形態では、前者のベクトルを特徴抽出ベクトル、後者のベクトルをテンプレートベクトルと呼ぶことにする。
【００５３】
前述の受信部１０１が受信する第１のベクトルは、特徴抽出ベクトルに相当し、記憶部１０２に格納されている第２のベクトルは、テンプレートベクトルに相当する。
【００５４】
次に、ベクトル演算部１０３の動作について、詳細を説明する。図３に詳細構成を示す。
【００５５】
ベクトル演算部１０３は、外部から受信した特徴抽出ベクトルＲと、記憶部１０２に記憶されているテンプレートベクトルＴから、二つのベクトルＸ、Ｙを入力して相関係数を算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を利用して、相関係数Ｅ＝Ｆ（Ｒ，Ｔ）を算出する相関係数算出手段３００と、テンプレートベクトルの任意のｎ個を要素とするｎ次元のベクトルＴｎを選択し、元のテンプレートベクトルＴｎとは異なるｎ次元のベクトルＴｒに置き換え、その他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元のベクトルＴＮ−ｎを、（Ｎ−ｎ）次元の変数ベクトルＴｙに置き換えてなるＮ次元のベクトルＵを生成するベクトル置換手段３０１と、関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求める関数Ｇを記憶するベクトル関数記憶手段３０２と、相関係数Ｅ、特徴抽出ベクトルＲ、ｎ次元部分ベクトルＴｒをベクトル関数Ｇの変数とした、ベクトルＷ＝Ｇ（Ｅ，Ｒ，Ｔｒ）を算出するベクトル演算手段３０３と、変数ベクトルＴｙをベクトルＷに置き換え、ベクトルＵを生成するベクトル合成手段３０４とから構成されている。ベクトルＵが、前述した第３のベクトルに相当する。
【００５６】
次に、相関係数について説明する。
【００５７】
本実施形態における相関係数とは、二つのベクトルの類似度を表すものである。例えば、距離、内積などである。
【００５８】
距離の場合には、基本的には、ベクトルの各成分の差の二乗の和を利用し、０に近いかどうかなどを判断基準に利用する。本実施形態の場合は、式で表すと
Ｅ＝‖Ｔ−Ｒ‖２または、Ｅ＝‖Ｕ−Ｒ‖２
となる。Ｔ、Ｒ、Ｕのｉ番目の成分をｔｉ、ｒｉ、ｕｉとすると、次のようになる。
【００５９】
【数２】
2006090680.tif 000038
【００６０】
上式を利用して相関係数Ｅを算出するのが、相関係数算出手段３００の処理である。
【００６１】
次に部分ベクトルＴｒについて説明する。Ｔｒのｉ番目の成分をｔｒｉとする。
【００６２】
【数３】
2006090680.tif 000039
【００６３】
そして、ベクトルＴｒと特徴抽出ベクトルＲの各成分の差の二乗の和の値が相関係数の値を越えないように、順に値を確定させる。
【００６４】
Ｔｒの各成分の求め方を示す処理フローを図４に示す。
【００６５】
処理４００では、まずどの成分の値を確定させるかを決定する。本実施の形態では、一例として１番目の成分から順に確定させることとし、ｉ＝１とする。
【００６６】
処理４０１では、乱数を発生させて、仮のｔｒｉとする。ｔｒｉは基本的には、実数である。
【００６７】
処理４０２では、仮にＴｒの成分の値として決めた値が、本来のＴの成分の値と一致しないように、調べる処理を行う。
【００６８】
一致しない場合は、処理４０３へ進み、一致する場合には、処理４０１へ戻る。
【００６９】
処理４０３では、ＴｒとＲの差の二乗の和が、相関係数を越えていないかどうかを調べる処理である。
【００７０】
【数４】
2006090680.tif 000040
【００７１】
越えていない場合には、処理４０４に進み、越えている場合には、処理４０１に戻る。
【００７２】
処理４０４では、仮に決めていたｔｒｉの値を、確定した値とする。
【００７３】
処理４０５では、次の成分を決めるために、ｉに１を足している。尚、決める順番については、１ずつ足していく方法以外でも良い。
【００７４】
処理４０６では、全てのＴｒの成分の値が確定したかどうかを調べる。
【００７５】
Ｔｒはｎ次元であるので、ｉがｎ＋１になっていれば、全ての成分の値が確定したことが分かる。
【００７６】
確定していれば、処理は終了し、確定していない場合には、処理４０１に戻る。
以上が、Ｔｒの各成分を求めるフローである。
【００７７】
上記のＴｒを確定し、残りの部分を変数ベクトルＴｙに置換する処理が、ベクトル置換手段３０１の処理である。そしてＴｙの成分について、後述するベクトル関数Ｇで求める。
【００７８】
ベクトル関数Ｇについて説明する。
ベクトル関数Ｇは、相関係数Ｅ、特徴抽出ベクトルＲ、ｎ次元部分ベクトルＴｒからベクトルＷを算出する関数である。
【００７９】
【数５】
2006090680.tif 000041
【００８０】
上記式を利用して、ベクトルＷを求めるのが、ベクトル演算手段３０３の処理である。
【００８１】
以上の結果と、Ｔｙ＝Ｗから、Ｕの各成分が求められ、下記のようになる。
【００８２】
【数６】
2006090680.tif 000042
上記Ｕを求めるのが、ベクトル合成手段３０４の処理である。
【００８３】
なお、本実施の形態では、距離により相関係数を求める場合に、ｕ１からｕＮ−１をｔｒ１からｔｒＮ−１としたが、ベクトルＵの任意のＮ−１個の要素をＴｒの成分とし、残りの要素をＴｙとしても良い。
【００８４】
また、本実施形態では、ｔｒ１から順に値を確定させたが、確定させる順番については、任意の順で良く、差の二乗の和の値が相関係数の値を越えないように、値を確定させれば良い。最終的に、ＵとＲの相関係数と、ＴとＲの相関係数が一致すれば良い。
【００８５】
以上が距離で判断する場合についての説明である。
【００８６】
次に、具体的な値を例にとって、距離で判定する場合について説明する。
【００８７】
【数７】
2006090680.tif 000043
【００８８】
尚、本実施形態では、特徴抽出ベクトルＲをＮ次元受信したパターンで説明しているが、Ｎ次元よりも少ない次元の分だけ受信する場合もあり得る。そのような場合には、受け取った部分について、本実施の形態で説明した方法でベクトルを生成することになる。
【００８９】
また、本実施形態では、ベクトルＵの成分を決定する方法として、乱数を利用して、順に決めていく方法をとったが、ベクトルＵを求める方法はそれに限らない。例えば、端末１００の処理能力が低い場合には、（数８）に示す各項が等しいと仮定して、（数９）に示す式から各ｕｉを求める方法をとることで、低速、小メモリの端末においても実行可能であるため有効である。
【００９０】
【数８】
2006090680.tif 000044
【数９】
2006090680.tif 000045
【００９１】
以上の処理により、相関係数が同じになるベクトルＵを生成し、ベクトルＵを外部機器に送信することによって、秘匿情報であるベクトルＴを外部に出すことなく保護した状態で、外部機器が「端末がベクトルＴを保持していること」を確認可能となる。
【００９２】
特に、生体認証に適応する場合には、漏洩した場合に無効化することが困難な生体テンプレートを外部に出すことなく保護した状態で、生体認証を行うことが可能となる。
【００９３】
尚、図１９に示すように、記憶部１０２、ベクトル演算部１０３は、典型的には、集積回路であるＬＳＩ１９００として実現される。これらは個別に１チップ化されても良いし、一部または、全てを含むように１チップ化されても良い。
【００９４】
ここではＬＳＩとしたが、集積度の違いにより、ＩＣ，システムＬＳＩ，スーパーＬＳＩ，ウルトラＬＳＩと呼称されることもある。
【００９５】
また、集積回路化の手法は、ＬＳＩに限るものではなく、専用回路または汎用プロセサで実現しても良い。ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を動的に再構成可能なダイナミック・リコンフィギュラブル・プロセッサーを利用しても良い。
【００９６】
さらには、半導体技術の進歩または派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応などが可能性としてありえる。
【００９７】
（実施の形態２）
本発明の第２の実施形態におけるベクトル生成装置のシステム構成を図５に示す。
【００９８】
本実施形態は、第１の実施形態とほぼ同じ内容であるが、ベクトルの類似性を判断する基準に、内積を利用する点が異なる。
【００９９】
端末１００は、二つのベクトルの間の内積を利用した相関係数を算出し、その相関係数と一致する新たなベクトルを生成するベクトル演算部５００が異なる。
【０１００】
手段として異なるのは、ベクトル演算部５００を構成する手段である。すなわち、内積を利用した相関係数を算出する関数Ｖ＝Ｆ（Ｘ，Ｙ）を利用して、相関係数Ｅ＝Ｆ（Ｒ，Ｔ）を算出する相関係数算出手段５０１と、テンプレートベクトルの任意のｎ個を要素とするｎ次元のベクトルＴｎを選択し、元のテンプレートベクトルＴｎとは異なるｎ次元のベクトルＴｒに、内積を判断基準にして置き換え、その他の（Ｎ−ｎ）個を要素とする（Ｎ−ｎ）次元のベクトルＴＮ−ｎを、（Ｎ−ｎ）次元の変数ベクトルＴｙに置き換えてなるＮ次元のベクトルＵを生成するベクトル置換手段５０２と、内積を利用した関係式Ｅ＝Ｆ（Ｒ，Ｕ）を満たす変数ベクトルＴｙを求める関数Ｇを記憶するベクトル関数記憶手段５０３と、相関係数Ｅ、ベクトルＴ、特徴抽出ベクトルＲ、ｎ次元部分ベクトルＴｒを、ベクトル関数Ｇの変数とした、ベクトルＷ＝Ｇ（Ｅ，Ｔ，Ｒ，Ｔｒ）を算出するベクトル演算手段５０４と、変数ベクトルＴｙをベクトルＷに置き換え、ベクトルＵを生成するベクトル合成手段５０５が第１の実施形態と異なる。
【０１０１】
次に具体的に、相関係数として、内積を利用する場合について説明する。
以下、その一例を示す。内積を判断基準にする場合には、ベクトルの成す角が、０に近いかどうかなどを判断基準に利用する。
【０１０２】
本実施形態の場合は、式で表すと、cosθ＝Ｔ・Ｒ／‖Ｔ‖‖Ｒ‖を判断基準に利用する場合がある。ＴをあらたなベクトルＵに変換するので、分母の‖Ｒ‖は、ここでは、値が変わらないため、省略することにし、条件‖Ｕ‖＝‖Ｔ‖の下で、Ｅ＝Ｆ（Ｒ，Ｔ）＝Ｒ・Ｔ＝Ｆ（Ｒ，Ｕ）＝Ｒ・Ｕ、とする。Ｔ、Ｒ、Ｕのｉ番目の成分をｔｉ、ｒｉ、ｕｉとすると、相関係数は、下記式で表せる。
【０１０３】
【数１０】
2006090680.tif 000046
【０１０４】
上記式を利用して、相関係数Ｅを算出するのが、相関係数算出手段５０１の処理である。
【０１０５】
次に部分ベクトルＴｒについて説明する。Ｔｒのｉ番目の成分をｔｒｉとする。
【０１０６】
【数１１】
2006090680.tif 000047
【０１０７】
そして、ベクトルＴｒと特徴抽出ベクトルＲの各成分との積の和が相関係数の値を越えない、且つ、大きさが、ベクトルＴの大きさを越えないように、順に値を確定させる。
【０１０８】
Ｔｒの各成分の求め方を示す処理フローを図６に示す。
基本的な流れは、図４の処理４００から４０６と同じである。但し、４０３と６０３の処理が異なる。
【０１０９】
処理４０３では、ＴｒとＲの内積の和が、相関係数を越えていないかどうかを調べる処理である。
【０１１０】
【数１２】
2006090680.tif 000048
【０１１１】
上記両方を満たしている場合には、処理６０４に進み、満たしていない場合には、処理６０１に戻る。
【０１１２】
上記のＴｒを確定し、残りの部分を変数ベクトルＴｙに置換する処理が、ベクトル置換手段５０２の処理である。そしてＴｙの成分について、後述するベクトル関数Ｇで求める。
【０１１３】
ベクトル関数Ｇについて説明する。
ベクトル関数Ｇは、相関係数Ｅ、特徴抽出ベクトルＲ、ｎ次元部分ベクトルＴｒからベクトルＷを算出する関数である。
【０１１４】
【数１３】
2006090680.tif 000049
【０１１５】
上記式を利用してベクトルＷを求めるのが、ベクトル演算手段５０４の処理である。
【０１１６】
実数として求める場合には、平方根の中の値が０以上になるように各成分を決める必要がある。虚数を認める場合には特に問題ない。
【０１１７】
以上の結果と、Ｔｙ＝Ｗから、Ｕの各成分が求められ、下記のようになる。
【０１１８】
【数１４】
2006090680.tif 000050
（複合任意である。）
【０１１９】
上記Ｕを求めるのが、ベクトル合成手段５０５の処理である。
【０１２０】
なお、本実施形態では、内積を相関係数算出に利用する場合に、ｕ１からｕＮ−２をｔｒ１からｔｒＮ−２としたが、ベクトルＵの任意の要素をＴｒの成分とし、残りの要素をＴｙとして良い。
【０１２１】
また、本実施形態では、ｔｒ１から順に値を確定させたが、確定させる順番については任意の順で良く、内積の和の値が相関係数の値を越えない、且つ、ベクトルの大きさがベクトルＴの大きさを越えないように値を確定させれば良い。最終的に、ＵとＲの相関係数と、ＴとＲの相関係数、及び、ＵとＴの大きさが一致すれば良い。
【０１２２】
また、基本的には、ｔｒ１を実数として求めたが、虚数を認める場合には虚数でも良い。
【０１２３】
その場合には、処理６０３の条件の内積に関しても、大きさに関しても判定する必要がなくなる。
【０１２４】
また、その他の例として、単純に内積の値のみを利用して判定を行う場合には、内積の値を維持するようにＵを計算すれば良い。
【０１２５】
以上が内積で判断する場合についての説明である。
【０１２６】
尚、本実施形態では、特徴抽出ベクトルＲをＮ次元受信したパターンで説明しているが、Ｎ次元よりも少ない次元の分だけ受信する場合もあり得る。
【０１２７】
そのような場合には、受け取った部分について、本実施形態で説明した方法で、ベクトルを生成することになる。
【０１２８】
以上の処理により、相関係数が同じになるベクトルＵを生成し、ベクトルＵを外部に送信することによって、ベクトルＴを外部に出すことなく保護した状態で、外部が「端末がベクトルＴを保持していること」を確認可能となる。
【０１２９】
特に、生体認証に適応する場合には、漏洩した場合に無効化することが困難な生体テンプレートを外部に出すことなく保護した状態で、生体認証を行うことが可能になる。また、漏洩した場合に無効化することが困難な生体テンプレートを外部に出すことなく保護した状態で、生体認証を行うことが可能となる。
【０１３０】
尚、図２０に示すように、記憶部１０２、ベクトル演算部５００は、典型的には、集積回路であるＬＳＩ２０００として実現される。これらは個別に１チップ化されても良いし、一部または、全てを含むように１チップ化されても良い。
【０１３１】
ここではＬＳＩとしたが、集積度の違いにより、ＩＣ，システムＬＳＩ，スーパーＬＳＩ，ウルトラＬＳＩと呼称されることもある。
【０１３２】
また、集積回路化の手法は、ＬＳＩに限るものではなく、専用回路または、汎用プロセサで実現しても良い。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
【０１３３】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応などが可能性としてありえる。
【０１３４】
（実施の形態３）
本発明の第３の実施形態におけるベクトル生成装置のシステム構成を図７に示す。
第１及び第２の実施形態では、算出した相関係数Ｅと同じになるベクトルＵを生成するという内容であったが、本実施形態では、算出したＥを判断基準の許容範囲内で更に変動させた後に、ベクトルＵを生成する。
【０１３５】
端末１００は、外部から通信網を利用してベクトルと相関係数の許容範囲を受け取る受信部７００と、二つのベクトルの間の相関係数を算出し、許容範囲内で相関係数の値を変動させ、その相関係数と一致する新たなベクトルを生成するベクトル演算部７０１が異なる。
【０１３６】
処理フローの概要を図８に示す。基本的には、図２の処理フローの内容であるが、更に、相関係数を変動させるための処理が増えている。
【０１３７】
処理８００の相関係数許容範囲受信では、受信部７００が、外部から通信網を利用して相関係数の許容範囲に関する情報を受信し、ベクトル演算部７０１に渡す。
【０１３８】
処理８０１の相関係数変動では、処理２０２で算出した相関係数を、相関係数の許容範囲内で変動させる。
【０１３９】
以上が処理フローの概要についての異なる点である。
【０１４０】
ベクトル演算部７０１については、相関係数Ｅと、相関係数の許容範囲に関する情報から、相関係数Ｅを変動させる相関係数変動手段７０２を備えている点が、第１及び第２の実施形態とは異なる。
【０１４１】
ベクトル演算部７０１の詳細なフローに関しては、相関係数算出手段３００が相関係数を算出した後に、その相関係数を相関係数変動手段７０２が変動させる点が異なる。
【０１４２】
図９に相関係数を変動させる処理フローを示す。
【０１４３】
処理９００では、算出した相関係数Ｅが、相関係数の許容範囲を満たすかどうかを判断する。許容範囲を満たす場合には、処理９０１に進み、許容範囲を満たさない場合には、処理９０４に進む。
【０１４４】
処理９０１では、相関係数を変動させるための値を乱数を利用して生成する。
【０１４５】
処理９０２では、相関係数と、相関係数を変動させるための値の和が、相関係数の許容範囲内かどうかを判断する。
【０１４６】
範囲内である場合には、処理９０３に進み、範囲外である場合には、処理９０１へ戻る。
【０１４７】
処理９０３では、生成した相関係数を変動させる値が条件を満たしたので、相関係数と、生成した相関係数を変動させる値の和を、新たに相関係数として確定し、処理が終わる。
【０１４８】
また、処理９０４へ進んだ場合には、相関係数を変動させるための値を乱数などを利用し生成する。
【０１４９】
処理９０５では、相関係数と、相関係数を変動させるための値の和が、相関係数の許容範囲外かどうかを判断する。
【０１５０】
範囲外である場合には、処理９０３に進み、範囲内である場合には、処理９０４へ戻る。
【０１５１】
例えば、相関係数Ｅで、許容範囲が、相関係数Ｅ０以上、Ｅ１以下（Ｅ０＜Ｅ１）であった場合について説明する。
【０１５２】
Ｅ０≦Ｅ≦Ｅ１となる場合には、変動させるための値をαとして、αを処理９０１で生成し、Ｅ０≦Ｅ＋α≦Ｅ１を満たすかどうかを処理９０２で判断する。
【０１５３】
尚、０からＥ１−Ｅ０の値を処理９０１で生成し、その値にＥ０を足した値がＥ１以下かどうかを、処理９０２で判断する方法もある。
【０１５４】
以上が、相関係数を変動させる処理のフローである。
【０１５５】
例えば、相関係数の許容範囲が「相関係数の値が０から５の範囲の値を許す」という場合には、算出した相関係数の値に応じて、元の相関係数が範囲内ならば、０から５の範囲を満たすように変動し、元の相関係数が範囲外ならば、０から５を満たさない範囲で変動させる。
【０１５６】
また、本実施形態で算出している相関係数が、外部で判断する際のベクトルの一部分である場合には、ベクトル全体に対する割合を考慮した上で、相関係数を変動させても良い。
【０１５７】
例えば、相関係数の許容範囲が、０以上５以下で、ベクトルが全体で１００次元で、その内５０次元を受信した場合には、全体の半分の次元数なので、相関係数の変動範囲も全体の半分である０以上２．５以下で変動させる。ただし、外部から、受信する次元数に合わせた許容範囲を受信する場合には、考慮する必要はない。
【０１５８】
これにより、ベクトルを部分的に受信する場合に、相関係数Ｅを変動させたことによって、本体受け入れられるはずのユーザが、受け入れられない場合や、その逆の場合が起こらないように相関係数を変動させることが可能である。
【０１５９】
以上のように、ベクトルＵを生成する際の基準となるＥを、判断基準の許容範囲内で変動させた後に、ベクトルＵを生成することで、ベクトルＵからベクトルＴを推測しようとした場合の候補となる範囲がさらに広がり、ベクトルＴを推測することが更に困難になる。
【０１６０】
特に、生体認証に適応する場合には、許容範囲を考慮した上で、相関係数を変動させた後に、漏洩した場合に無効化することが困難な生体テンプレートとは異なるベクトルを生成して、外部へ送信し、生体認証を行うため、外部へ送信されたベクトルを利用した生体テンプレートの推測が困難となる。
【０１６１】
（実施の形態４）
本発明の第４の実施形態におけるベクトル生成装置のシステム構成を図１０に示す。
【０１６２】
基本的には、第１及び第２の実施形態と同じであるが、本実施形態では、生成したベクトルＵの履歴を基に、外部に送信するＵの値を分散させる点が異なる。そうすることにより、ベクトルＵを利用したベクトルＴの推測を困難にする。
【０１６３】
端末１００は、記憶部１０２に、新たに、過去に生成したベクトルＵを記録した履歴情報１００２が格納される点と、二つのベクトルの間の相関係数を算出し、相関係数の値を変動させ、その相関係数と一致する新たなベクトルを、履歴情報１００２を参照して分散させ、生成するベクトル演算部１０００が異なる。
【０１６４】
処理フローの概要を図１１に示す。基本的には、図２の処理フローの内容であるが、更に、ベクトルＵを分散させるための処理が増えている。
【０１６５】
処理１１００の「履歴情報と一致していないか？」では、処理２０３で算出した第三のベクトルを、履歴情報１００２を参照して、一致しているものが無いか調べ、一致している場合には、処理２０３の第３のベクトル算出からもう一度行い、一致していない場合には、今回生成したベクトルＵを履歴情報に記録し、処理２０４に進む。
【０１６６】
以上が処理フローの概要についての異なる点である。
【０１６７】
ベクトル演算部１０００については、履歴情報１００２を参照して、ベクトルＵを分散させる生成ベクトル分散手段１００１を備えている点が異なる。
【０１６８】
図１２に履歴情報１００２の具体例を示す。
【０１６９】
例えば、ベクトルの何番の値であるかを示す識別番号１２００と、その値１２０１の組を横一列に並べたもので、１回で生成したベクトルＵを表現し、それを生成した回数分だけ縦にならべたもので、過去に生成したベクトルＵの履歴情報１００２を表現できる。
【０１７０】
一行目１２０２は、ベクトルの１番目の値を３にし、２番目の値を４にし、３番目の値を５にしたことを表している。
【０１７１】
新たにベクトルＵを生成した際に、例えば、そのベクトルの成分が、１番目が３で、２番目が４で、３番目が５だった場合には、履歴情報を参照すると一行目１２０２と一致するため、ベクトルＵをもう一度生成しなおす。
【０１７２】
一致したかどうかの判断基準は、完全一致のみ生成し直しにしても良いし、部分一致も生成し直しにしても良く、どの程度分散させたいかによって決めることになる。
【０１７３】
以上、生成ベクトル分散手段１００１で、履歴情報に記憶されたベクトルを利用することにより、外部へ送信するベクトルＵを分散させることによって、乱数の生成方法の分析を利用したベクトルＴの推測を困難にするという効果を有する。
【０１７４】
なお、本実施形態では、生成したベクトルを、履歴情報を基に、一致していないかどういかを調べ、送信するベクトルＵを分散させたが、予め分散させたベクトルＵの集合を用意し、それを順に外部へ送信する方法もある。
【０１７５】
その場合の効果としては、分散させたベクトルＵをその場で生成する必要がなくなるため、認証時に処理時間が、その場でベクトルＵを生成する場合より、早くなるという効果を有する。
【０１７６】
また、生成した日付を記憶し、ある程度の期間内は一致しないようにする方法もある。また、生成回数を利用して、ある程度の回数は一致しないようにする方法もある。
【０１７７】
その場合の効果としては、端末の記憶容量に制限がある場合でも、ベクトルＵの履歴を分散させることが可能である。
【０１７８】
以上のようにして、本実施形態では、生成したベクトルＵの履歴を元に、外部に送信するＵの値を分散させ、ベクトルＵを利用したベクトルＴの推測を困難にする。
【０１７９】
（実施の形態５）
本発明の第５の実施形態におけるベクトル生成装置のシステム構成を図１３に示す。
【０１８０】
基本的には、第１及び第２の実施形態と同じであるが、本実施形態では、受信した第１のベクトルである特徴抽出ベクトルＲを、受信する第１のベクトルＲが、信頼できるかどうかを検証するための基準となるベクトル検証情報１３０１を基に検証する点が異なる。
【０１８１】
端末１００は、記憶部１０２に、新たにベクトル検証情報１３０１が格納される点と、受信した第１のベクトルを検証情報１３０１を参照して検証するベクトル演算部１３０３が異なる。
【０１８２】
処理フローの概要を図１４に示す。
【０１８３】
基本的には、図２の処理フローの内容であるが、更に、第１のベクトルを検証し、検証結果によって信用できるという結果の場合には、ベクトルの生成処理を継続し、信用できないという結果の場合には、ベクトルの生成処理を中断する点が異なる。
【０１８４】
処理２００で第１のベクトルを受信した後、処理１４００のベクトル検証情報取得では、ベクトル演算部１３０３が、記憶部１０２からベクトル検証情報１３０１を取得する。
【０１８５】
処理１４０１の「ベクトル検証情報の条件と一致していないか？」では、受信した第１のベクトルがベクトル検証情報１３０１に記述された条件と一致していないかどうかを、ベクトル演算部１３０３が調べる。
【０１８６】
条件と一致していない場合には、処理２０１の第２のベクトル取得へ進み、
条件と一致した場合には、処理１４０２へ進む。
【０１８７】
処理１４０２では、受信した第１のベクトルがベクトル検証情報１３０１に記述された条件と一致したため、第３のベクトルを生成する処理を中断し、外部へ警告を送信するなどして、処理を終了する。
【０１８８】
ベクトル検証情報１３０１に記述されている第１のベクトルを検証する際の基準としては、所定のしきい値以下の値の個数を調べる方法がある。
【０１８９】
図１５に示すように、ベクトル検証情報１３０１には、どのような値を調べる基準にするかを示すしきい値１５００と、ベクトルにどの程度含まれているかを示す個数１５０１が記述されている。
【０１９０】
ベクトルＲとして、例えば、（ｒ１，０，０，０，０，０）を受信し、ベクトルＴとの相関係数Ｅを内積で求める場合で、受信したベクトルの要素の値を検証しない場合には、ベクトルＲの第１成分の値以外は全てゼロなので、ベクトルＴの第１成分ｔ１は、ｔ１＝Ｅ／ｒ１という演算によって求められてしまう。
【０１９１】
ベクトル演算部１３０３については、ベクトル検証情報１３０１を参照して第１のベクトルを検証するベクトル検証手段１３０２を備えている点が異なる。
【０１９２】
ベクトル検証手段１３０２は、受信部１０１が受信した第１のベクトルであるベクトルＲを、ベクトル検証情報１３０１を参照して検証する。
【０１９３】
ベクトルＲとして、例えば、（ｒ１，０，０，０，０，０）を受信した場合には、しきい値１５００が０で、個数１５０１が５個であるため、ベクトル検証情報１３０１が図１５の場合には、ベクトル検証情報の判断基準と一致するため、第３のベクトルの生成処理は中断される。
【０１９４】
以上のように、ベクトル検証手段１３０２は、ある範囲に含まれる値をどの程度含んでいるかを検証する。
【０１９５】
中断処理１４０２については、ベクトル検証手段１３０２は、ベクトル生成を中止し、送信部１０４を通じて、警告を外部に送信する。
【０１９６】
また、外部へ送信後の認証処理を通過しないベクトルを生成して送信するなどしても良い。
【０１９７】
受信したベクトルの０の数が５個である場合には、警告を出す、ベクトルを送信しないなどとすることにより、ベクトルの成分に０の多いベクトルからベクトルＵを生成させることでベクトルＴを推測することを防ぐ効果がある。
【０１９８】
以上のように、受信した第１のベクトルである特徴抽出ベクトルを、ベクトル検証情報１３０１を基に検証することにより、ベクトルＲを操作して生成されたベクトルＵから、ベクトルＴを推測することを困難にする。
【０１９９】
また、ベクトル検証情報１３０１に過去Ｋ回（Ｋは自然数）受信した第１のベクトルの内容を記録しておき、記録されたベクトルと一致していないかを調べる方法もある。
【０２００】
この方法により、同じ第一ベクトルから生成されるベクトルＵの分布からベクトルＴを推測することを防ぐ効果がある。この場合には、ベクトル検証手段１３０２は、受信した第１のベクトルの値を、ベクトル検証情報１３０１に記録する。
【０２０１】
（実施の形態６）
本実施形態のベクトル生成装置のシステム構成を図１６に示す。
【０２０２】
基本的には、第１及び第２の実施形態と同じであるが、本実施形態では、受け取るべき第１のベクトルの要素に関する情報が記述された受信ベクトル制御情報１８００を基に、受信部１６０１が、第１のベクトルである特徴抽出ベクトルＲを選択的に受信する点が異なる。
【０２０３】
端末１００は、記憶部１０２に、新たに、受信ベクトル制御情報１６００が格納される点と、受信ベクトル制御情報１６００を基に受信部１６０１が、第１のベクトルを受信する点が異なる。
【０２０４】
処理フローの概要を図１７に示す。基本的には、図２の処理フローの内容であるが、更に、第１のベクトルの受信を制御する処理が増えている点が異なる。
【０２０５】
処理１７００では、受信部１６００１が、受信ベクトル制御情報１６００を基にして、受信する第１のベクトルを制御する。
【０２０６】
図１８に受信ベクトル制御情報１６００の具体例を示す。
【０２０７】
受信ベクトル制御情報１６００には、第１のベクトルの内、必ず受け取る必要がある成分を示す絶対受信成分１８００と、各成分の第１のベクトル全体における優先度を示す成分優先度から構成されている。
【０２０８】
図１８の例では、ベクトルの何番目の成分かを表す識別番号１８０２が示すように、絶対受信成分１８００は、１番目と２番目と３番目であり、成分優先度１８０１は、５番目、７番目、９番目の順に高いことを示している。
【０２０９】
この場合、受信部１７００は、１、２、３番目の成分は必ず受信し、さらに受信する場合には、５、７、９の順に優先的に第１のベクトルの成分を受信するよう制御する。
【０２１０】
受信するベクトルの次元数は、予めサーバの認証を行いサーバの信頼度を決め、信頼度によって、決める。なお、受信しない成分に対応するベクトルＴの成分の値は変えない。
【０２１１】
サーバの信頼度は、例えば、信頼できる第三者がつけた各サーバの格付け情報の利用や、認証に利用する公開鍵の証明書のルートまでのチェーンの数を信頼の基準として利用する。
【０２１２】
第１のベクトルを受信する処理以降の処理については、第１及び第２の実施形態と同様である。
【０２１３】
なお、受信していないベクトルの成分の値については、そのまま送信する。
【０２１４】
以上のように、受信ベクトル制御情報１６００を基に、受信部１６０１が、第１のベクトルである特徴抽出ベクトルＲを選択的に受信することにより、機密レベルの高い成分は必ず受信した後に、第３のベクトルを生成し、第２のベクトルのうち、機密レベルの高い成分を優先的に保護することが可能である。
【０２１５】
また、次元数の大きいベクトルの場合に、機密レベルの高い成分を優先的に選択して受信し、第３のベクトルを生成することにより、第２のベクトルの機密レベルの高い成分を優先的に保護することが可能になる。
【０２１６】
本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
本出願は、2005年2月25日出願の日本特許出願（特願2005−050937）に基づくものであり、その内容はここに参照として取り込まれる。
【図面の簡単な説明】
【０２１７】
【図１】本発明の第１の実施の形態におけるベクトル生成装置のシステム構成図
【図２】本発明の第１の実施の形態における処理フロー図
【図３】本発明の第１の実施の形態における端末の詳細構成図
【図４】本発明の第１の実施の形態におけるベクトルＴｒを求める処理フロー図
【図５】本発明の第２の実施の形態におけるベクトル生成装置のシステム構成図
【図６】本発明の第２の実施の形態におけるベクトルＴｒを求める処理フロー図
【図７】本発明の第３の実施の形態におけるベクトル生成装置のシステム構成図
【図８】本発明の第３の実施の形態における処理フロー図
【図９】本発明の第３の実施の形態における相関係数を変動させる処理フロー図
【図１０】本発明の第４の実施の形態におけるベクトル生成装置のシステム構成図
【図１１】本発明の第４の実施の形態における処理フロー図
【図１２】本発明の第４の実施の形態における履歴情報の具体例を示す図
【図１３】本発明の第５の実施の形態におけるベクトル生成装置のシステム構成図
【図１４】本発明の第５の実施の形態における処理フロー図
【図１５】本発明の第５の実施の形態におけるベクトル検証情報の具体例を示す図
【図１６】本発明の第６の実施の形態におけるベクトル生成装置のシステム構成図
【図１７】本発明の第６の実施の形態における処理フロー図
【図１８】本発明の第６の実施の形態における受信ベクトル制御情報の具体例を示す図
【図１９】本発明の第１の実施の形態におけるベクトル演算部と記憶部がＬＳＩである場合のベクトル生成装置のシステム構成図
【図２０】本発明の第２の実施の形態におけるベクトル演算部と記憶部がＬＳＩである場合のベクトル生成装置のシステム構成図
【図２１】従来例のシステム構成図
【符号の説明】
【０２１８】
１０    外部機器
１００  端末
１０１  受信部
１０２  記憶部
１０３  ベクトル演算部
１０４  送信部
３００  相関係数算出手段
３０１  ベクトル置換手段
３０２  ベクトル関数記憶手段
３０３  ベクトル演算手段
３０４  ベクトル合成手段
３０５  テンプレートベクトル
５００  ベクトル演算部
５０１  相関係数算出手段
５０２  ベクトル置換手段
５０３  ベクトル関数記憶手段
５０４  ベクトル演算手段
５０５  ベクトル合成手段
７００  受信部
７０１  ベクトル演算部
７０２  相関係数変動手段
８００  処理「相関係数許容範囲受信」
８０１  処理「相関係数変動」
１０００  ベクトル演算部
１００１  生成ベクトル分散手段
１００２  履歴情報
１２００  識別番号
１２０１  値
１２０２  履歴情報の一行目
１３０１  ベクトル検証情報
１３０２  ベクトル検証手段
１３０３  ベクトル演算部
１４００  処理「ベクトル検証情報取得」
１５００  しきい値
１５０１  個数
１６００  受信ベクトル制御情報
１６０１  受信部
１７００  処理「受信ベクトル制御」
１８００  絶対受信成分
１８０１  成分優先度
１８０２  識別番号
１９００  ＬＳＩ
２０００  ＬＳＩ
２１００  認証装置
２１０１  生体情報入力部
２１０２  リーダライタ
２１０３  メモリ
２１０４  認証部
２１０５  部分テンプレートＡ
２１０６  可搬型記憶部
２１０７  部分テンプレートＢ
【産業上の利用可能性】
【０２１９】
本発明は、端末が外部に送信する生体テンプレートは、端末内で照合結果を維持するように、且つ、元のテンプレートの復元が困難であるように変換するため、その場の認証でしか利用価値はなく、したがって、変換された生体テンプレートがサーバから漏洩した場合に、認証などに二次利用することは困難であり、安全であるという効果を有し、保護したい秘密情報を格納可能な携帯端末や、パーソナルコンピュータや、記憶デバイスに適用が可能である。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2006090680.tif 000051
【図２】
2006090680.tif 000052
【図３】
2006090680.tif 000053
【図４】
2006090680.tif 000054
【図５】
2006090680.tif 000055
【図６】
2006090680.tif 000056
【図７】
2006090680.tif 000057
【図８】
2006090680.tif 000058
【図９】
2006090680.tif 000059
【図１０】
2006090680.tif 000060
【図１１】
2006090680.tif 000061
【図１２】
2006090680.tif 000062
【図１３】
2006090680.tif 000063
【図１４】
2006090680.tif 000064
【図１５】
2006090680.tif 000065
【図１６】
2006090680.tif 000066
【図１７】
2006090680.tif 000067
【図１８】
2006090680.tif 000068
【図１９】
2006090680.tif 000069
【図２０】
2006090680.tif 000070
【図２１】
2006090680.tif 000071
【国際調査報告】
2006090680.tif 000072
2006090680.tif 000073