(57)【要約】【課題】本発明は、ユーザの暗号化生体データを高信頼性ネットワークノードの位置で更新する方法及びデバイスに関する。【解決手段】本発明の１つの態様では、第１クライアントデバイス（１００）により行なわれてユーザ（２００）の暗号化生体データを更新する方法が提供され、更新されることになる暗号化生体データは、第１クライアントデバイス（１００）により予め撮影されていたものであり、高信頼性ネットワークノード（３００）の位置で登録されていたものである。【選択図】図４
2020511077.tif 000002
【特許請求の範囲】
【請求項１】
第１クライアントデバイス（１００）により行なわれてユーザ（２００）の暗号化生体データを更新する方法であって、更新されることになる前記暗号化生体データが、前記第１クライアントデバイス（１００）により予め撮影されていたものであるとともに高信頼性ネットワークノード（３００）の位置で登録されていたものであり、
登録された前記暗号化生体データを更新するために用いられる前記ユーザ（２００）の生体データを撮影する（Ｓ１０１）ことと、
撮影された前記生体データを、更新された前記暗号化生体データに後にアクセスすることになる第２クライアントデバイス（６００）と共有される鍵を使用して暗号化する（Ｓ１０２）ことと、
前記暗号化生体データに関連する第１認証トークンを生成する（Ｓ１０３）ことであって、当該第１認証トークンは、前記第２クライアントデバイス（６００）の更新された前記暗号化生体データの要求に応じて、前記第２クライアントデバイス（６００）と前記高信頼性ネットワークノード（３００）との間で共有されることになる秘密鍵を取り込むように構成されることと、
前記暗号化生体データ及び前記第１認証トークンを前記高信頼性ネットワークノード（３００）に対してセキュア通信チャネルを経由して提示する（Ｓ１０４）ことと、を含む方法。
【請求項２】
前記高信頼性ネットワークノードが前記第１認証トークンの認証に成功した場合に、前記予め登録されていた暗号化生体データが提示された前記暗号化生体データで置換されている旨のメッセージを前記高信頼性ネットワークノード（３００）から受信する（Ｓ１０７）ことを更に含む請求項１に記載の方法。
【請求項３】
前記第２クライアントデバイス（６００）と前記高信頼性ネットワークノード（３００）との間で共有されることになる複数の秘密鍵を生成する（Ｓ１０１ａ）ことを更に含む請求項１又は２に記載の方法。
【請求項４】
生体データを前記暗号化する（Ｓ１０２）ことは、
複数の撮影生体データ集合を、引き続き更新された前記暗号化生体データにアクセスすることになる第２クライアントデバイス（６００）と共有される鍵を使用して暗号化することを含む請求項３に記載の方法。
【請求項５】
前記第１認証トークンを前記生成する（Ｓ１０３）ことは、
前記暗号化生体データに関連する前記第１認証トークンを生成する（Ｓ１０３ａ）ことを更に含み、当該第１認証トークンは、更新された前記暗号化生体データ、前記暗号化生体データの集合群の各々及び置換されることになる前記暗号化生体データの集合を指定する識別子の前記第２クライアントデバイス（６００）による要求に応じて、前記第２クライアントデバイス（６００）と前記高信頼性ネットワークノード（３００）との間で共有されることになる前記複数の秘密鍵を取り込むように構成される請求項４に記載の方法。
【請求項６】
前記第１認証トークンを前記生成する（Ｓ１０３）ことは更に、
前記第１認証トークンに対して、前記第１クライアントデバイス（１００）のプライベート鍵でデジタル署名する（Ｓ１０３ｂ）ことを含み、前記第１認証トークンを前記高信頼性ネットワークノード（３００）に対して前記提示する（Ｓ１０４）ことは更に、
デジタル署名入りの第１認証トークンを前記高信頼性ネットワークノード（３００）に対して提示することを含む請求項５に記載の方法。
【請求項７】
第２クライアントデバイス（６００）により行なわれて、前記第２クライアントデバイス（６００）のユーザ（２００）の更新された暗号化生体データを高信頼性ネットワークノード（３００）から取得する方法であって、前記暗号化生体データは、前記高信頼性ネットワークノード（３００）の位置で、第１クライアントデバイス（１００）により更新されており、
前記ユーザ（２００）の予め登録されていた暗号化生体データを置換している更新された前記暗号化生体データを受信する旨の要求を、前記高信頼性ネットワークノード（３００）に対してセキュア通信チャネルを経由して提示し（Ｓ１０８）、前記要求は、前記予め登録されていた暗号化生体データに関連する第２認証トークンを取り込むことと、
前記高信頼性ネットワークノード（３００）が前記第２認証トークンを認証することができる場合に、認証チャレンジを前記高信頼性ネットワークノード（３００）から受信する（Ｓ１１１）ことと、
受信した認証チャレンジに対する認証応答を、共有秘密鍵及び前記認証チャレンジを使用して行なう（Ｓ１１２）ことであって、前記第２クライアントデバイス（６００）が前記予め登録されていた暗号化生体データを取得すると、前記共有秘密鍵が前記高信頼性ネットワークノード（３００）から、より早い段階で受信されている、前記認証応答を行なう（Ｓ１１２）ことと、前記認証応答が正しい場合に、
前記高信頼性ネットワークノード（３００）からの更新された前記暗号化生体データと、更新された前記暗号化生体データに関連する新規共有秘密鍵と、を受信する（Ｓ１１４）ことと、を含む方法。
【請求項８】
サードパーティネットワークノード（５００）で前記第２クライアントデバイス（６００）の前記ユーザ（２００）が認証されることになる当該サードパーティネットワークノード（５００）から、更新された前記暗号化生体データを復号することができる秘密鍵を受信する（Ｓ１１５）ことを更に含む請求項７に記載の方法。
【請求項９】
更新された前記暗号化生体データを、受信した秘密鍵を使用して復号する（Ｓ１１６）ことと、
更新された生体データをセキュアストレージに格納する（Ｓ１１７）ことと、を更に含む請求項８に記載の方法。
【請求項１０】
前記第２認証トークンは、サードパーティネットワークノード（５００）で前記第２クライアントデバイス（６００）の前記ユーザ（２００）が認証されることになる当該サードパーティネットワークノード（５００）から受信されて（Ｓ３０６）おり、前記第１クライアントデバイス（１００）により生成されており、前記第２認証トークンは、生成される乱数と、置換されることになる前記暗号化生体データの集合を指定する識別子と、前記第２認証トークンを認証するために使用される前記第１クライアントデバイス（１００）の公開鍵を指定するインデックスと、を含む暗号化データ集合を含む請求項７から９のいずれか一項に記載の方法。
【請求項１１】
前記暗号化データ集合に対して更に、前記第１クライアントデバイス（１００）のプライベート鍵でデジタル署名されている請求項１０に記載の方法。
【請求項１２】
高信頼性ネットワークノード（３００）により行なわれて、第１クライアントデバイス（１００）のユーザ（２００）の予め登録されていた暗号化生体データを更新する方法であって、
登録された前記暗号化生体データを更新するために更新するために用いられる暗号化生体データ及び受信した前記暗号化生体データに関連する第１認証トークンを、前記第１クライアントデバイス（１００）からセキュア通信チャネルを経由して受信する（Ｓ１０４）ことであって、当該第１認証トークンは、更新された前記暗号化生体データの第２クライアントデバイス（６００）による要求に応じて、前記第２クライアントデバイス（６００）と前記高信頼性ネットワークノード（３００）との間で共有されることになる秘密鍵を取り込むことと、
受信した前記第１認証トークンを認証する（Ｓ１０５）ことと、
前記予め登録されていた暗号化生体データを、受信した暗号化生体データで置換して（Ｓ１０６）、共有されることになる前記秘密鍵を格納することと、を含む方法。
【請求項１３】
前記予め登録されていた暗号化データの更新に成功していることを確認する旨のメッセージを前記第１クライアントデバイス（１００）に対して提示する（Ｓ１０７）ことを更に含む請求項１２に記載の方法。
【請求項１４】
前記第１認証トークンを前記認証する（Ｓ１０５）ことは、
前記第１クライアントデバイス（１００）の公開鍵を取得することを含み、前記方法は更に、
前記公開鍵を使用して、前記第１認証トークンに対して前記第１クライアントデバイス（１００）によりデジタル署名が行なわれていることを検証することを含む請求項１２又は１３に記載の方法。
【請求項１５】
前記ユーザ（２００）の予め登録されていた暗号化生体データを置換している更新された前記暗号化生体データを受信するために、第２クライアントデバイス（６００）からセキュア通信チャネルを経由して受信し（Ｓ１０８）、前記要求は、前記予め登録されていた暗号化生体データに関連する第２認証トークンを含むことと、
受信した前記第２認証トークンを認証する（Ｓ１０９）ことと、
更新された前記暗号化生体データ、前記第２クライアントデバイス（６００）と共有されることになる前記秘密鍵、置換されている前記暗号化生体データに関連する共有秘密鍵を鍵格納部（４００）から取得する（Ｓ１１０）ことと、
認証チャレンジを前記第２クライアントデバイス（６００）に対して提示する（Ｓ１１１）ことと、
置換されている前記暗号化生体データ及び前記認証チャレンジに関連する前記共有秘密鍵に基づく認証応答を受信する（Ｓ１１２）ことと、
前記認証応答が正しく計算されていることを検証する（Ｓ１１３）ことと、
前記認証応答が正しく計算されている場合に、更新された前記暗号化生体データ及び共有されることになる前記秘密鍵を前記第２クライアントデバイス（６００）に対して提示する（Ｓ１１４）ことと、を更に含む請求項１２から１４のいずれか一項に記載の方法。
【請求項１６】
前記第２クライアントデバイス（６００）が高信頼性デバイス集合体に属していることをチェックする（Ｓ１０８ａ）ことを更に含む請求項１５に記載の方法。
【請求項１７】
前記第２クライアントデバイス（６００）が高信頼性デバイス集合体に属していることを前記チェックする（Ｓ１０８ａ）ことは、高信頼性コンピューティングＴＣ検証手法を使用して行なわれる請求項１６に記載の方法。
【請求項１８】
受信（Ｓ１０８）した前記第２認証トークンは、
前記第１クライアントデバイス（１００）により生成される乱数と、前記第２認証トークンを認証するために使用される前記第１クライアントデバイス（１００）の公開鍵を指定するインデックスと、置換されることになる前記暗号化生体データを指定する識別子と、を含み、前記高信頼性ネットワークノード（３００）の前記公開鍵で前記第１クライアントデバイス（１００）により暗号化されるデータ集合と、
前記第１クライアントデバイス（１００）のプライベート鍵でデジタル署名されている暗号化されたデータ集合と、を含む請求項１５から１７のいずれか一項に記載の方法。
【請求項１９】
受信した前記第２認証トークンを前記認証する（Ｓ１０９）ことは、
暗号化されたデータ集合を復号して、前記第１クライアントデバイス（１００）により使用される前記秘密鍵を指定するインデックス及び識別子を取得することにより生体データ及び参照情報を暗号化することを含む請求項１７に記載の方法。
【請求項２０】
受信した前記第２認証トークンを前記認証する（Ｓ１０９）ことは更に、
前記第２認証トークンが前記高信頼性ネットワークノード（３００）に対して、前記暗号化生体データが置換されている場合以外の前記識別子に対応して予め提示されていなかったことを検証する（Ｓ１０９ａ）ことを含み、前記第２認証トークンが予め提示されていた場合に、認証手順を中断する請求項１９に記載の方法。
【請求項２１】
前記第２認証トークンが前記高信頼性ネットワークノード（３００）に対して、予め提示されていなかったことを前記検証する（Ｓ１０９ａ）ことは更に、
暗号化されたデータ集合を復号することにより得られる乱数が前記高信頼性ネットワークノード（３００）に対して、前記暗号化生体データが置換されている場合以外の前記識別子に対応して予め提示されていなかったことを検証する（Ｓ１１２ａ）ことを含む請求項２０に記載の方法。
【請求項２２】
更新された前記暗号化生体データを前記鍵格納部（４００）から前記取得する（Ｓ１１０）ことは更に、
インデックスで指定される前記第１クライアントデバイス（１００）の公開鍵を取得することを含み、前記方法は更に、
デジタル署名入りの暗号化データ集合を前記第１クライアントデバイス（１００）
の前記取得した公開鍵を使用して検証する（Ｓ１１０ａ）ことを含む請求項１７に記載の方法。
【請求項２３】
前記認証応答が正しく計算されていることを前記検証する（Ｓ１１３）ことは更に、検証に成功すると、前記予め共有されていた秘密鍵を前記鍵格納部（４００）から取り出すことを含む請求項１５から２２のいずれか一項に記載の方法。
【請求項２４】
ユーザ（２００）の暗号化生体データを更新するように構成される第１クライアントデバイス（１００）であって、更新されることになる前記暗号化生体データは、前記第１クライアントデバイス（１００）により予め撮影されていたものであり、高信頼性ネットワークノード（３００）の位置で登録されていたものであり、前記第１クライアントデバイスは、生体データセンサ（１０２）及び処理ユニット（１０３）を含む生体データ検出システム（１０１）を備え、
前記生体データセンサ（１０２）は、
前記ユーザ（２００）の生体データを撮影して使用することにより登録された前記暗号化生体データを更新するように構成され、
前記処理ユニット（１０３）は、
撮影された前記生体データを、引き続き更新された前記暗号化生体データにアクセスすることになる第２クライアントデバイス（６００）と共有される鍵を使用して暗号化し、
前記暗号化生体データに関連する第１認証トークンを生成し、当該第１認証トークンは、前記第２クライアントデバイス（６００）の更新された前記暗号化生体データの要求に応じて、前記第２クライアントデバイス（６００）と前記高信頼性ネットワークノード（３００）との間で共有されることになる秘密鍵を取り込むように構成され、
前記暗号化生体データ及び前記第１認証トークンを前記高信頼性ネットワークノード（３００）に対してセキュア通信チャネルを経由して提示するように構成される第１クライアントデバイス（１００）。
【請求項２５】
前記処理ユニット（１０３）は更に、
前記高信頼性ネットワークノードが前記第１認証トークンの認証に成功した場合に、前記予め登録されていた暗号化生体データが提示された前記暗号化生体データで置換されている旨のメッセージを前記高信頼性ネットワークノード（３００）から受信するように構成される請求項２４に記載の第１クライアントデバイス（１００）。
【請求項２６】
前記処理ユニット（１０３）は更に、
前記第２クライアントデバイス（６００）と前記高信頼性ネットワークノード（３００）との間で共有されることになる複数の秘密鍵を生成するように構成される請求項２４又は２５に記載の第１クライアントデバイス（１００）。
【請求項２７】
前記処理ユニット（１０３）は更に、
前記生体データを暗号化する場合に、複数の撮影生体データ集合を、引き続き更新された前記暗号化生体データにアクセスすることになる第２クライアントデバイス（６００）と共有される鍵を使用して暗号化するように構成される請求項２６に記載の第１クライアントデバイス（１００）。
【請求項２８】
前記処理ユニット（１０３）は更に、
前記第１認証トークンを生成する場合に、前記暗号化生体データに関連する前記第１認証トークンを生成する（Ｓ１０３ａ）ように構成され、当該第１認証トークンは、前記第２クライアントデバイス（６００）が更新された前記暗号化生体データ、前記暗号化生体データの集合群の各暗号化生体データ集合及び置換されることになる前記暗号化生体データ集合を指定する識別子の要求に応じて、前記第２クライアントデバイス（６００）と前記高信頼性ネットワークノード（３００）との間で共有されることになる前記複数の秘密鍵を取り込むように構成される請求項２７に記載の第１クライアントデバイス（１００）。
【請求項２９】
前記処理ユニット（１０３）は更に、
前記第１認証トークンを生成する場合に、前記第１認証トークンに対して前記第１クライアントデバイス（１００）のプライベート鍵でデジタル署名するように構成され、
前記第１認証トークンを前記高信頼性ネットワークノード（３００）に対して提示する場合に、デジタル署名入りの第１認証トークンを前記高信頼性ネットワークノード（３００）に対して提示するように構成される請求項２８に記載の第１クライアントデバイス（１００）。
【請求項３０】
第２クライアントデバイス（６００）のユーザ（２００）の更新された暗号化生体データを高信頼性ネットワークノード（３００）から取得するように構成される第２クライアントデバイス（６００）であって、前記暗号化生体データは、前記高信頼性ネットワークノード（３００）の位置で第１クライアントデバイス（１００）により更新されており、前記第２クライアントデバイス（６００）は、生体データセンサ（１０２）及び処理ユニット（１０３）を含む生体データ検出システム（１０１）を備え、前記処理ユニット（１０３）は、
前記ユーザ（２００）の予め登録されていた暗号化生体データを置換している更新された前記暗号化生体データを受信する旨の要求を、前記高信頼性ネットワークノード（３００）に対してセキュア通信チャネルを経由して提示し、前記要求は、前記予め登録されていた暗号化生体データに関連する第２認証トークンを取り込み、
前記高信頼性ネットワークノード（３００）が前記第２認証トークンを認証することができる場合に、認証チャレンジを前記高信頼性ネットワークノード（３００）から受信し、
受信した前記認証チャレンジに対する認証応答を、共有秘密鍵及び前記認証チャレンジを使用して行ない、前記第２クライアントデバイス（６００）が前記予め登録されていた暗号化生体データを取得すると、前記共有秘密鍵が、前記高信頼性ネットワークノード（３００）から、より早い段階で受信されており、
前記認証応答が正しい場合に、前記高信頼性ネットワークノード（３００）からの更新された前記暗号化生体データ、及び更新された前記暗号化生体データに関連する新規共有秘密鍵を受信するように構成される第２クライアントデバイス（６００）。
【請求項３１】
前記処理ユニット（１０３）は更に、
サードパーティネットワークノード（５００）で前記第２クライアントデバイス（６００）の前記ユーザ（２００）が認証されることになる当該サードパーティネットワークノード（５００）から、更新された前記暗号化生体データを復号することができる秘密鍵を受信するように構成される請求項３０に記載の第２クライアントデバイス（６００）。
【請求項３２】
前記処理ユニット（１０３）は更に、
更新された前記暗号化生体データを、受信した前記秘密鍵を使用して復号し、
更新された生体データをセキュアストレージに格納するように構成される請求項３１に記載の第２クライアントデバイス（６００）。
【請求項３３】
前記第２認証トークンは、サードパーティネットワークノード（５００）で前記第２クライアントデバイス（６００）の前記ユーザ（２００）が認証されることになる当該サードパーティネットワークノード（５００）から受信されており、前記第１クライアントデバイス（１００）により生成されており、前記第２認証トークンは、生成される乱数と、置換されることになる暗号化生体データ集合を指定する識別子と、前記第２認証トークンを認証するために使用される前記第１クライアントデバイス（１００）の公開鍵を指定するインデックスと、を含む暗号化データ集合を含む請求項３０から３２のいずれか一項に記載の第２クライアントデバイス（６００）。
【請求項３４】
前記暗号化データ集合に対して更に、前記第１クライアントデバイス（１００）のプライベート鍵でデジタル署名されている請求項３３に記載の第２クライアントデバイス（６００）。
【請求項３５】
第１クライアントデバイス（１００）のユーザ（２００）の予め登録されていた暗号化生体データを更新するように構成される高信頼性ネットワークノード（３００）であって、前記高信頼性ネットワークノード（３００）は処理ユニット（３０１）を備え、前記処理ユニット（３０１）は、
前記第１クライアントデバイス（１００）からセキュア通信チャネルを経由して、登録された前記暗号化生体データを更新するために使用されることになる暗号化生体データ及び受信した暗号化生体データに関連する第１認証トークンを受信し、当該第１認証トークンは、第２クライアントデバイス（６００）の更新された前記暗号化生体データの要求に応じて、前記第２クライアントデバイス（６００）と前記高信頼性ネットワークノード（３００）との間で共有されることになる秘密鍵を取り込み、
受信した第１認証トークンを認証し、
前記予め登録されていた暗号化生体データを受信した前記暗号化生体データで置換して、共有されることになる前記秘密鍵を格納するように構成される高信頼性ネットワークノード（３００）。
【請求項３６】
前記処理ユニット（３０１）は更に、
前記予め登録されていた暗号化生体データの更新に成功したことを確認する旨のメッセージを前記第１クライアントデバイス（１００）に対して提示するように構成される請求項３５に記載の高信頼性ネットワークノード（３００）。
【請求項３７】
前記処理ユニット（３０１）は更に、
前記第１認証トークンを認証する場合に、前記第１クライアントデバイス（１００）の公開鍵を取得し、
前記公開鍵を使用して、前記第１認証トークンに対して前記第１クライアントデバイス（１００）によりデジタル署名が行なわれていることを検証するように構成される請求項３５又は３６に記載の高信頼性ネットワークノード（３００）。
【請求項３８】
前記処理ユニット（３０１）は更に、
前記ユーザ（２００）の予め登録されていた暗号化生体データを置換している更新された前記暗号化生体データを受信するために、第２クライアントデバイス（６００）からセキュア通信チャネルを経由して要求を受信し、前記要求は、前記予め登録されていた暗号化生体データに関連する第２認証トークンを取り込み、
受信した第２認証トークンを認証し、
更新された前記暗号化生体データ、前記第２クライアントデバイス（６００）と共有されることになる前記秘密鍵、及び置換されている前記暗号化生体データに関連する共有秘密鍵を鍵格納部（４００）から取得し、
認証チャレンジを前記第２クライアントデバイス（６００）に対して提示し、
置換されている前記暗号化生体データ、及び前記認証チャレンジに関連する前記共有秘密鍵に基づく認証応答を受信し、
前記認証応答が正しく計算されていることを検証し、
前記認証応答が正しく計算されている場合に、更新された前記暗号化生体データ及び共有されることになる前記秘密鍵を前記第２クライアントデバイス（６００）に対して提示するように構成される請求項３５から３７のいずれか一項に記載の高信頼性ネットワークノード（３００）。
【請求項３９】
前記処理ユニット（３０１）は更に、
前記第２クライアントデバイス（６００）が高信頼性デバイス集合体に属していることをチェックするように構成される請求項３８に記載の高信頼性ネットワークノード（３００）。
【請求項４０】
前記処理ユニット（３０１）は、前記第２クライアントデバイス（６００）が高信頼性デバイス集合体に属していることの前記チェックを、高信頼性コンピューティングＴＣ検証手法を使用して行なうように構成される請求項３９に記載の高信頼性ネットワークノード（３００）。
【請求項４１】
受信した認証トークンは、
前記第１クライアントデバイス（１００）により生成される乱数と、前記第２認証トークンを認証するために使用される前記第１クライアントデバイス（１００）の公開鍵を指定するインデックスと、置換されることになる前記暗号化生体データを指定する識別子と、を含むデータ集合であって、前記データ集合が、前記高信頼性ネットワークノード（３００）の前記公開鍵で、前記第１クライアントデバイス（１００）により暗号化される、前記データ集合と、
前記第１クライアントデバイス（１００）のプライベート鍵でデジタル署名されている暗号化データ集合と、を含む請求項３８から４０のいずれか一項に記載の高信頼性ネットワークノード（３００）。
【請求項４２】
前記処理ユニット（３０１）は、
受信した第２認証トークンを認証する場合に、前記暗号化データ集合を復号して、前記第１クライアントデバイス（１００）により使用される前記秘密鍵を指定する前記インデックス及び前記識別子を取得して、生体データ及び参照情報を暗号化するように構成される請求項４１に記載の高信頼性ネットワークノード（３００）。
【請求項４３】
前記処理ユニット（３０１）は、
受信した第２認証トークンを認証する場合に、前記第２認証トークンが、前記高信頼性ネットワークノード（３００）に対して、前記暗号化生体データが置換されている場合以外の前記識別子に対応して予め提示されていなかったことを検証し、前記第２認証トークンが予め提示されていた場合に、認証手順を中断するように構成される請求項４２に記載の高信頼性ネットワークノード（３００）。
【請求項４４】
前記処理ユニット（３０１）は、
前記第２認証トークンが前記高信頼性ネットワークノード（３００）に対して予め提示されていなかったことを検証する場合に、前記暗号化データ集合を復号することにより取得される前記乱数が、前記高信頼性ネットワークノード（３００）に対して、前記暗号化生体データが置換されている場合以外の前記識別子に対応して予め提示されていなかったことを検証するように構成される請求項４３に記載の高信頼性ネットワークノード（３００）。
【請求項４５】
前記処理ユニット（３０１）は、
更新された前記暗号化生体データを前記鍵格納部（４００）から取得する場合に、前記インデックスで指定される前記第１クライアントデバイス（１００）の前記公開鍵を取得し、
デジタル署名入りの暗号化データ集合を前記第１クライアントデバイス（１００）の前記取得した公開鍵を使用して検証するように構成される請求項４２に記載の高信頼性ネットワークノード（３００）。
【請求項４６】
前記処理ユニット（３０１）は、
前記認証応答が正しく計算されていることを検証する場合に、検証に成功すると、前記予め共有されていた秘密鍵を前記鍵格納部（４００）から取り出すように構成される請求項３８から４５のいずれか一項に記載の高信頼性ネットワークノード（３００）。
【請求項４７】
生体データ検出システム（１０１）が、請求項１から１１のいずれか一項に記載のステップを、コンピュータ実行可能命令が前記生体データ検出システム（１０１）に含まれる処理ユニット（１０３）で実行されると行なうようになるコンピュータ実行可能命令を含むコンピュータプログラム（１０７）。
【請求項４８】
コンピュータ可読媒体（１０５）を備えるコンピュータプログラム製品であって、前記コンピュータ可読媒体が、前記コンピュータ可読媒体上で具体化される請求項４７に記載の前記コンピュータプログラム（１０７）を有するコンピュータプログラム製品。
【請求項４９】
前記高信頼性ネットワークノード（３００）が、請求項１２から２３のいずれか一項に記載のステップを、コンピュータ実行可能命令が前記高信頼性ネットワークノード（３００）に含まれる処理ユニット（３０１）で実行されると行なうようになるコンピュータ実行可能命令を含むコンピュータプログラム（３０２）。
【請求項５０】
コンピュータ可読媒体（３０３）を備えるコンピュータプログラム製品であって、前記コンピュータ可読媒体が、前記コンピュータ可読媒体上で具体化される請求項４９に記載の前記コンピュータプログラム（３０２）を有するコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの暗号化生体データを高信頼性ネットワークノードの位置で更新する方法及びデバイスに関する。
【背景技術】
【０００２】
従来技術のマルチユーザ生体認証システムでは、生体データを１つのクライアントデバイスの位置で撮影して、認証を別の生体認証デバイスの位置で行なうために生体データを利用可能にしながら、指紋認識のようなユーザの認識を生体データに基づいて行なうようにする必要がある。
【０００３】
しかしながら、元の生体データテンプレートの機密性がセキュリティの観点から非常に高いので、元の生体データのみが高信頼性の生体認証リーダデバイスで利用可能になることを保証し、かつ生体データがこのようなデバイスのセキュアコンピューティング環境から決して出て行くことがないことを保証することが最も重要である。
【０００４】
生体認証により、エンドユーザがユーザ名又はパスワードを記憶する必要なく、又は特殊目的のハードウェアトークンを所持する必要なく、効率的なエンドユーザ識別が可能になる。しかしながら、プライバシーへの影響は、生体データに基づく認証が単一のデバイスで行なわれる場合に軽減される可能性があるが、生体データをデバイス間で転送する場合には元の生体データを保護することが非常に重要である。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
生体データは、定義によれば、生体センサで利用可能になる必要がある。限定された量の生体データが特定の生体センサの位置で格納されることは議論の余地がない。このようなことから、セキュリティが、生体データを１つのデバイスから別のデバイスに転送する際に保証される限り、限られた数の生体データテンプレートを転送することが許容される。しかしながら、平文の生体データのみが高信頼性の生体センサデバイスにおいて利用可能になり、かつ他の場所では転送中に利用可能にはならないことを保証することができる機構が所定の位置に存在しなければならず、これは実際には、実現することが難しい。
【課題を解決するための手段】
【０００６】
本発明の目的は、この技術分野におけるこの問題を解決する、又は少なくとも軽減することにあり、ユーザの暗号化生体データであって、当該データがクライアントデバイスにより撮影されていて、高信頼性ネットワークノードの位置で登録されている当該暗号化生体データの更新を行えるようにする方法を提供することにある。
【０００７】
この目的は、本発明の第１の態様において、第１クライアントデバイスにより行なわれてユーザの暗号化生体データを更新する方法により達成され、更新されることになる暗号化生体データは、第１クライアントデバイスにより予め撮影されていたものであり、高信頼性ネットワークノードの位置で予め登録されていたものである。方法は、ユーザの生体データを撮影して使用することにより、登録暗号化生体データを更新することと、撮影生体データを、引き続き更新暗号化生体データにアクセスすることになる第２クライアントデバイスと共有される鍵を使用して暗号化することと、暗号化生体データに関連する第１認証トークンを生成することと、を含み、当該第１トークンは、第２クライアントデバイスが更新暗号化生体データを要求すると、第２クライアントデバイスと高信頼性ネットワークノードとの間で共有されることになる秘密鍵を取り込むように構成される。方法は更に、暗号化生体データ及び第１認証トークンを高信頼性ネットワークノードに対してセキュア通信チャネルを経由して提示することを含む。
【０００８】
この目的は、本発明の第２の態様において、ユーザの暗号化生体データを更新するように構成される第１クライアントデバイスにより達成され、更新されることになる暗号化生体データは、第１クライアントデバイスにより予め撮影されたものであり、高信頼性ネットワークノードの位置で登録されたものであり、第１クライアントデバイスは、生体データセンサ及び処理ユニットを含む生体データ検出システムを備える。生体データセンサは、ユーザの生体データを撮影して使用することにより登録暗号化生体データを更新するように構成される。処理ユニットは、撮影生体データを、引き続き更新暗号化生体データにアクセスすることになる第２クライアントデバイスと共有される鍵を使用して暗号化し、暗号化生体データに関連する第１認証トークンを、当該第１トークンが、第２クライアントデバイスが更新暗号化生体データを要求すると、第２クライアントデバイスと高信頼性ネットワークノードとの間で共有されることになる秘密鍵を取り込むように構成されるように生成し、暗号化生体データ及び第１認証トークンを高信頼性ネットワークノードに対してセキュア通信チャネルを経由して提示するように構成される。
【０００９】
この目的は、本発明の第３の態様において、第２クライアントデバイスにより行なわれて、第２クライアントデバイスのユーザの更新暗号化生体データを高信頼性ネットワークノードから取得する方法により達成され、暗号化生体データは、高信頼性ネットワークノードの位置で、第１クライアントデバイスにより更新されている。方法は、ユーザの予め登録されていた暗号化生体データを置換している更新暗号化生体データを受信する旨の要求を、当該要求に、予め登録されていた暗号化生体データに関連する第２認証トークンを取り込むようにして、高信頼性ネットワークノードに対してセキュア通信チャネルを経由して提示することと、認証チャレンジを高信頼性ネットワークノードから、高信頼性ネットワークノードが第２認証トークンを認証することができる場合に受信することと、を含む。方法は更に、受信した認証チャレンジに対する認証応答を、共有秘密鍵及び認証チャレンジを使用して行なうことであって、第２クライアントデバイス（６００）が、予め登録されていた暗号化生体データを取得すると、共有秘密鍵が、高信頼性ネットワークノードから、より早い段階で受信されている、当該認証応答を行なうことと、認証応答が正しい場合に、高信頼性ネットワークノードからの更新暗号化生体データ、及び更新暗号化生体データに関連する新規共有秘密鍵を受信することと、を含む。
【００１０】
この目的は、本発明の第４の態様において、第２クライアントデバイスのユーザの更新暗号化生体データを高信頼性ネットワークノードから取得するように構成される第２クライアントデバイスにより達成され、暗号化生体データは、高信頼性ネットワークノードの位置で第１クライアントデバイスにより更新されており、第２クライアントデバイスは、生体データセンサ及び処理ユニットを含む生体データ検出システムを備える。処理ユニットは、ユーザの予め登録されていた暗号化生体データを置換している更新暗号化生体データを受信する旨の要求を、当該要求に、予め登録されていた暗号化生体データに関連する第２認証トークンを取り込むようにして、高信頼性ネットワークノードに対してセキュア通信チャネルを経由して提示し、高信頼性ネットワークノードが第２認証トークンを認証することができる場合に、認証チャレンジを高信頼性ネットワークノードから受信するように構成される。処理ユニットは更に、受信した認証チャレンジに対する認証応答を、共有秘密鍵及び認証チャレンジを使用して行ない、第２クライアントデバイスが、予め登録されていた暗号化生体データを取得すると、共有秘密鍵が、高信頼性ネットワークノードから、より早い段階で受信されており、認証応答が正しい場合に、高信頼性ネットワークノードからの更新暗号化生体データ、及び更新暗号化生体データに関連する新規共有秘密鍵を受信するように構成される。
【００１１】
この目的は、本発明の第５の態様において、高信頼性ネットワークノードにより行なわれて、第１クライアントデバイスのユーザの予め登録されていた暗号化生体データを更新する方法により達成される。方法は、第１クライアントデバイスからセキュア通信チャネルを経由して、登録暗号化生体データを更新するために使用されることになる暗号化生体データ、及び受信した暗号化生体データに関連する第１認証トークンを、当該第１認証トークンに、第２クライアントデバイス（６００）が更新暗号化生体データを要求すると、第２クライアントデバイスと高信頼性ネットワークノードとの間で共有されることになる秘密鍵を取り込むようにして受信することと、受信した第１認証トークンを認証することと、予め登録されていた暗号化生体データを、受信した暗号化生体データで置換して、共有されることになる前記秘密鍵を格納することと、を含む。
【００１２】
この目的は、本発明の第６の態様において、第１クライアントデバイスのユーザの予め登録されていた暗号化生体データを更新するように構成される高信頼性ネットワークノードにより達成される。高信頼性ネットワークノードは処理ユニットを備え、処理ユニットは、第１クライアントデバイスからセキュア通信チャネルを経由して、登録暗号化生体データを更新するために使用されることになる暗号化生体データ、及び受信した暗号化生体データに関連する第１認証トークンを、当該第１認証トークンに、第２クライアントデバイスが更新暗号化生体データを要求すると、第２クライアントデバイスと高信頼性ネットワークノードとの間で共有されることになる秘密鍵を取り込むようにして受信し、受信した第１認証トークンを認証し、予め登録されていた暗号化生体データを、受信した暗号化生体データで置換して、共有されることになる秘密鍵を格納するように構成される。
【００１３】
有利な点として、本発明により、ユーザの暗号化生体データの更新が容易になり、当該生体データは、第１クライアントデバイスにより、予め撮影されていたものであり、高信頼性サーバのような高信頼性ネットワークノードの位置で登録されていたものである。
【００１４】
このようなことから、第１クライアントデバイスは、ユーザの生体データを、例えば指紋検出システムを利用することにより、又は瞳センサ、網膜センサ、顔認識センサなどのような任意の他の適切な生体データセンサを利用することにより撮影する。
【００１５】
既に登録されている生体データを置換することになる撮影生体データはここでは、既に登録されている生体データよりも品質が高いと仮定される。
【００１６】
その後、第１クライアントデバイスは、撮影生体データを、予め生成されていた秘密鍵を使用して暗号化し、この秘密鍵は、暗号化生体データを高信頼性サーバの位置で予め登録しておくプロセスに使用されていた。
【００１７】
１つの実施形態では、複数の秘密鍵を予め生成しておいて、第１クライアントデバイスが、対応する数の複製撮影生体データ集合を生成して、既に格納されている暗号化生体データの置換が行なわれると、対応する数の更新暗号化生体データ集合が高信頼性サーバの位置で格納されて、対応する数の第２クライアントデバイスが、ユーザの更新生体データを取得することができるようになる。しかしながら、以下の好ましい実施形態では、１個の生体データ集合が暗号化されると仮定する。
【００１８】
更に、クライアントデバイスは、第１認証トークンを、例えば１つ以上の生成される乱数に基づいて生成し、当該トークンは、現在登録されている生体データを置換することになる撮影生体データに関連付けられ、高信頼性サーバにより認証されるように構成される。例えば、プライベート鍵と公開鍵ペアが使用される場合、第１認証トークンに対して、第１クライアントデバイスのプライベート鍵で署名することができる（この場合、対応する公開鍵が高信頼性サーバに供給される）。
【００１９】
第１認証トークンは、更新暗号化生体データ集合の要求が行なわれると、第２クライアントデバイスと高信頼性サーバとの間で共有されることになる秘密鍵を取り込んで使用することにより第２クライアントデバイスを認証するように構成される。
【００２０】
予め登録されていた暗号化生体データを置換することになる暗号化生体データ、及び第１認証トークンを高信頼性サーバに対して、機密性及び完全性の観点から保護されるセキュア通信チャネルを経由して提示する。
【００２１】
暗号化生体データ及び第１認証トークンを受信すると、高信頼性サーバは第１認証トークンを、例えば前に説明した第１クライアントデバイスの公開鍵を使用して第１クライアントデバイスにより第１認証トークンに対して行なわれるデジタル署名を検証することにより認証する。認証に失敗する場合、プロセスを終了し、生体データ更新は、高信頼性サーバ３００により行なわれない。
【００２２】
認証に成功すると、高信頼性サーバは、高信頼性サーバに位置する鍵格納部、又は高信頼性サーバから遠く離れたセキュア鍵格納部に格納されている予め登録されていた暗号化生体データを、新規暗号化生体データで置換する。更に、更新暗号化生体データに関連する第１認証トークンの新規共有秘密鍵を鍵格納部に格納する。
【００２３】
しかしながら、置換される暗号化生体データに関連する予め格納されていた共有秘密鍵は、更新暗号化生体データを要求する第２クライアントデバイスが認証されることにより第２クライアントデバイスに更新暗号化生体データ及び更新暗号化生体データに関連する新規共有秘密鍵が供給されるまで、ストレージに保持される必要があることに留意されたい。
【００２４】
有利な点として、暗号化エンドユーザ生体データを当該ユーザに代わって、元のテンプレートに直接アクセスする必要を伴うことなく格納する高信頼性サーバを使用するセキュア生体データ転送方法及び形態が提供される。更に別の利点は、本発明により、生体データの効率的かつセキュアな更新が容易になることである。
【００２５】
１つの実施形態では、高信頼性サーバは更に、ユーザの予め登録されていた暗号化生体データを置換している更新暗号化生体データを受信する旨の要求を、当該要求に、予め登録されていた暗号化生体データに関連する第２認証トークンを取り込むようにして第２クライアントデバイスからセキュア通信チャネルを経由して受信し、受信した第２認証トークンを認証するように構成される。高信頼性サーバは更に、更新暗号化生体データ、第２クライアントデバイスと共有されることになる秘密鍵、及び置換されている暗号化生体データに関連する共有秘密鍵を鍵格納部から取得し、認証チャレンジを第２クライアントデバイスに対して提示し、置換されている暗号化生体データに関連する共有秘密鍵、及び認証チャレンジに基づく認証応答を受信し、認証応答が正しく計算されていることを検証し、認証応答が正しく計算されている場合に、更新暗号化生体データ及び共有されることになる秘密鍵を第２クライアントデバイスに対して提示するように構成される。
【００２６】
次に、第２クライアントデバイスが、ユーザの更新暗号化生体データを取得しようとする場合、第２クライアントデバイスはそれに応じて要求を高信頼性サーバに対してセキュア通信チャネルを経由して、当該要求に、予め登録されていた暗号化生体データに関連する第２認証トークンを取り込むようにして提示する。
【００２７】
高信頼性サーバは、第２認証トークンを、例えば第１クライアントデバイスにより使用される公開鍵に対応する高信頼性サーバのプライベート鍵を使用して認証する−第１クライアントデバイスは、第２認証トークンを最初に生成したデバイスである。
【００２８】
認証に成功すると、高信頼性サーバは、鍵格納部から、更新暗号化生体データをフェッチし、更には、現在更新されている予め登録されていた暗号化生体データと一緒に格納されていた共有秘密鍵をフェッチする。
【００２９】
更に、高信頼性サーバは、第１認証トークンに含まれていた新規秘密鍵をフェッチし、当該新規秘密鍵は、第２クライアントデバイスが、将来更新される更に別の暗号化生体データ集合を要求すると、第２クライアントデバイスと高信頼性サーバとの間で共有されて第２クライアントデバイスを認証する必要がある。
【００３０】
旧共有秘密鍵は、第２クライアントデバイスが予め登録されていた暗号化生体データを取得すると、第２クライアントデバイスにより高信頼性サーバから、より早い段階で受信されている。
【００３１】
高信頼性サーバが認証チャレンジを第２クライアントデバイス６００に対して提示すると直ぐに、第２クライアントデバイスは、予め取得されていた共有秘密鍵を、受信した認証チャレンジと組み合わせて使用して認証応答を計算し、当該認証応答を高信頼性サーバに送信する。
【００３２】
高信頼性サーバが、認証応答が正しく計算されていることを、鍵格納部から取得される「旧」共有秘密鍵、及び認証チャレンジｒに基づいて検証する場合、高信頼性サーバは、更新暗号化生体データを第２クライアントデバイスに対して、第１認証トークンに含まれていた新規共有秘密鍵と一緒に提示し、新規共有秘密鍵は、第２クライアントデバイスが更に別の更新暗号化生体データ集合を高信頼性サーバに対して要求する次の機会に使用されることになる。
【００３３】
このようなことから、予め登録されていた暗号化生体データに関連する旧共有秘密鍵は、鍵格納部にこれ以上格納される必要がない。
【００３４】
最後に、１つの実施形態では、第２クライアントデバイスは更新暗号化生体データを、第１クライアントデバイスが最初に使用して生体データを暗号化した、予め生成されていた秘密鍵を使用して復号することにより、更新暗号化生体データを平文で取得する。
【００３５】
この実施形態では、秘密鍵は、サードパーティサーバで第２クライアントデバイスのユーザが認証されることになる当該サードパーティサーバから受信される。サードパーティサーバに今度は、当該鍵を第１クライアントデバイスからセキュアチャネルを経由して受信させる。
【００３６】
更に別の実施形態では、ユーザの平文の更新生体データは、第２クライアントデバイスの位置で、揮発性又は不揮発性保護メモリにセキュアに格納されて引き続き使用されることにより、サードパーティサーバが提供するサービスに対して第２クライアントデバイスを介してユーザにアクセス許可が付与される必要がある当該ユーザを認証する。
【００３７】
本発明の更に別の実施形態が詳細な説明において記載されることになる。
【００３８】
概して、特許請求の範囲に使用される全ての用語は、本明細書で他に明確に定義されていない限り、この技術分野におけるこれらの用語の普通の意味に従って解釈されるべきである。「ａ／ａｎ／ｔｈｅ  ｅｌｅｍｅｎｔ，ａｐｐａｒａｔｕｓ，ｃｏｍｐｏｎｅｎｔ，ｍｅａｎｓ，ｓｔｅｐ，ｅｔｃ．（１つの／ある／当該要素、装置、構成要素、手段、ステップなど）」を指す全ての用語は、他に明示的に述べられていない限り、要素、装置、構成要素、手段、ステップなどの少なくとも１つの例を指すものとして広義に解釈されるべきである。本明細書において開示される任意の方法のステップは、明示的に述べられていない限り、開示される厳密な順序で行なわれる必要はない。
【図面の簡単な説明】
【００３９】
本発明は、次に例を通して添付の図面を参照して説明される。
【図１】本発明を実現することができるスマートフォンの形態のクライアントデバイスを示している。
【図２】ユーザがユーザの指を載せる指紋センサの図を示している。
【図３】１つの実施形態による指紋検出システムの一部である指紋センサを示している。
【図４】第１クライアントデバイスにより撮影されていて高信頼性ネットワークノードの位置で登録されているユーザの暗号化生体データを更新し、更新暗号化生体データを第２クライアントデバイスに対して要求する本発明の１つの実施形態を示している。
【図５】暗号化生体データを高信頼性ネットワークノードに最初に登録する本発明の１つの実施形態を示している。
【図６】クライアントデバイスに対して、高信頼性ネットワークノードに格納されている暗号化生体データを最初に要求する本発明の１つの実施形態を示している。
【図７】第１クライアントデバイスにより撮影されていて高信頼性ネットワークノードの位置で登録されているユーザの暗号化生体データを更新する本発明の更に別の実施形態を示している。
【図８】第２クライアントデバイスに対して、高信頼性ネットワークノードの位置で保持されている更新暗号化生体データを要求する本発明の更に別の実施形態を示している。
【発明を実施するための形態】
【００４０】
次に、本発明について、本発明の特定の実施形態が示されている添付の図面を参照しながら以下に更に完全に説明することとする。しかしながら、本発明は、多くの異なる形態で具体化することができ、本明細書において開示される実施形態に限定されると解釈されてはならず、これらの実施形態は、本開示が網羅的かつ完全であり、本発明の範囲を当業者に全て伝えるように例を通して提供される。同様の参照番号は、同様の構成要素を、説明全体を通じて指している。
【００４１】
図１は、本発明を実現することができるスマートフォンの形態のクライアントデバイス１００を示している。スマートフォン１００には、指紋センサ１０２と、タッチスクリーンインターフェース１０６を備えるディスプレイユニット１０４と、が設けられる。指紋センサ１０２は、例えば携帯電話１００をアンロックする、及び／又は携帯電話１００を使用して行なわれるトランザクションを認証するなどのために使用することができる。指紋センサ１０２は、別の構成として、携帯電話１００の裏面に配置することができる。指紋センサ１０２は、ディスプレイユニット／タッチスクリーン内に一体的に設けることができる、又はスマートフォンホームボタンの一部を形成することができることに留意されたい。
【００４２】
本発明の実施形態による指紋センサ１０２は、ラップトップ、リモートコントロール、タブレット、スマートカードなどのような他の種類の電子デバイス内に実装するか、又は指紋検出を利用する任意の他の種類の現在同様に構成される、又は将来同様に構成されるデバイス内に実装することができる。
【００４３】
図２は、ユーザが当該ユーザの指２０１を載せる指紋センサ１０２の幾分大きくした拡大図を示している。静電容量検出技術を用いる場合、指紋センサ１０２は、複数の検出素子を備えるように構成される。１個の検出素子（画素とも表記される）が図２に、参照番号２０２が付されて図示されている。
【００４４】
図３は、指紋検出システム１０１の一部である指紋センサ１０２を示している。指紋検出システム１０１は、指紋センサ１０２と、指紋センサ１０２を制御し、撮影した指紋を分析するマイクロプロセッサのような処理ユニット１０３と、を備える。指紋検出システム１０１は更に、メモリ１０５を備える。指紋検出システム１０１が今度は通常、図１に例示される電子デバイス１００の一部を形成する。ワンタイムプログラマブル（ＯＴＰ）メモリ、フラッシュメモリ、又はランダムアクセスメモリ（ＲＡＭ）のようなローカルメモリ１０８は、センサチップに埋め込むことができる。
【００４５】
次に、被写体が指紋センサ１０２に触れると、センサ１０２が、被写体の画像を撮影して処理ユニット１０３に、被写体が許可ユーザの指紋であるかどうかを、撮影した指紋を、メモリ１０５に予め格納されている１つ以上の許可指紋テンプレートと比較することにより判断させる。
【００４６】
指紋センサ１０２は、例えば静電容量検出技術、光検出技術、超音波検出技術、又は熱検出技術を含む任意の種類の現在又は将来の指紋検出原理を使用して実現することができる。現在、静電容量検出が、特にサイズ及び電力消費が重要である用途において最も広く使用されている。静電容量指紋センサは、幾つかの検出素子２０２と、指紋センサ１０２の表面に載せる指２０１との間の静電容量（図２参照）の指標を提供する。指紋画像の取得は通常、２次元に配列される複数の検出素子２０２を備える指紋センサ１０２を使用して行なわれる。
【００４７】
普通の認証プロセスでは、ユーザが当該ユーザの指２０１をセンサ１０２に載せて、当該センサでユーザの指紋の画像を撮影する。処理ユニット１０３は、撮影した指紋を評価し、当該指紋をメモリ１０５に格納されている１つ以上の指紋認証テンプレートと比較する。記録した指紋が、予め格納されているテンプレートと一致する場合、ユーザは認証され、処理ユニット１０３は通常、スマートフォン１００に指示して、適切な処理を行なわせ、例えばロックモードからアンロックモードに移行させ、ユーザに許可してスマートフォン１００にアクセスさせることができる。
【００４８】
図３を再度参照すると、指紋検出システム１０１により行なわれる方法のステップ（センサ１０２により行なわれる画像の撮影とは別に）は、実際には、ランダムアクセスメモリ（ＲＡＭ）、フラッシュメモリ、又はハードディスクドライブのような、マイクロプロセッサに関連する記憶媒体１０５にダウンロードされるコンピュータプログラム１０７を実行するように配置される１つ以上のマイクロプロセッサの形態で具体化される処理ユニット１０３により行なわれる。処理ユニット１０３は、指紋検出システム１０１が実施形態による方法を、コンピュータ実行可能命令を含む適切なコンピュータプログラム１０７が記憶媒体１０５にダウンロードされて、処理ユニット１０３により実行される場合に実行するように配置される。記憶媒体１０５は、コンピュータプログラム１０７を含むコンピュータプログラム製品とすることもできる。別の構成として、コンピュータプログラム１０７は記憶媒体１０５に、デジタル多用途ディスク（ＤＶＤ）又はメモリスティックのような適切なコンピュータプログラム製品を利用して転送することができる。更に別の構成として、コンピュータプログラム１０７を記憶媒体１０５にネットワーク経由でダウンロードすることができる。処理ユニット１０３は、別の構成として、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、複合プログラマブルロジックデバイス（ＣＰＬＤ）などの形態で具体化することができる。更に、処理ユニット１０３を利用して提供される機能の全部又は幾つかの部分は、指紋センサ１０２に少なくとも部分的に組み込むことができることを理解されたい。
【００４９】
他の生体センサ１０２を使用して、例えば瞳センサ、網膜センサ、顔認識センサなどを使用してユーザの生体データを生成することができることに留意されたい。
【００５０】
図４は、ユーザ２００の暗号化生体データを更新する本発明の１つの実施形態を示しており、当該生体データは、第１クライアントデバイス１００により予め撮影されており、この場合は高信頼性サーバ３００で具体化される高信頼性ネットワークノード３００の位置で登録されている。
【００５１】
図４を参照して記述される実施形態は、更新されることになる暗号化生体データが既に、高信頼性ネットワークノード３００の位置で、十分かつセキュアなプロセスを使用して登録されていると仮定していることに留意されたい。図４の実施形態に関する記述は、暗号化生体データが高信頼性ノード３００に予め登録された過程のプロセスを説明していない。
【００５２】
しかしながら、完全性を期して、このようなプロセスの例が引き続き、図５及び図６を参照して記述される。
【００５３】
第１ステップＳ１０１では、第１クライアントデバイス１００が、ユーザ２００の生体データＴ＊を、例えば図１〜図３を参照して説明される指紋検出システム１０１を利用することにより撮影する。
【００５４】
既に登録されていた生体データ（Ｔと表記される）を置換することになる撮影生体データＴ＊は、ここでは、既に登録されていた生体データＴよりも品質が高いと仮定する。
【００５５】
その後、ステップＳ１０２では、第１クライアントデバイス１００が、撮影生体データＴ＊を、予め生成されていた秘密鍵Ｋ１であって、暗号化生体データＥ（Ｔ）を高信頼性サーバ３００の位置で登録するプロセスに使用された秘密鍵Ｋ１を使用して暗号化することにより、暗号化生体データＥ（Ｔ＊）が得られる。
【００５６】
複数の秘密鍵Ｋｉが予め生成されていて、第１クライアントデバイス１００が対応する数の複製撮影生体データ集合Ｔ＊を生成することによりｉ個の更新暗号化生体データ集合Ｅ（Ｔ＊）を高信頼性サーバ３００の位置で、既に格納されている暗号化生体データＥ（Ｔ）の置換が行なわれると格納して、対応する数の第２クライアントデバイス６００がユーザ２００の更新生体データを取得することができるようになることに留意されたい。しかしながら、以下の好ましい実施形態では、１個の生体データ集合Ｔ＊が暗号化されると仮定する。
【００５７】
更に、クライアントデバイス１００が、第１認証トークンＲ１をステップＳ１０３において、例えば１つ以上の生成される乱数に基づいて生成し、当該トークンＲ１は、撮影生体データＴ＊に関連付けられ、撮影生体データＴ＊は、現在登録されている生体データを置換することになり、かつ高信頼性ネットワークノード３００により認証されるように構成される。例えば、第１認証トークンＲ１は、第１クライアントデバイス１００及び高信頼性サーバ３００の両方により保持される対称鍵で、又はプライベート鍵と公開鍵ペアが使用される場合の第１クライアントデバイス１００のプライベート鍵で暗号化することができる。
【００５８】
第１認証トークンＲ１は、第２クライアントデバイス６００と高信頼性サーバ３００との間で共有されることになる秘密鍵ｎ＊を含むように構成され、秘密鍵ｎ＊を使用して第２クライアントデバイス６００を、更新暗号化生体データＥ（Ｔ＊）の要求が行なわれると認証する。
【００５９】
プライベート鍵と公開鍵ペアが使用される場合、第１クライアントデバイス１００の公開鍵ＰｋＣは、予め登録されていた暗号化生体データが次に更新されることになると、１つ以上の生成共有秘密鍵と一緒に高信頼性サーバ３００に対して予め提示されていたことになる。第１クライアントデバイス１００の公開鍵ＰｋＣを高信頼性サーバ３００が引き続き使用して、第１クライアントデバイス１００により第１認証トークンＲ１に対して行なわれるデジタル署名を、当該公開鍵に対応するプライベート鍵ＰｒＣを使用して検証する。
【００６０】
ステップＳ１０４では、暗号化生体データＥ（Ｔ＊）及び第１認証トークンＲ１を高信頼性サーバ３００に対して、セキュア通信チャネル、すなわち機密性及び完全性の観点から保護される通信チャネルを経由して提示する。
【００６１】
暗号化生体データＥ（Ｔ＊）及び第１認証トークンＲ１をステップＳ１０４において受信すると、高信頼性サーバ３００は、第１認証トークンをステップＳ１０５において、例えば第１クライアントデバイス１００の予め受信していた公開鍵ＰｋＣを使用して認証することにより、第１クライアントデバイス１００により第１認証トークンＲ１に対して行なわれるデジタル署名を検証する。認証に失敗した場合、プロセスは終了し、生体データ更新は、高信頼性サーバ３００により行なわれない。
【００６２】
ステップＳ１０５で認証に成功すると、高信頼性サーバ３００はステップＳ１０６において、高信頼性サーバ３００に位置する、又は高信頼性サーバ３００から遠く離れたセキュア鍵格納部４００に格納されている予め登録されていた暗号化生体データＥ（Ｔ＊）を新規暗号化生体データＥ（Ｔ＊）で置換する。更に、更新暗号化生体データＥ（Ｔ＊）に関連する第１認証トークンＲ１の新規共有秘密鍵ｎ＊が鍵格納部４００に格納される。
【００６３】
しかしながら、更新暗号化生体データＥ（Ｔ＊）を要求する第２クライアントデバイス６００が認証されることにより第２クライアントデバイス６００に、更新暗号化生体データＥ（Ｔ＊）及び更新暗号化生体データＥ（Ｔ＊）に関連する新規共有秘密鍵ｎ＊が供給されるまで、置換対象の暗号化生体データＥ（Ｔ）に関連する予め格納されていた共有秘密鍵ｎがストレージに保持される必要があることに留意されたい。
【００６４】
その後、高信頼性サーバ３００は任意であるが、暗号化生体データの更新に成功していることを確認する旨のメッセージを第１クライアントデバイス１００に対してステップＳ１０７において提示することができる。別の構成として、第１クライアントデバイス１００は任意であるが、ステップＳ１０７において、暗号化生体データの更新に高信頼性サーバ３００の位置で成功したことをチェックすることができる。
【００６５】
次に、第２クライアントデバイス６００が、ユーザ２００の更新暗号化生体データＥ（Ｔ＊）を取得しようとする場合、第２クライアントデバイス６００は、それに応じて、予め登録されていた暗号化生体データＥ（Ｔ）に関連する第２認証トークンＲ２を含む要求を高信頼性サーバ３００に対してステップＳ１０８においてセキュア通信チャネルを経由して提示する。
【００６６】
高信頼性サーバ３００は第２認証トークンＲ２をステップＳ１０９において、例えば第１クライアントデバイス１００と共有される対称鍵、又は第１クライアントデバイス１００により使用される公開鍵に対応する高信頼性サーバ３００のプライベート鍵を使用して認証する−第１クライアントデバイス１００は、第２認証トークンＲ２を最初に生成したデバイスである。引き続き更に詳細に説明されるように、プライベート鍵と公開鍵ペアが使用される場合、高信頼性サーバ３００の公開鍵及び第１クライアントデバイス１００のプライベート鍵の両方を使用してそれぞれ、第２認証トークンＲ２を暗号化して、第２認証トークンＲ２に対して署名を行なう。
【００６７】
認証に成功すると、高信頼性サーバ３００は、鍵格納部４００から、更新暗号化生体データＥ（Ｔ＊）をステップＳ１１０においてフェッチし、更には、現在更新されている予め登録されていた暗号化生体データＥ（Ｔ）と一緒に格納された共有秘密鍵ｎをフェッチする。
【００６８】
更に、高信頼性サーバは、第１認証トークンＲ１に含まれていた新規秘密鍵ｎ＊をフェッチし、当該新規秘密鍵は、第２クライアントデバイス６００が将来更新される更に別の暗号化生体データ集合を要求すると、第２クライアントデバイス６００と高信頼性サーバ３００との間で共有されて第２クライアントデバイス６００を認証する必要がある。
【００６９】
旧共有秘密鍵ｎは、第２クライアントデバイス６００が、予め登録されていた暗号化生体データＥ（Ｔ）を取得すると、第２クライアントデバイス６００により高信頼性サーバ３００から、より早い段階で受信されている。
【００７０】
ステップＳ１１１では、高信頼性サーバ３００が、認証チャレンジｒを第２クライアントデバイス６００に対して提示する。
【００７１】
次に、第２クライアントデバイス６００が、予め取得されていた共有秘密鍵ｎを受信した認証チャレンジｒと組み合わせて使用して、認証応答ＡをステップＳ１１２において計算し、認証応答Ａを高信頼性サーバ３００に送信する。
【００７２】
高信頼性サーバ３００がステップＳ１１３において、認証応答Ａが正しく計算されていることを、鍵格納部４００からステップＳ１１０で取得される旧共有秘密鍵ｎ、及び認証チャレンジｒに基づいて検証する場合、高信頼性サーバ３００は、更新暗号化生体データＥ（Ｔ＊）を第２クライアントデバイス６００に対してステップＳ１１４において、第１認証トークンＲ１に含まれていた新規共有秘密鍵ｎ＊と一緒に提示し、新規共有秘密鍵ｎ＊は、第２クライアントデバイス６００が更に別の更新暗号化生体データ集合を高信頼性サーバ３００に対して要求する次の機会に使用されることになる。
【００７３】
このようなことから、予め登録されていた暗号化生体データに関連する共有秘密鍵ｎは、鍵格納部にこれ以上格納されている必要がない。
【００７４】
最後に、第２クライアントデバイス６００は、更新暗号化生体データＥ（Ｔ＊）を、予め生成されていた秘密鍵Ｋ１を使用して復号して−秘密鍵Ｋ１を第１クライアントデバイス１００が最初に使用して生体データを暗号化していた−更新生体データＴ＊を平文で取得することができる。
【００７５】
図４に示すように、秘密鍵Ｋ１をステップＳ１１５において、サードパーティサーバ５００から受信し、このサードパーティサーバ５００で、第２クライアントデバイスのユーザ２００が認証されることになる。サードパーティサーバ５００に今度は、鍵Ｋ１を第１クライアントデバイス３００から受信させる。
【００７６】
ユーザ２００の平文の更新生体データＴ＊は通常、第２クライアントデバイス６００の位置で揮発性又は不揮発性保護メモリにセキュアに格納され、引き続き使用されてサードパーティサーバ５００が提供するサービスに対して第２クライアントデバイス６００を介してユーザにアクセス許可が付与される必要がある当該ユーザ２００を認証する。
【００７７】
例えば、ユーザ２００が、サードパーティサーバ５００が提供する電子商取引サービスのようなサービスに加入し、当該サービスで、ユーザ２００がユーザ自身を、個人識別番号（ＰＩＮ）ではなく指紋データを使用して認証することにより、電子商取引サービスを介して購入する商品の支払いを行なうと仮定する。記載の実施形態により、ユーザ２００の認証を第２クライアントデバイス６００の位置で行えて、サードパーティサーバ５００が提供する電子商取引サービスにアクセスすることができるので有利である。
【００７８】
別の例では、サードパーティサーバ５００は、レンタカー会社のようなサービスプロバイダに属し、第２クライアントデバイス６００は、指紋リーダを備える乗用車の鍵デバイスの形態で具体化することができる。この用途に使用される場合、本発明により、レンタカー会社は、当該会社の顧客を完全にオンラインで処理することができ、乗用車の鍵を顧客が安全ではない場所（就業時間外及び遠く離れた場所）でも、乗用車が盗まれる危険が高くなることなく利用可能になるが、その理由は、乗用車の鍵は、特定の乗用車を実際に注文して支払いを行なったユーザだけが作動させることができるからである。ユーザの生体データ−生体データがレンタカー会社に転送される場合でも−を、セキュアであると仮定することができる乗用車の鍵デバイスの外部にあるレンタカー会社が決して利用可能になることがないことが保証されるので、ユーザは当該システムを信頼することができる（更には、当該システムの信頼性は、復号鍵をユーザの１つの暗号化生体データを復号する必要がある乗用車の鍵デバイスに転送する前に、システムの高信頼性サーバ３００により明示的に検証することができる）。
【００７９】
図４を更に参照するに、高信頼性サーバ３００により行なわれる方法のステップは、実際には、ランダムアクセスメモリ（ＲＡＭ）、フラッシュメモリ、又はハードディスクドライブのような、マイクロプロセッサに関連する記憶媒体３０３にダウンロードされるコンピュータプログラム３０２を実行するように配置される１つ以上のマイクロプロセッサの形態で具体化される処理ユニット３０１により行なわれる。処理ユニット３０１は、高信頼性サーバ３００が実施形態による方法を、コンピュータ実行可能命令を含む適切なコンピュータプログラム３０２が記憶媒体３０３にダウンロードされて、処理ユニット３０１により実行されると実行するように配置される。記憶媒体３０３は、コンピュータプログラム３０２を含むコンピュータプログラム製品とすることもできる。別の構成として、コンピュータプログラム３０２は記憶媒体３０３に、デジタル多用途ディスク（ＤＶＤ）又はメモリスティックのような適切なコンピュータプログラム製品を利用して転送することができる。更に別の構成として、コンピュータプログラム３０２は記憶媒体３０３にネットワーク経由でダウンロードすることができる。処理ユニット３０１は、別の構成として、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、複合プログラマブルロジックデバイス（ＣＰＬＤ）などの形態で具体化することができる。
【００８０】
前に述べたように、図４に示す暗号化生体データの更新は、暗号化生体データＥ（Ｔ）が最初に、高信頼性サーバ３００の位置で登録されていることを仮定している。
【００８１】
図５は、暗号化生体データを高信頼性サーバ３００の位置で登録するこのようなプロセスの例を記述している。
【００８２】
ステップＳ２０１では、第１クライアントデバイス１００がユーザ２００の生体データＴを撮影する。
【００８３】
ステップＳ２０２では、第１クライアントデバイス１００が、少なくとも１つの生体データ保護秘密鍵Ｋ１を生成し、引き続き使用して、第１クライアントデバイス１００により撮影されるユーザ２００の生体データを暗号化する。
【００８４】
秘密鍵Ｋ１を第２クライアントデバイス６００が引き続き取得してユーザ２００の暗号化生体データを復号する。このようなことから、複数の秘密鍵をステップＳ１０１において、第１クライアントデバイス１００が生成して、対応する数の第２クライアントデバイスがユーザ２００の暗号化生体データを復号できるようにする。
【００８５】
この特定の好ましい実施形態では、一連のｎ個のワンタイム生体データ保護秘密鍵：ｋ０，ｋ１，．．．，ｋｎ−１を、例えば乱数発生装置（ＲＮＧ）を使用して生成する。これらの鍵はまた、第１クライアントデバイス１００により、適切なセキュア不揮発性メモリに、任意のステータス情報と一緒に格納される。
【００８６】
ステップＳ２０３では、第１クライアントデバイス１００が、一連のｎ個のワンタイムランダムナンス：ｎ０，ｎ１，．．．，ｎｎ−１を、この場合も同じくＲＮＧを使用して生成する。前に説明したように、これらのナンス（一度だけ使用されるランダムな数値）は引き続き、高信頼性サーバ３００と第２クライアントデバイス（群）６００との間で共有される秘密鍵として使用されて第２クライアントデバイス６００を高信頼性サーバ３００の位置で認証して、高信頼性サーバ３００に登録されている更新暗号化生体データを受信する。
【００８７】
ステップＳ２０４では、第１クライアントデバイス１００が生成鍵を使用して、ｎ個の暗号化生体データ集合：Ｅ（Ｔ）０，Ｅ（Ｔ）１，．．．，Ｅ（Ｔ）ｎ−１を生成する。
【００８８】
本発明は、いずれの特定のワンタイム暗号化方法にも限定されないが、１つの実施形態によれば、暗号化は、簡単なモジュロ加算：Ｅ（Ｔ）ｉ＝Ｔ＋ＰＲＦ（ｎｉ，ｋｉ）  ｍｏｄ  ｐとして選択され、式中、ｐは、テンプレートＴのサイズを表わす整数であり、ＰＲＦは、適切な疑似ランダム関数、すなわち電子コードブック形式で実行されるブロック暗号である。別の構成によれば、暗号化は、ワンタイムパッドモジュロ２加算：
【数１】
2020511077.tif 000003
として行なわれる。
【００８９】
ステップＳ２０５では、第１クライアントデバイス１００が、一連の生成ワンタイムランダムナンス｛ｎ０，ｎ１，．．．，ｎｎ−１｝及び暗号化生体データ｛Ｅ（Ｔ）０，Ｅ（Ｔ）１，．．．，Ｅ（Ｔ）ｎ−１｝を高信頼性サーバ３００にセキュア通信チャネルを経由して送信する。
【００９０】
プライベート鍵と公開鍵ペアが使用される場合、第１クライアントデバイス１００の公開鍵ＰｋＣを更に提示する。第１クライアントデバイス１００の公開鍵ＰｋＣは引き続き、高信頼性サーバ３００により使用されて、第１クライアントデバイス１００により行なわれるデジタル署名を、当該デジタル署名の対応するプライベート鍵を使用して検証する。
【００９１】
ナンス｛ｎ０，ｎ１，．．．，ｎｎ−１｝及び暗号化生体データ｛Ｅ（Ｔ）０，Ｅ（Ｔ）１，．．．，Ｅ（Ｔ）ｎ−１｝を受信すると、高信頼性サーバ３００は、当該データを固有識別子ｖにステップＳ２０６において関連付けて、ステップＳ２０７において、受信したナンス及び暗号化生体データ集合を、識別子ｖが付された第１クライアントデバイス１００の公開鍵ＰｋＣと一緒に、セキュア鍵格納部４００に、場合によっては、任意の適切なユーザデータ又はクライアントデバイスデータと一緒に格納する。
【００９２】
最後に、ステップＳ２０８では、高信頼性サーバが識別子ｖを第１クライアントデバイス１００に対して、高信頼性サーバ３００の公開鍵ＰｋＴＳと一緒に提示する。高信頼性サーバ３００の公開鍵ＰｋＴＳを第１クライアントデバイス１００が使用して、高信頼性サーバ３００が引き続き復号することができる暗号化認証トークンを生成する（すなわち、図４を参照して前に説明した第２認証トークンＲ２）。
【００９３】
以下に説明されるように、一旦、第１クライアントデバイス１００が、ユーザ２００の保護生体データをサードパーティドメインと共有すると判断すると、識別子ｖ及び公開鍵ＰｋＴＳは、第１クライアントデバイス１００によりセキュア内部メモリに格納されて引き続き使用されることになる。
【００９４】
図６は、第２クライアントデバイス６００に−登録暗号化生体データを高信頼性サーバ３００に対して要求させて−受信させるプロセスの例を記述している。
【００９５】
ステップＳ３０１では、第１クライアントデバイス１００が、高信頼性サーバ３００に予め登録されていた（予め使用されなかった）暗号化生体データ集合｛Ｅ（Ｔ）０，Ｅ（Ｔ）１，．．．，Ｅ（Ｔ）ｎ−１｝のうち１つの暗号化生体データ集合を選択する−インデックスｉが付された隣の利用可能な集合が選択されると仮定する。
【００９６】
図４を参照して前に説明したように、第２認証トークンＲ２は第１クライアントデバイス１００により生成される。
【００９７】
この特定の例では、認証トークンＲ２は、ステップＳ３０２において、ＲＮＧを使用して適切な長さの更に別の乱数Ｎを生成することにより生成される。第２認証トークンを生成する複数の異なる手法を想到することができることに留意されたい。
【００９８】
その後、ステップＳ３０３では、クライアントデバイス１００が、予め受信されていた高信頼性サーバ３００の公開鍵ＰｋＴＳを使用して、高信頼性サーバ３００が、一連の生成暗号化生体データ集合に図５のステップＳ１０７において予め関連付けていたインデックスｉ及び識別子ｖと連結させた更に別の生成される乱数Ｎを暗号化する：ｅ＝Ｅ（ＰｋＴＳ，Ｎ｜｜ｉ｜｜ｖ）。このようなことから、Ｒ２を生成するために、乱数Ｎ、インデックスｉ、及び識別子ｖの組み合わせを含むデータ集合が高信頼性サーバ３００の公開鍵で暗号化される。
【００９９】
ステップＳ３０４では、第１クライアントデバイス１００が、第１クライアントデバイスのプライベート鍵ＰｒＣを使用してｅに対して署名を行なうことにより、選択ワンタイム暗号化秘密生体データＥ（Ｔ）ｉ：ＳＩＧ（Ｐｒｃ，ｅ）を指す署名入りの第２暗号化認証トークンを取得する。更に別のデータをこの署名に含めることができ、例えばサードパーティサーバ５００の固有ＩＤを含めることができる。
【０１００】
以下に説明されるように、認証トークンＲ２はこのように、ＳＩＧ（Ｐｒｃ，ｅ），ｅにより構成され、サードパーティサーバ５００に対してステップＳ３０５において、セキュア通信チャネルを経由して、鍵ｋｉと一緒に提示され、この鍵ｋｉで、この特定の暗号化生体データ集合Ｅ（Ｔ）ｉが最初に、第１クライアントデバイス１００により暗号化されることにより、ユーザ２００の認証を別のクライアントデバイス６００の位置で行えるので、サードパーティサーバ５００が提供するサービスにアクセスすることができる。
【０１０１】
サードパーティサーバ５００は、いずれの他のクライアントデバイスがユーザ２００を、生体データを利用して識別する必要がある可能性があるかを判断する。これらのクライアントデバイスに対して、サードパーティサーバ５００は、第２認証トークンＲ２：ｅ，  ＳＩＧ（Ｐｒｃ，ｅ）をステップＳ３０６において、好ましくはセキュアチャネルを経由して送信する。
【０１０２】
これらの「他のクライアントデバイス（ｏｔｈｅｒ  ｃｌｉｅｎｔ  ｄｅｖｉｃｅｓ）」は、簡単のため、第２クライアントデバイス６００で例示されている。しかしながら、図５のステップＳ２０１に示したように、「他のデバイス（ｏｔｈｅｒ  ｄｅｖｉｃｅｓ）」の数が、高信頼性サーバ３００に登録される暗号化生体データ集合｛Ｅ（Ｔ）０，Ｅ（Ｔ）１，．．．，Ｅ（Ｔ）ｎ−１｝の数に一致する構成を想到することができる。
【０１０３】
第２クライアントデバイス６００は、高信頼性サーバ３００とのセキュアチャネルを確立する。
【０１０４】
任意であるが、第２クライアントデバイス６００からの要求を処理して暗号化生体データ集合を獲得する前には必ず、高信頼性サーバ３００は、１回以上のセキュリティチェックをステップＳ３０７において行なって、第２クライアントデバイス６００のセキュリティ状態、及び任意の機密データが処理される第２クライアントデバイス６００のセキュア実行環境を検証する。このようなことから、高信頼性サーバ３００は、ステップＳ３０７において、第２クライアントデバイス６００が高信頼性デバイス集合体に属しているかどうかをチェックする。本発明は、いずれの特定の種類のセキュリティチェックにも限定されず、これらのセキュリティチェックは、例えば高信頼性コンピューティング技術を使用してクライアントデバイス６００の生体センサ上で実現されるセキュア実行環境の完全性検証を含むことができ、高信頼性コンピューティング技術は、生体センサが、生体センサの高信頼性状態の高信頼性プラットフォームモジュール（ＴＰＭ）サポート又は検証を、セキュアチャネル確立などに使用される生体センサの証明書に基づいて受けると仮定する。
【０１０５】
その後、ステップＳ３０８では、第２クライアントデバイス６００が第２認証トークンＲ２、すなわちｅ，ＳＩＧ（Ｐｒｃ，ｅ）を高信頼性サーバ３００に対して提示する。
【０１０６】
ｅ及びＳＩＧ（Ｐｒｃ，ｅ）を受信すると、高信頼性サーバ３００は、当該サーバのプライベート鍵ＰｒＴＳを使用して、Ｄ（ＰｒＴＳ，ｅ）＝Ｎ｜｜ｉ｜｜ｖで表わされるｅをステップＳ３０９において復号することにより第２認証トークンＲ２を認証する。
【０１０７】
次に、ステップＳ３０９で復号に成功した場合、第２クライアントデバイス６００は高信頼性デバイスであると考えられ、高信頼性サーバ３００は、任意であるが、ステップＳ３１０において、更に別の乱数Ｎがこれまで、識別子ｖと一緒に使用されていなかったことを検証することができる（例えば、ナンス値が使用済みになっている状態の内部インデックスキャッシュメモリを保持することにより）。乱数Ｎがこれまで、使用されていた場合、手順を、エラーメッセージを第２クライアントデバイス６００に出して中断する。
【０１０８】
しかしながら、ここで、更に別の乱数Ｎが予め使用されていなかったと仮定し、第２認証トークンＲ２に対して第１クライアントデバイス１００の位置でデジタル署名が行なわれた（当該第１クライアントデバイスにおいて、当該デジタル署名がこの例では、行なわれた）場合に、高信頼性サーバ３００がステップＳ３１１において、鍵格納部４００の方に向きを変えて、選択インデックスｉ及び識別子ｖに関連する暗号化生体データＥ（Ｔ）ｉ及びナンスｎｉを、最初に暗号化生体データを高信頼性サーバ３００に登録した第１クライアントデバイス１００の公開鍵ＰｋＣと一緒に取得すると仮定する。
【０１０９】
したがって、ステップＳ３１２では、認証トークンＲ２を認証するプロセスを更に強化するために、高信頼性サーバ３００は、最初に暗号化生体データを高信頼性サーバ３００に登録した第１クライアントデバイス１００の公開鍵ＰｋＣを使用して第２認証トークンを、デジタル署名ＳＩＧ（Ｐｒｃ，ｅ）を検証することにより更に検証する。有利な点として、デジタル署名を検証することにより：
１）認証が行なわれる、すなわち署名入りのメッセージが既知の送信側で生成された、
２）否認防止が行なわれる、すなわち送信側は署名入りのメッセージを送信したことを否認することができない。
３）完全性が確保される、すなわち署名入りのメッセージが送信中に改ざんされなかった。
【０１１０】
検証に失敗したはずである場合、認証は通常、中断され、エラーメッセージがそれに応じて、第２クライアントデバイス６００に送信される。
【０１１１】
ステップＳ３１３では、高信頼性サーバ３００が暗号化生体データＥ（Ｔ）ｉ及びナンスｎｉを、セキュアチャネルを経由して第２クライアントデバイス６００に対して提示することにより、ナンスｎｉを、第２クライアントデバイス６００と高信頼性サーバ３００との間で共有される秘密鍵とすることができるので有利である。
【０１１２】
一旦、サードパーティサーバ５００が、いずれの第２クライアントデバイスに対して登録暗号化生体データへのアクセスを許可すべきかを判断する、又は正確に認識する（これは、ずっと遅い時期に行なわれる可能性がある）と、サードパーティサーバ５００は、ワンタイム生体データ保護鍵ｋｉを、セキュアチャネルを経由して第２クライアントデバイス６００に当該セキュアチャネルを経由してステップＳ３１４において送信する。
【０１１３】
ステップＳ３１５では、第２クライアントデバイス６００が、受信したワンタイム生体データテンプレート秘密鍵ｋｉ及び共有秘密鍵ｎｉを使用して、受信した暗号化テンプレートＥ（Ｔ）ｉを復号することにより生体データＴを平文で取得する。
【０１１４】
前に説明した係数暗号化方式が使用される場合、暗号化生体データは：Ｔ＝Ｅ（Ｔ）ｉ−ＰＲＦ（ｎｉ，ｋｉ）  ｍｏｄ  ｐの通りに復号される。
【０１１５】
この段階で、認証手順は、生体データＴを、第２クライアントデバイス６００の位置で撮影される生体データＴ’と比較することにより行なうことができる。しかしながら、この特定の例では、ユーザ２００の平文の生体データＴは、ステップＳ３１６において第２クライアントデバイス６００の位置で揮発性又は不揮発性保護メモリにセキュアに格納され、引き続き使用されてサードパーティサーバ５００が提供するサービスに対して第２クライアントデバイス６００を介してユーザにアクセス許可が付与される必要がある当該ユーザ２００を認証する。
【０１１６】
図７及び図８は、ユーザ２００の暗号化生体データを高信頼性サーバ３００の位置で更新して更新暗号化生体データを、図４を参照して前に説明した通りに要求する更に詳細な実施形態を示している。
【０１１７】
図７が、高信頼性サーバ３００に予め登録されていた生体データを第１クライアントデバイス１００に更新させるプロセスを示しているのに対し、図８は、更新生体データを高信頼性サーバに対して第２クライアントデバイス１００に要求させるプロセスを示している。
【０１１８】
図７を参照するに、第１ステップＳ１０１では、第１クライアントデバイス１００が、ユーザ２００の生体データＴ＊を、例えば図１〜図３を参照して説明した指紋検出システム１０１を利用することにより撮影する。この撮影生体データは、現在登録されている暗号化生体データ集合よりも品質が高いと考えられるので、この撮影生体データで高信頼性サーバ３００の位置で登録されている暗号化生体データを置換する必要がある。
【０１１９】
その後、図５のステップＳ２０３におけるのと同様に、第１クライアントデバイス１００が、一連のｎ個のワンタイムランダムナンス：ｎ０＊，ｎ１＊，．．．，ｎｎ−１＊をステップＳ１０１ａにおいて、ＲＮＧを使用して生成する。前に説明したように、これらのナンスは引き続き、高信頼性サーバ３００と第２クライアントデバイス（群）６００との間で共有される秘密鍵として使用されて、第２クライアントデバイス６００を高信頼性サーバ３００の位置で認証して、高信頼性サーバ３００に登録されている更新暗号化生体データを受信する。
【０１２０】
ここで、直前の登録暗号化生体データ集合に対応する共有秘密鍵が、第２クライアントデバイス６００の更新暗号化生体データ集合に関する要求を高信頼性サーバ３００の位置で認証する場合に使用されることに留意されたい。
【０１２１】
ステップＳ１０２では、第１クライアントデバイス１００が、予め生成されていた鍵ｋｉ及び任意であるが、ステップＳ１０１ａにおいて生成されるナンスｎｉ＊を使用して、ｎ個の暗号化生体データ集合：Ｅ（Ｔ＊）０，Ｅ（Ｔ＊）１，．．．，Ｅ（Ｔ＊）ｎ−１を生成する。
【０１２２】
本発明は、いずれの特定のワンタイム暗号化方法にも限定されないが、１つの実施形態によれば、暗号化は、簡単なモジュロ加算：Ｅ（Ｔ＊）ｉ＝Ｔ＊＋ＰＲＦ（ｎｉ＊，ｋｉ）  ｍｏｄ  ｐとして選択され、式中、ｐは、テンプレートＴのサイズを表わす整数であり、ＰＲＦは、適切な疑似ランダム関数、すなわち電子コードブック形式で実行されるブロック暗号であることに留意されたい。別の構成によれば、暗号化は、ワンタイムパッドモジュロ２加算：
【数２】
2020511077.tif 000004
の通りに行なわれる。
【０１２３】
その後、クライアントデバイス１００が、第１認証トークンＲ１をステップＳ１０３において、この特定の実施形態では、鍵更新メッセージｍをステップＳ１０３ａにおいて生成することにより生成し、鍵更新メッセージｍは、生成ナンス、暗号化生体データ集合、及び鍵格納部４００内で高信頼性サーバ３００により置換されることになる暗号化生体データ集合を指定する識別子ｖ：ｍ＝｛ｎ０＊，ｎ１＊，．．．，ｎｎ−１＊｝，｛Ｅ（Ｔ＊）０，Ｅ（Ｔ＊）１，．．．，Ｅ（Ｔ＊）ｎ−１｝，ｖを含む。
【０１２４】
更に、第１クライアントデバイス１００が、第１クライアントデバイスのプライベート鍵Ｐｒｃを使用してｍに対して署名を行なうことにより、署名入りの第１認証トークンを取得する。第１認証トークンＲ１はしたがって、ｍ，ＳＩＧ（Ｐｒｃ，ｍ）により構成される。
【０１２５】
ステップＳ１０４では、第１認証トークンＲ１＝ｍ，ＳＩＧ（Ｐｒｃ，ｍ）の関係があり、第１認証トークンＲ１は、この実施形態では、暗号化生体データＥ（Ｔ＊）を含み、実際には、複数の暗号化生体データ集合が高信頼性サーバ３００に対してセキュア通信チャネル；すなわち機密性及び完全性の観点から保護される通信チャネルを経由して提示される。
【０１２６】
第１認証トークンＲ１＝ｍ，ＳＩＧ（Ｐｒｃ，ｍ）を受信する場合、高信頼性サーバ３００は、識別子ｖを使用して、鍵格納部４００内の第１クライアントデバイス１００の公開鍵ＰｋＣを探索して、第１認証トークンＲ１をステップＳ１０５において検証する。
【０１２７】
第１認証トークンＲ１の検証に成功すると、高信頼性サーバ３００は、識別子ｖに対応して現在登録されている暗号化生体データ集合（群）を更新暗号化生体データ集合｛Ｅ（Ｔ＊）０，Ｅ（Ｔ＊）１，．．．，Ｅ（Ｔ＊）ｎ−１｝で置換し、対応するランダムナンス｛ｎ０＊，ｎ１＊，．．．，ｎｎ−１＊｝を格納し、当該ランダムナンスが引き続き、第２クライアントデバイス６００と高信頼性サーバ３００との間で共有される秘密鍵を構成することになる。
【０１２８】
しかしながら、予め格納されていた共有秘密鍵ｎｉであって、置換された暗号化生体データに関連する共有秘密鍵ｎｉは、更新暗号化生体データＥ（Ｔ＊）を要求する第２クライアントデバイス６００が認証されることにより第２クライアントデバイス６００に更新暗号化生体データＥ（Ｔ＊）が供給されるまでストレージに保持される必要があることに留意されたい。
【０１２９】
その後、高信頼性サーバは、暗号化生体データの更新に成功していることを確認する旨のメッセージを第１クライアントデバイス１００に対してステップＳ１０７において提示する。
【０１３０】
図８を参照するに、第１ステップＳ１０８では、第２クライアントデバイス６００がユーザ２００の更新暗号化生体データＥ（Ｔ＊）を取得しようとする場合、第２クライアントデバイス６００が、それに応じて、予め登録されていた暗号化生体データＥ（Ｔ）に関連する第２認証トークンＲ２を含む要求を高信頼性サーバ３００に対してセキュア通信チャネルを経由して提示する。
【０１３１】
任意であるが、１つの実施形態では、第２クライアントデバイス６００からの要求を処理して暗号化生体データ集合を獲得する前に、高信頼性サーバ３００は、１回以上のセキュリティチェックをステップＳ１０８ａにおいて行なって、第２クライアントデバイス６００のセキュリティ状態、及び任意の機密データが処理される第２クライアントデバイス６００のセキュア実行環境を検証する。このようなことから、高信頼性サーバ３００は、ステップＳ１０８ａにおいて、第２クライアントデバイス６００が高信頼性デバイス集合体に属しているかどうかをチェックする。本発明は、任意の特定の種類のセキュリティチェックに限定されず、これらのセキュリティチェックは、例えばクライアントデバイス６００の生体センサ上で、例えば高信頼性コンピューティング技術を使用して実現されるセキュア実行環境の完全性検証を含むことができ、高信頼性コンピューティング技術は、生体センサが、生体センサの高信頼性状態の高信頼性プラットフォームモジュール（ＴＰＭ）サポート又は検証を、セキュアチャネル確立などに使用される生体センサの証明書に基づいて受けると仮定する。
【０１３２】
この特定の好ましい実施形態では、第２認証トークンＲ２は、図６のステップＳ３０４において説明される第１クライアントデバイス１００により生成されるｅ，ＳＩＧ（Ｐｒｃ，ｅ）により構成される。
【０１３３】
ｅ及びＳＩＧ（Ｐｒｃ，ｅ）を受信すると、高信頼性サーバ３００は、当該高信頼性サーバのプライベート鍵ＰｒＴＳを使用してＤ（ＰｒＴＳ，ｅ）＝Ｎ｜｜ｉ｜｜ｖで表わされるｅをステップＳ１０９において復号することにより、第２認証トークンＲ２を認証する。
【０１３４】
次に、第２認証トークンＲ２の認証に成功して、第２クライアントデバイス６００が高信頼性デバイスであると考えられる場合、高信頼性サーバ３００は任意であるが、ステップＳ１０９ａにおいて、更に別の乱数Ｎが識別子ｖと一緒にこれまで使用されていなかったことを検証することができる（暗号化生体データが置換されていた場合以外の場合）。
【０１３５】
高信頼性サーバ３００は、ステップＳ１１０において、鍵格納部４００の方に向きを変えて、更新暗号化生体データＥ（Ｔ＊）ｉに対応する選択インデックスｉ及び識別子ｖに関連する更新暗号化生体データＥ（Ｔ＊）ｉ及び新規ナンスｎｉ＊を、最初に暗号化生体データを高信頼性サーバ３００に登録した第１クライアントデバイス１００の公開鍵ＰｋＣと一緒に取得するが、その理由は、第２認証トークンＲ２に対するデジタル署名が第１クライアントデバイスの位置で行なわれたからである。
【０１３６】
更に、この時点で置換されている予め登録されていた暗号化生体データに関連するナンス（群）ｎｉ−すなわち、高信頼性サーバ３００と第２クライアントデバイス６００との間で共有される秘密鍵（群）−は、鍵格納部４００からステップＳ１１０において取得される。
【０１３７】
ステップＳ１１０ａでは、認証トークンＲ２を認証するプロセスを更に強化するために、高信頼性サーバ３００は、第１クライアントデバイス１００の公開鍵ＰｋＣを使用して第２認証トークンを、デジタル署名ＳＩＧ（Ｐｒｃ，ｅ）を検証することにより更に検証する。
【０１３８】
検証に失敗しているはずである場合、認証は通常、中断され、エラーメッセージがそれに応じて、第２クライアントデバイス６００に送信される。
【０１３９】
ステップＳ１１１では、高信頼性サーバ３００が認証チャレンジｒを第２クライアントデバイス６００に対して提示する。
【０１４０】
次に、第２クライアントデバイス６００が、この時点で更新されている予め登録されていた暗号化生体テンプレートＥ（Ｔ）に関連する予め取得されていた共有秘密鍵ｎを、受信した認証チャレンジｒと組み合わせて使用して、認証応答ＡをステップＳ１１２において計算し、認証応答Ａを高信頼性サーバ３００に送信する。
【０１４１】
高信頼性サーバ３００がステップＳ１１３において、認証応答Ａが正しく計算されていることを、鍵格納部４００からステップＳ１１０において取得される予め共有されていた秘密鍵ｎ、及び認証チャレンジｒに基づいて検証する場合、高信頼性サーバ３００は更新暗号化生体データＥ（Ｔ＊）ｉを第２クライアントデバイス６００に対してステップＳ１１４において、第１認証トークンＲ１に含まれていた新規共有秘密鍵ｎ＊と一緒に提示し、新規共有秘密鍵ｎ＊は、第２クライアントデバイス６００が更に別の更新暗号化生体データ集合を高信頼性サーバ３００に対して要求する次の機会に使用されることになる。
【０１４２】
このようなことから、予め登録されていた暗号化生体データに関連する共有秘密鍵ｎは、鍵格納部４００にこれ以上格納される必要がない。
【０１４３】
最後に、第２クライアントデバイス６００は、更新暗号化生体データＥ（Ｔ＊）ｉをステップＳ１１６において、サードパーティサーバ５００からステップＳ１１５において予め受信していた秘密鍵ｋｉを使用して復号することができる（図８には示されず）−秘密鍵ｋｉを最初に第１クライアントデバイス１００が使用して生体データを暗号化していた−ので、更新生体データＴ＊を平文で取得することができる。
【０１４４】
生体データＴが揮発性又は不揮発性保護メモリに予め格納されていて、引き続き使用されて、サードパーティサーバ５００が提供するサービスに対して第２クライアントデバイス６００を介してユーザにアクセス許可が付与される必要がある当該ユーザ２００を認証するのではなく、ユーザ２００の平文の更新生体データＴ＊は通常、ステップＳ１１７において、第２クライアントデバイス６００の位置でセキュアに格納される。
【０１４５】
本発明は主として、幾つかの実施形態を参照して上に説明されている。しかしながら、当業者であれば容易に理解することができるように、添付の特許請求の範囲により定義されている通り、上に開示される実施形態以外の他の実施形態も本発明の範囲内に収まるように同様に想到することができる。
【図１】
2020511077.tif 000005
【図２】
2020511077.tif 000006
【図３】
2020511077.tif 000007
【図４】
2020511077.tif 000008
【図５】
2020511077.tif 000009
【図６】
2020511077.tif 000010
【図７】
2020511077.tif 000011
【図８】
2020511077.tif 000012
【国際調査報告】
2020511077.tif 000013
2020511077.tif 000014
2020511077.tif 000015