JP3983561B2 - 秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法 - Google Patents
秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法 Download PDFInfo
- Publication number
- JP3983561B2 JP3983561B2 JP2002027330A JP2002027330A JP3983561B2 JP 3983561 B2 JP3983561 B2 JP 3983561B2 JP 2002027330 A JP2002027330 A JP 2002027330A JP 2002027330 A JP2002027330 A JP 2002027330A JP 3983561 B2 JP3983561 B2 JP 3983561B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- communication terminal
- verification
- message
- encryption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は、通信端末が通信に利用する鍵を秘密分散法により管理するシステム、検証センタ、通信端末およびプログラム、並びに方法に係り、特に、通信端末が通信に利用する鍵を管理するにあたってセキュリティを向上するのに好適な秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法に関する。現在、データの秘匿、相手認証、鍵交換、データの完全性のチェック等様々な用途で暗号化システムが利用されている。そのため、正規ユーザ以外の第三者が暗号鍵を利用できた場合、暗号化した機密ファイルが復号化され第三者に機密情報が漏洩する、または、なりすましに利用されデータベースに不正にアクセスされるといった深刻な被害が予想される。そこで、暗号化システムにおいては、正規ユーザのみが利用できるように暗号鍵を厳重に管理する(鍵管理)ことが求められる。本発明は、正規ユーザ以外の第三者が暗号鍵を利用することを困難にするものである。
【0002】
【従来の技術】
従来では、正規ユーザ以外の第三者に暗号鍵を利用させないために、次の2つの仕組みが用いられている。一つは、暗号鍵を保管している通信端末がユーザを認証し、正規ユーザとして判断したときのみ通信端末が暗号鍵を用いた演算処理を行う仕組み。もう一つは、通信端末内に保管している暗号鍵を第三者に盗まれないための仕組みである。
【0003】
前者の仕組みにおいては、通信端末がユーザを認証するためのユーザ認証方式が重要となるが、現在これには、ID/バスワード等の知識に基づく方法やICチップ等の物理的な持ち物に基づく方法がよく利用されている。しかし、人間は複雑なバスワードを記憶するのに適していない、または物理的な持ち物は紛失・盗難の危険性等があることから、これらの認証方式はネットビジネスやイントラネットへのアクセス制御等の高い信頼性が求められる利用用途においては必ずしも適切な認証方式ではない。そこで、これらのユーザ認証方式の代わりに現在注目されているのが、個人に固有な生体情報に基づきユーザを認証するバイオ認証である。
【0004】
バイオ認証は、指紋・声紋等の人間が生来持っている固有情報に基づき相手認証を行うユーザ認証方法である。現在、バイオ認証では、あらかじめ登録した生体情報と認証時に測定した生体情報を比較照合し、両者の誤差がある特定の許容範囲内であるか否かによりユーザ認証を行っている。利用者固有の情報を用いるため、何かを携帯・記憶する必要がないのに加え、偽造するのが困難であることから、現在注目されているユーザ認証方式の一つである。
【0005】
次に、後者の暗号鍵を第三者に盗まれないための仕組みであるが、これには、現在耐タンパ性のデバイスを用いる方法がよく利用されている。耐タンパ性のデバイスとは、内容検知および改竄の困難なデバイスの総称で、ICチップ等が用いられている。耐タンパ性のデバイスに暗号鍵を保管することにより、もしデバイスを盗まれた場合でも、なかに保管されている暗号鍵が漏洩する危険性を低下させることができる。
【0006】
暗号化システムの暗号鍵管理に、バイオ認証と耐タンパ性のデバイスを使用した従来方式を図12に示す。具体的な内容は、「http://www.sdl.hitachi.co.jp/japanese/results/thema/exp/rd200124.htm」のURL(Universal Resource Locater)により特定されるホームページに掲載されている。ユーザの生体情報および鍵情報は、耐タンパ性の通信端末に保管する。通信端末は、バイオ認証によりユーザを認証し、正規ユーザとして認証した場合のみ暗号鍵を用いた演算処理を行う。これにより、正規ユーザ以外の第三者が通信端末を利用しても、暗号鍵を用いた演算処理を行うことも、なかに保存されている生体情報および鍵情報を盗むことも困難となる。
【0007】
従来、個人認証または暗号化通信に関する技術としては、特開2001-216270号公報に開示された認証システム(以下、第1の従来例という。)、特開2002-7352号公報に開示された個人認証システム(以下、第2の従来例という。)および特開2001-202012号公報に開示された移動エージェントによる署名計算システム(以下、第3の従来例という。)があった。
【0008】
第1の従来例は、PKI認証局が有するディレクトリサーバおよびユーザの生体的特徴に基づく生体情報を照合可能な生体情報照合サーバを有する認証局と、認証局とネットワークによって接続されたユーザ端末とを備えており、ユーザ端末から生体情報を送信し、認証局は、生体情報照合サーバによって、ユーザから送信された生体情報とあらかじめ登録されたユーザの生体情報とを照合する。
【0009】
これにより、認証局は、ディレクトリサーバによってデジタル証明書の有効性をチェックできるとともに、生体情報を照合することによって個人認証をすることができる。
第2の従来例は、アプリケーションサービスを提供するアプリケーションサーバと、ユーザが使用するクライアント端末と、ユーザを認証する認証サーバとが互いにネットワークを介して接続される認証システムであって、クライアント端末を操作するユーザの生体情報を取得して認証サーバに送信し、あらかじめ認証サーバのディジタル証明書内に格納された生体情報と照合してユーザが正規なユーザであるか否かを判断し、この判断により正規なユーザである場合は、伝文を暗号化して伝送する。
【0010】
これにより、認証の安全性を高め、ディジタル証明書を認証サーバからダウンロードする場合もIDやパスワード等の入力無しに自動的に認証サーバからディジタル証明書をダウンロード可能にする。
第3の従来例は、移動エージェントが起動されるベースホストにおいて、移動エージェントの所有者の秘密鍵を、部分署名補助データ生成部によってk個の移動先ホストの秘密鍵を用いた演算を行うことで初めて復元可能となるような形態に分割する。移動エージェントが訪れる各移動先ホストは、移動エージェントに格納されたデータと移動先ホストの秘密鍵とを部分署名計算部への入力として部分署名を計算し、k個のホストが計算した部分署名から部分署名署名化部を用いて実際の署名を得る。
【0011】
これにより、プログラム・コードおよびデータを解析されても、移動先のホストに署名を偽造されない形で移動エージェントにデータを保持させ、移動先のホストで提示された任意のデータに対してディジタル署名を計算させるようにする。
【0012】
【発明が解決しようとする課題】
近年、携帯端末の普及により、第三者に通信端末が晒される機会が増大しており、以前にも増して生体情報・鍵情報が漏洩しない仕組みが重要となっている。上記従来技術では、これに対し耐タンパ性のデバイスを用いることで対応している。しかしながら、耐タンパ性のデバイスは、なかにある情報を取り出すことを困難にはしてくれるものの完全に防止することができるわけではない。そこで、特にモバイル環境においては、耐タンパ性のデバイスだけに依存しない生体情報・鍵情報の管理方法が求められる。
【0013】
また、第1の従来例にあっては、バイオ認証によりユーザ認証を行う構成であるため、これを暗号鍵の管理に適用した場合には、通信端末が利用する暗号鍵が第三者に漏洩する可能性を低減することが可能である。しかしながら、通信端末が利用する暗号鍵を生体情報照合サーバにおいた場合、生体情報照合サーバとユーザ端末との間でどうしても暗号鍵の送受信を行わなければならないため、暗号鍵を通信している最中に盗聴等により暗号鍵が第三者に漏洩する可能性があり、セキュリティ面で十分であるとは言い難い。このことは、第2の従来においても同じである。
【0014】
また、第3の従来例にあっては、暗号鍵を秘密分散法により分散した分散暗号鍵を移動エージェントおよび複数の移動ホストにおいておくため、暗号鍵を通信している最中に盗聴等により暗号鍵が第三者に漏洩する可能性を低減することが可能である。しかしながら、移動エージェントにおいて暗号鍵の利用適格を検証することが不十分であるため、移動エージェントが第三者に無断で利用された場合は、暗号鍵が漏洩する可能性がある。また、分散暗号鍵をそのまま通信する構成となっているため、通信している最中にすべての分散暗号鍵が盗聴されれば、暗号鍵が復元され第三者に利用されてしまう。したがって、セキュリティ面で十分であるとは言い難い。
【0015】
そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、通信端末が通信に利用する鍵を管理するにあたってセキュリティを向上するのに好適な秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法を提供することを目的としている。
【0016】
【課題を解決するための手段】
上記目的を達成するために、発明1の秘密分散法による鍵管理システムは、通信を行う通信端末と、前記通信端末が通信に利用する鍵の利用適格を検証する検証センタとを通信可能に接続し、前記検証センタによる認証を得て、前記通信端末が通信するメッセージを演算するシステムであって、前記検証センタには、前記鍵を秘密分散法により分散した分散鍵のうち第1分散鍵を検証用生体情報と対応付けて記憶させておくとともに、前記通信端末には、前記分散鍵のうち第2分散鍵を記憶させておき、前記通信端末で入力した生体情報および前記検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記検証に用いた検証用生体情報に対応する第1分散鍵、および前記第2分散鍵に基づいて前記メッセージを演算するようになっている。
【0017】
このような構成であれば、通信端末で生体情報が入力されると、入力された生体情報および検証用生体情報に基づいて鍵の利用適格が検証される。その検証により認証が得られると、検証に用いた検証用生体情報に対応する第1分散鍵、および第2分散鍵に基づいてメッセージが演算される。
ここで、分散鍵による演算は、検証センタで先に行ってもよいし、通信端末で先に行ってもよい。具体的には、前者の場合、通信端末は、メッセージおよび生体情報を検証センタに送信し、検証センタは、メッセージおよび生体情報を受信したときは、受信した生体情報に基づいて検証を行い、認証が得られたときは、第1分散鍵に基づいてメッセージを演算して通信端末に送信し、通信端末は、演算メッセージを受信したときは、第2分散鍵に基づいて演算メッセージをさらに演算する。また、後者の場合、通信端末は、第2分散鍵に基づいてメッセージを演算し、演算メッセージおよび生体情報を検証センタに送信し、検証センタは、演算メッセージおよび生体情報を受信したときは、受信した生体情報に基づいて検証を行い、認証が得られたときは、第1分散鍵に基づいて、受信した演算メッセージをさらに演算して通信端末に送信する。以下、発明40の秘密分散法による鍵管理方法において同じである。
【0018】
また、鍵は、複数の分散鍵に分散すればよく、2つの分散鍵に分散するに限らず、3つ以上の分散鍵に分散してもよい。以下、発明10の検証センタ、発明17の通信端末、発明25の検証センタ用プログラム、発明32の通信端末用プログラム、および発明40の秘密分散法による鍵管理方法において同じである。
【0019】
また、演算とは、所定の演算方法により通信対象データを演算して他の内容のデータに置き換えることをいい、鍵とは、通信対象データを演算するために必要な情報をいう。したがって、演算には、暗号化、復号化、署名およびMACが含まれる。以下、発明10の検証センタ、発明17の通信端末、発明25の検証センタ用プログラム、発明32の通信端末用プログラム、および発明40の秘密分散法による鍵管理方法において同じである。
【0020】
さらに、発明2の秘密分散法による鍵管理システムは、発明1の秘密分散法による鍵管理システムにおいて、前記検証センタは、前記第1分散鍵を前記検証用生体情報と対応付けて記憶するための第1分散鍵記憶手段を有し、前記メッセージおよび前記生体情報を受信したときは、受信した生体情報および前記第1分散鍵記憶手段の検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記第1分散鍵記憶手段の第1分散鍵のうち前記検証に用いた検証用生体情報に対応するものに基づいて、前記受信したメッセージを演算し、その演算メッセージを前記通信端末に送信するようになっており、前記通信端末は、前記第2分散鍵を記憶するための第2分散鍵記憶手段と、前記生体情報を入力する生体情報入力手段とを有し、前記メッセージおよび前記生体情報入力手段で入力した生体情報を前記検証センタに送信し、その送信により前記演算メッセージを受信したときは、前記第2分散鍵記憶手段の第2分散鍵に基づいて、前記受信した演算メッセージを演算するようになっている。
【0021】
このような構成であれば、通信端末では、生体情報入力手段から生体情報が入力されると、入力された生体情報およびメッセージが検証センタに送信される。
検証センタでは、メッセージおよび生体情報を受信すると、受信した生体情報および第1分散鍵記憶手段の検証用生体情報に基づいて鍵の利用適格が検証される。その検証により認証が得られると、第1分散鍵記憶手段の第1分散鍵のうち検証に用いた検証用生体情報に対応するものに基づいて、受信したメッセージが演算され、その演算メッセージが通信端末に送信される。
【0022】
通信端末では、演算メッセージを受信すると、第2分散鍵記憶手段の第2分散鍵に基づいて、受信した演算メッセージが演算される。
ここで、第1分散鍵記憶手段は、第1分散鍵および検証用生体情報をあらゆる手段でかつあらゆる時期に記憶するものであり、第1分散鍵および検証用生体情報をあらかじめ記憶してあるものであってもよいし、第1分散鍵および検証用生体情報をあらかじめ記憶することなく、本システムの動作時に外部からの入力等によって第1分散鍵および検証用生体情報を記憶するようになっていてもよい。以下、発明10の検証センタ、および発明25の検証センタ用プログラムにおいて同じである。
【0023】
また、第2分散鍵記憶手段は、第2分散鍵をあらゆる手段でかつあらゆる時期に記憶するものであり、第2分散鍵をあらかじめ記憶してあるものであってもよいし、第2分散鍵をあらかじめ記憶することなく、本システムの動作時に外部からの入力等によって第2分散鍵を記憶するようになっていてもよい。以下、発明17の通信端末、および発明32の通信端末用プログラムにおいて同じである。
【0024】
さらに、発明3の秘密分散法による鍵管理システムは、発明2の秘密分散法による鍵管理システムにおいて、前記通信端末は、前記メッセージおよび前記生体情報の送信に先立って機密保持、相手認証またはデータ改竄防止のための特定通信路を前記検証センタとの間で確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記特定通信路を通じて行うようになっており、前記検証センタは、前記メッセージおよび前記生体情報の受信に先立って前記通信端末との間で前記特定通信路を確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記特定通信路を通じて行うようになっている。
【0025】
このような構成であれば、通信端末では、メッセージおよび生体情報の送信に先立って検証センタとの間で特定通信路が確立され、メッセージ、生体情報および演算メッセージに関する送受信が特定通信路を通じて行われる。
これと同様に、検証センタでは、メッセージおよび生体情報の受信に先立って通信端末との間で特定通信路が確立され、メッセージ、生体情報および演算メッセージに関する送受信が特定通信路を通じて行われる。
【0026】
さらに、発明4の秘密分散法による鍵管理システムは、発明3の秘密分散法による鍵管理システムにおいて、前記通信端末は、前記メッセージおよび前記生体情報の送信に先立って前記検証センタの正当性を検証し、その検証より認証が得られた場合に限り、前記メッセージおよび前記生体情報を前記検証センタに送信するようになっている。
【0027】
このような構成であれば、通信端末では、メッセージおよび生体情報の送信に先立って検証センタの正当性が検証され、その検証より認証が得られた場合に限り、メッセージおよび生体情報が検証センタに送信される。
さらに、発明5の秘密分散法による鍵管理システムは、発明3および4のいずれかの秘密分散法による鍵管理システムにおいて、前記通信端末は、前記メッセージおよび前記生体情報の送信に先立って前記検証センタとの間で暗号化通信路を確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記暗号化通信路を通じて行うようになっており、前記検証センタは、前記メッセージおよび前記生体情報の受信に先立って前記通信端末との間で前記暗号化通信路を確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記暗号化通信路を通じて行うようになっている。
【0028】
このような構成であれば、通信端末では、メッセージおよび生体情報の送信に先立って検証センタとの間で暗号化通信路が確立され、メッセージ、生体情報および演算メッセージに関する送受信が暗号化通信路を通じて行われる。
これと同様に、検証センタでは、メッセージおよび生体情報の受信に先立って通信端末との間で暗号化通信路が確立され、メッセージ、生体情報および演算メッセージに関する送受信が暗号化通信路を通じて行われる。
【0029】
さらに、発明6の秘密分散法による鍵管理システムは、発明5の秘密分散法による鍵管理システムにおいて、前記通信端末は、複数の暗号化アルゴリズムまたはMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記検証センタとのネゴシエーションにより決定し、決定した暗号化アルゴリズムまたはMACアルゴリズムに基づいて前記暗号化通信路を確立するようになっており、前記検証センタは、前記複数の暗号化アルゴリズムまたはMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記通信端末とのネゴシエーションにより決定し、決定した暗号化アルゴリズムまたはMACアルゴリズムに基づいて前記暗号化通信路を確立するようになっている。
【0030】
このような構成であれば、通信端末では、検証センタとのネゴシエーションにより、複数の暗号化アルゴリズムまたはMACアルゴリズムのなかから暗号化通信路の確立に用いるものが決定され、決定された暗号化アルゴリズムまたはMACアルゴリズムに基づいて暗号化通信路が確立される。
これと同様に、検証センタでは、通信端末とのネゴシエーションにより、複数の暗号化アルゴリズムまたはMACアルゴリズムのなかから暗号化通信路の確立に用いるものが決定され、決定された暗号化アルゴリズムまたはMACアルゴリズムに基づいて暗号化通信路が確立される。
【0031】
さらに、発明7の秘密分散法による鍵管理システムは、発明5および6のいずれかの秘密分散法による鍵管理システムにおいて、前記通信端末は、前記暗号化通信路の確立に用いる暗号鍵、MAC鍵およびIVを生成し、生成した暗号鍵、MAC鍵およびIVに基づいて前記暗号化通信路を確立するようになっており、前記検証センタは、前記通信端末で生成した暗号鍵、MAC鍵およびIVに対応する暗号鍵、MAC鍵およびIVを生成し、生成した暗号鍵、MAC鍵およびIVに基づいて前記暗号化通信路を確立するようになっている。
【0032】
このような構成であれば、通信端末では、暗号化通信路の確立に用いる暗号鍵、MAC鍵およびIVが生成され、生成された暗号鍵、MAC鍵およびIVに基づいて暗号化通信路が確立される。
検証センタでは、通信端末で生成された暗号鍵、MAC鍵およびIVに対応する暗号鍵、MAC鍵およびIVが生成され、生成された暗号鍵、MAC鍵およびIVに基づいて暗号化通信路が確立される。
【0033】
さらに、発明8の秘密分散法による鍵管理システムは、発明7の秘密分散法による鍵管理システムにおいて、前記検証センタは、前記暗号鍵、MAC鍵およびIVの更新に用いる更新鍵を生成し、生成した更新鍵に基づいて、当該検証センタが保持している暗号鍵、MAC鍵およびIVを更新し、生成した更新鍵を前記通信端末に送信するようになっており、前記通信端末は、前記更新鍵を受信したときは、受信した更新鍵に基づいて、当該通信端末が保持している暗号鍵、MAC鍵およびIVを更新するようになっている。
【0034】
このような構成であれば、検証センタでは、暗号鍵、MAC鍵およびIVの更新に用いる更新鍵が生成され、生成された更新鍵に基づいて、検証センタが保持している暗号鍵、MAC鍵およびIVが更新されるとともに、生成された更新鍵が通信端末に送信される。
通信端末では、更新鍵を受信すると、受信した更新鍵に基づいて、通信端末が保持している暗号鍵、MAC鍵およびIVが更新される。
【0035】
さらに、発明9の秘密分散法による鍵管理システムは、発明1ないし8のいずれかの秘密分散法による鍵管理システムにおいて、前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵およびIVのうちいずれかである。
このような構成であれば、第1分散鍵および第2分散鍵に基づいて演算された場合、その演算データは、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵およびIVのうちいずれかに基づいて暗号化されたデータとなる。
【0036】
一方、上記目的を達成するために、発明10の検証センタは、発明2の秘密分散法による鍵管理システムにおける通信端末と通信可能に接続し、前記通信端末が通信に利用する鍵の利用適格を検証する検証センタであって、前記第1分散鍵を前記検証用生体情報と対応付けて記憶するための第1分散鍵記憶手段を備え、前記メッセージおよび前記生体情報を受信したときは、受信した生体情報および前記第1分散鍵記憶手段の検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記第1分散鍵記憶手段の第1分散鍵のうち前記検証に用いた検証用生体情報に対応するものに基づいて、前記受信したメッセージを演算し、その演算メッセージを前記通信端末に送信するようになっている。
【0037】
このような構成であれば、発明2の秘密分散法による鍵管理システムにおける検証センタと同等の作用が得られる。
さらに、発明11の検証センタは、発明10の検証センタにおいて、発明3の秘密分散法による鍵管理システムにおける通信端末と通信可能に接続し、前記メッセージおよび前記生体情報の受信に先立って機密保持、相手認証またはデータ改竄防止のための特定通信路を前記通信端末との間で確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記特定通信路を通じて行うようになっている。
【0038】
このような構成であれば、発明3の秘密分散法による鍵管理システムにおける検証センタと同等の作用が得られる。
さらに、発明12の検証センタは、発明11の検証センタにおいて、発明5の秘密分散法による鍵管理システムにおける通信端末と通信可能に接続し、前記メッセージおよび前記生体情報の受信に先立って前記通信端末との間で前記暗号化通信路を確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記暗号化通信路を通じて行うようになっている。
【0039】
このような構成であれば、発明5の秘密分散法による鍵管理システムにおける検証センタと同等の作用が得られる。
さらに、発明13の検証センタは、発明12の検証センタにおいて、発明6の秘密分散法による鍵管理システムにおける通信端末と通信可能に接続し、前記複数の暗号化アルゴリズムまたはMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記通信端末とのネゴシエーションにより決定し、決定した暗号化アルゴリズムまたはMACアルゴリズムに基づいて前記暗号化通信路を確立するようになっている。
【0040】
このような構成であれば、発明6の秘密分散法による鍵管理システムにおける検証センタと同等の作用が得られる。
さらに、発明14の検証センタは、発明12および13のいずれかの検証センタにおいて、発明7の秘密分散法による鍵管理システムにおける通信端末と通信可能に接続し、前記通信端末で生成した暗号鍵、MAC鍵およびIVに対応する暗号鍵、MAC鍵およびIVを生成し、生成した暗号鍵、MAC鍵およびIVに基づいて前記暗号化通信路を確立するようになっている。
【0041】
このような構成であれば、発明7の秘密分散法による鍵管理システムにおける検証センタと同等の作用が得られる。
さらに、発明15の検証センタは、発明14の検証センタにおいて、発明8の秘密分散法による鍵管理システムにおける通信端末と通信可能に接続し、前記暗号鍵、MAC鍵およびIVの更新に用いる更新鍵を生成し、生成した更新鍵に基づいて、当該検証センタが保持している暗号鍵、MAC鍵およびIVを更新し、生成した更新鍵を前記通信端末に送信するようになっている。
【0042】
このような構成であれば、発明8の秘密分散法による鍵管理システムにおける検証センタと同等の作用が得られる。
さらに、発明16の検証センタは、発明10ないし15のいずれかの検証センタにおいて、前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵およびIVのうちいずれかである。
【0043】
このような構成であれば、発明9の秘密分散法による鍵管理システムにおける検証センタと同等の作用が得られる。
一方、上記目的を達成するために、発明17の通信端末は、発明2の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、前記検証センタによる認証を得て通信を行う端末であって、前記第2分散鍵を記憶するための第2分散鍵記憶手段と、前記生体情報を入力する生体情報入力手段とを備え、前記メッセージおよび前記生体情報入力手段で入力した生体情報を前記検証センタに送信し、その送信により前記演算メッセージを受信したときは、前記第2分散鍵記憶手段の第2分散鍵に基づいて、前記受信した演算メッセージを演算するようになっている。
【0044】
このような構成であれば、発明2の秘密分散法による鍵管理システムにおける通信端末と同等の作用が得られる。
さらに、発明18の通信端末は、発明17の通信端末において、発明3の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、前記メッセージおよび前記生体情報の送信に先立って機密保持、相手認証またはデータ改竄防止のための特定通信路を前記検証センタとの間で確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記特定通信路を通じて行うようになっている。
【0045】
このような構成であれば、発明3の秘密分散法による鍵管理システムにおける通信端末と同等の作用が得られる。
さらに、発明19の通信端末は、発明18の通信端末において、発明4の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、前記メッセージおよび前記生体情報の送信に先立って前記検証センタの正当性を検証し、その検証より認証が得られた場合に限り、前記メッセージおよび前記生体情報を前記検証センタに送信するようになっている。
【0046】
このような構成であれば、発明4の秘密分散法による鍵管理システムにおける通信端末と同等の作用が得られる。
さらに、発明20の通信端末は、発明18および19のいずれかの通信端末において、発明5の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、前記メッセージおよび前記生体情報の送信に先立って前記検証センタとの間で暗号化通信路を確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記暗号化通信路を通じて行うようになっている。
【0047】
このような構成であれば、発明5の秘密分散法による鍵管理システムにおける通信端末と同等の作用が得られる。
さらに、発明21の通信端末は、発明20の通信端末において、発明6の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、複数の暗号化アルゴリズムまたはMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記検証センタとのネゴシエーションにより決定し、決定した暗号化アルゴリズムまたはMACアルゴリズムに基づいて前記暗号化通信路を確立するようになっている。
【0048】
このような構成であれば、発明6の秘密分散法による鍵管理システムにおける通信端末と同等の作用が得られる。
さらに、発明22の通信端末は、発明20および21のいずれかの通信端末において、発明7の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、前記暗号化通信路の確立に用いる暗号鍵、MAC鍵およびIVを生成し、生成した暗号鍵、MAC鍵およびIVに基づいて前記暗号化通信路を確立するようになっている。
【0049】
このような構成であれば、発明7の秘密分散法による鍵管理システムにおける通信端末と同等の作用が得られる。
さらに、発明23の通信端末は、発明22の通信端末において、発明8の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、前記更新鍵を受信したときは、受信した更新鍵に基づいて、当該通信端末が保持している暗号鍵、MAC鍵およびIVを更新するようになっている。
【0050】
このような構成であれば、発明8の秘密分散法による鍵管理システムにおける通信端末と同等の作用が得られる。
さらに、発明24の通信端末は、発明17ないし23のいずれかの通信端末において、前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵およびIVのうちいずれかである。
【0051】
このような構成であれば、発明9の秘密分散法による鍵管理システムにおける通信端末と同等の作用が得られる。
一方、上記目的を達成するために、発明25の検証センタ用プログラムは、コンピュータからなる発明10の検証センタに実行させるためのプログラムであって、前記メッセージおよび前記生体情報を受信したときは、受信した生体情報および前記第1分散鍵記憶手段の検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記第1分散鍵記憶手段の第1分散鍵のうち前記検証に用いた検証用生体情報に対応するものに基づいて、前記受信したメッセージを演算し、その演算メッセージを前記通信端末に送信する処理を実行させるためのプログラムである。
【0052】
このような構成であれば、検証センタによってプログラムが読み取られ、読み取られたプログラムに従って検証センタが処理を実行すると、発明10の検証センタと同等の作用が得られる。
さらに、発明26の検証センタ用プログラムは、発明25の検証センタ用プログラムにおいて、コンピュータからなる発明11の検証センタに対して、前記メッセージおよび前記生体情報の受信に先立って機密保持、相手認証またはデータ改竄防止のための特定通信路を前記通信端末との間で確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記特定通信路を通じて行う処理を実行させるためのプログラムである。
【0053】
このような構成であれば、検証センタによってプログラムが読み取られ、読み取られたプログラムに従って検証センタが処理を実行すると、発明11の検証センタと同等の作用が得られる。
さらに、発明27の検証センタ用プログラムは、発明26の検証センタ用プログラムにおいて、コンピュータからなる発明12の検証センタに対して、前記メッセージおよび前記生体情報の受信に先立って前記通信端末との間で前記暗号化通信路を確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記暗号化通信路を通じて行う処理を実行させるためのプログラムである。
【0054】
このような構成であれば、検証センタによってプログラムが読み取られ、読み取られたプログラムに従って検証センタが処理を実行すると、発明12の検証センタと同等の作用が得られる。
さらに、発明28の検証センタ用プログラムは、発明27の検証センタ用プログラムにおいて、コンピュータからなる発明13の検証センタに対して、前記複数の暗号化アルゴリズムまたはMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記通信端末とのネゴシエーションにより決定し、決定した暗号化アルゴリズムまたはMACアルゴリズムに基づいて前記暗号化通信路を確立する処理を実行させるためのプログラムである。
【0055】
このような構成であれば、検証センタによってプログラムが読み取られ、読み取られたプログラムに従って検証センタが処理を実行すると、発明13の検証センタと同等の作用が得られる。
さらに、発明29の検証センタ用プログラムは、発明27および28のいずれかの検証センタ用プログラムにおいて、コンピュータからなる発明14の検証センタに対して、前記通信端末で生成した暗号鍵、MAC鍵およびIVに対応する暗号鍵、MAC鍵およびIVを生成し、生成した暗号鍵、MAC鍵およびIVに基づいて前記暗号化通信路を確立する処理を実行させるためのプログラムである。
【0056】
このような構成であれば、検証センタによってプログラムが読み取られ、読み取られたプログラムに従って検証センタが処理を実行すると、発明14の検証センタと同等の作用が得られる。
さらに、発明30の検証センタ用プログラムは、発明29の検証センタ用プログラムにおいて、コンピュータからなる発明15の検証センタに対して、前記暗号鍵、MAC鍵およびIVの更新に用いる更新鍵を生成し、生成した更新鍵に基づいて、当該検証センタが保持している暗号鍵、MAC鍵およびIVを更新し、生成した更新鍵を前記通信端末に送信する処理を実行させるためのプログラムである。
【0057】
このような構成であれば、検証センタによってプログラムが読み取られ、読み取られたプログラムに従って検証センタが処理を実行すると、発明15の検証センタと同等の作用が得られる。
さらに、発明31の検証センタ用プログラムは、発明25ないし30のいずれかの検証センタ用プログラムにおいて、前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵およびIVのうちいずれかである。
【0058】
このような構成であれば、検証センタによってプログラムが読み取られ、読み取られたプログラムに従って検証センタが処理を実行すると、発明16の検証センタと同等の作用が得られる。
一方、上記目的を達成するために、発明32の通信端末用プログラムは、コンピュータからなる発明17の通信端末に実行させるためのプログラムであって、前記メッセージおよび前記生体情報入力手段で入力した生体情報を前記検証センタに送信し、その送信により前記演算メッセージを受信したときは、前記第2分散鍵記憶手段の第2分散鍵に基づいて、前記受信した演算メッセージを演算する処理を実行させるためのプログラムである。
【0059】
このような構成であれば、通信端末によってプログラムが読み取られ、読み取られたプログラムに従って通信端末が処理を実行すると、発明17の通信端末と同等の作用が得られる。
さらに、発明33の通信端末用プログラムは、発明32の通信端末用プログラムにおいて、コンピュータからなる発明18の通信端末に実行させるためのプログラムであって、前記メッセージおよび前記生体情報の送信に先立って機密保持、相手認証またはデータ改竄防止のための特定通信路を前記検証センタとの間で確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記特定通信路を通じて行う処理を実行させるためのプログラムである。
【0060】
このような構成であれば、通信端末によってプログラムが読み取られ、読み取られたプログラムに従って通信端末が処理を実行すると、発明18の通信端末と同等の作用が得られる。
さらに、発明34の通信端末用プログラムは、発明33の通信端末用プログラムにおいて、コンピュータからなる発明19の通信端末に実行させるためのプログラムであって、前記メッセージおよび前記生体情報の送信に先立って前記検証センタの正当性を検証し、その検証より認証が得られた場合に限り、前記メッセージおよび前記生体情報を前記検証センタに送信する処理を実行させるためのプログラムである。
このような構成であれば、通信端末によってプログラムが読み取られ、読み取られたプログラムに従って通信端末が処理を実行すると、発明19の通信端末と同等の作用が得られる。
【0061】
さらに、発明35の通信端末用プログラムは、発明33および34のいずれかの通信端末用プログラムにおいて、コンピュータからなる発明20の通信端末に実行させるためのプログラムであって、前記メッセージおよび前記生体情報の送信に先立って前記検証センタとの間で暗号化通信路を確立し、前記メッセージ、前記生体情報および前記演算メッセージに関する送受信を前記暗号化通信路を通じて行う処理を実行させるためのプログラムである。
【0062】
このような構成であれば、通信端末によってプログラムが読み取られ、読み取られたプログラムに従って通信端末が処理を実行すると、発明20の通信端末と同等の作用が得られる。
さらに、発明36の通信端末用プログラムは、発明35の通信端末用プログラムにおいて、コンピュータからなる発明21の通信端末に実行させるためのプログラムであって、複数の暗号化アルゴリズムまたはMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記検証センタとのネゴシエーションにより決定し、決定した暗号化アルゴリズムまたはMACアルゴリズムに基づいて前記暗号化通信路を確立する処理を実行させるためのプログラムである。
【0063】
このような構成であれば、通信端末によってプログラムが読み取られ、読み取られたプログラムに従って通信端末が処理を実行すると、発明21の通信端末と同等の作用が得られる。
さらに、発明37の通信端末用プログラムは、発明35および36のいずれかの通信端末用プログラムにおいて、コンピュータからなる発明22の通信端末に実行させるためのプログラムであって、前記暗号化通信路の確立に用いる暗号鍵、MAC鍵およびIVを生成し、生成した暗号鍵、MAC鍵およびIVに基づいて前記暗号化通信路を確立する処理を実行させるためのプログラムである。
【0064】
このような構成であれば、通信端末によってプログラムが読み取られ、読み取られたプログラムに従って通信端末が処理を実行すると、発明22の通信端末と同等の作用が得られる。
さらに、発明38の通信端末用プログラムは、発明37の通信端末用プログラムにおいて、コンピュータからなる発明23の通信端末に実行させるためのプログラムであって、前記更新鍵を受信したときは、受信した更新鍵に基づいて、当該通信端末が保持している暗号鍵、MAC鍵およびIVを更新する処理を実行させるためのプログラムである。
【0065】
このような構成であれば、通信端末によってプログラムが読み取られ、読み取られたプログラムに従って通信端末が処理を実行すると、発明23の通信端末と同等の作用が得られる。
さらに、発明39の通信端末用プログラムは、発明32ないし38のいずれかの通信端末用プログラムにおいて、前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵およびIVのうちいずれかである。
【0066】
このような構成であれば、通信端末によってプログラムが読み取られ、読み取られたプログラムに従って通信端末が処理を実行すると、発明24の通信端末と同等の作用が得られる。
一方、上記目的を達成するために、発明40の秘密分散法による鍵管理方法は、通信を行う通信端末と、前記通信端末が通信に利用する鍵の利用適格を検証する検証センタとを通信可能に接続し、前記検証センタによる認証を得て、前記通信端末が通信するメッセージを演算する方法であって、前記検証センタには、前記鍵を秘密分散法により分散した分散鍵のうち第1分散鍵を検証用生体情報と対応付けて記憶させておくとともに、前記通信端末には、前記分散鍵のうち第2分散鍵を記憶させておき、前記通信端末で入力した生体情報および前記検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記検証に用いた検証用生体情報に対応する第1分散鍵、および前記第2分散鍵に基づいて前記メッセージを演算する。
【0067】
【発明の実施の形態】
以下、本発明の第1の実施の形態を図面を参照しながら説明する。図1ないし図9は、本発明に係る秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法の第1の実施の形態を示す図である。
【0068】
本実施の形態は、本発明に係る秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法を、図1に示すように、SSL(Secure Socket Layer )のクライアント認証に使用する署名鍵の鍵管理を行う場合について適用したものである。SSLは、クライアント・サーバ型のプロトコルで、現在最もよく使われているセキュリティプロトコルの一つである。SSLのクライアント認証では、クライアントが署名鍵を用いてメッセージm(例えば、乱数文字列)に対して正しいディジタル署名を演算することができるか否かにより認証を行う。なお、SSLについては、「http://home.netscape.com/eng/ssl3/draft302.txt」のURLにより特定されるホームページに詳しい。
【0069】
まず、本発明を適用するネットワークシステムの構成を図1を参照しながら説明する。図1は、本発明を適用するネットワークシステムの構成を示すブロック図である。
インターネット199には、図1に示すように、SSLサーバ300と、SSLサーバ300が携帯端末200を認証する際に必要な署名鍵SKの利用適格を検証する検証センタ100と、携帯端末200とインターネット199との通信を中継する中継局220とが接続されている。
【0070】
中継局220には、携帯端末200と無線通信を行う複数の基地局210が接続されており、中継局220は、携帯端末200がインターネット199に接続するときは、携帯端末200に代わってインターネット199上での一端末となって、基地局210を介して受信した携帯端末200からのデータをインターネット199を介して目的の端末に送信するとともに、インターネット199上にある目的の端末のデータを基地局210を介して携帯端末200に送信するようになっている。
【0071】
次に、本発明の原理を図2ないし図8を参照しながら説明する。
図2に本発明の概略的な構成を示す。
本システムは、図2に示すように、ユーザの利用に供する携帯端末200と、第三者機関(以下、検証センタ100という。)とから構成される。
まず、鍵情報は、秘密分散法を用いて2つの分散署名鍵SKA,SKBに分散する。なお、秘密分散法については、「現代暗号」(著者:岡本龍明、山本博資、出版:産業図書)に詳しい。
【0072】
秘密分散法を用いることにより、メッセージmを元の署名鍵SKを用いて演算した結果DSK(m)と、分散署名鍵SKA,SKBを用いて順次演算した結果DSKB(DSKA(m))とが等しくなるように鍵情報を分散することができる。分散署名鍵SKA,SKBと署名鍵SKとの関係は、メッセージmを演算したとき、下式(1)に示すようになる。
DSK(m)=DSKB(DSKA(m)) …(1)
また、分散署名鍵SKA,SKB単独では、元の署名鍵SKを復元するためのいかなる情報も与えない。これらの性質を利用し、分散署名鍵SKAを検証センタ100に、分散署名鍵SKBを携帯端末200内に保管することより、検証センタ100および携帯端末200のどちらの分散署名鍵が漏洩した場合においても元の署名鍵SKが漏洩することを防止する。
【0073】
一方、正規のユーザの生体情報は、検証用生体情報として検証センタ100に保管し、これを基に検証センタ100はユーザ認証を行い、正規ユーザとして認証したときのみ分散署名鍵SKAを用いた演算処理を行う。検証用生体情報は、検証センタ100がユーザを認証するときのみ使用する値であるため、検証センタ100が検証用生体情報を他の認証に悪用することはできない。また、もし第三者に検証用生体情報が漏洩した場合においても、分散署名鍵SKAを用いた演算結果が漏洩する可能性はあるが、元の署名鍵SKを用いた演算結果が漏洩することを防止できる。
【0074】
次に、正規ユーザに対してのみ署名鍵SKを用いた演算処理を行うための認証手順を説明する。
図3にシーケンスを示す。
検証センタ100と携帯端末200との間では、図3に示すように、生体情報および演算するメッセージに関する通信を行うため、両者の間では、安全な通信路が確保されていることが求められる。安全な通信路の確保の仕方については、後述する方法、または、認証機能や暗号機能を有する既存のセキュリティプロトコルを用いる方法がある。携帯端末200は、検証センタ100との間に安全な通信路を確保した後、検証センタ100にユーザの生体情報および演算するメッセージmを送信する。それを受信した検証センタ100は、バイオ認証によりユーザ認証を行い、正規ユーザとして認証したとき、検証センタ100内の分散署名鍵SKAを用いてメッセージmの演算を行い、その結果DSKA(m)を携帯端末200に送信する。携帯端末200は、検証センタ100より受信した演算結果DSKA(m)を携帯端末200内の分散署名鍵SKBでさらに演算することで、元の署名鍵SKを用いた演算結果DSKB(DSKA(m))=DSK(m)を取得する(上式(1)より)。これにより、正規ユーザのみ署名鍵SKを用いた演算処理を実現可能となる。
【0075】
次に、検証センタ100・携帯端末200間の安全な通信路の確保の仕方を説明する。
安全な通信路の確保のためには、正しい検証センタ100との間に、データの暗号化に利用する暗号鍵、メッセージが改竄されていないことを確かめるためのMAC鍵、暗号化メッセージの解析を困難にするためのIVを秘密裡に共有することが必要である。本発明では、ディジタル署名法により正しい検証センタ100を認証し、Diffie-Hellmanまたは秘密分散法を用いて暗号鍵、MAC鍵、IVを共有する方法を提案する。なお、ディジタル署名法については、「ディジタル署名と暗号技術」(著者:ウォーウィック・フォード他、出版:ブレンティスホール出版)に、Diffie-Hellmanについては、「現代暗号」(著者:岡本龍明、山本博資、出版:産業図書)に、IVについては、「SSL and TLS Essentials」(著者:Stephen Thomas、出版:Wiley)にそれぞれ詳しい。
【0076】
Diffie-Hellmanとは、2者間で秘密裡に暗号鍵Kを共有するための暗号方式の一つである。今、A,Bは、それぞれ自分しか知らない値x,yを保有していて、素数pと乗法群Zpの原始元gが公開されているとする。この際、A,Bは、それぞれ自分の知っている情報x,yを用いて計算したa=gx mod p、b=gy mod pを交換する。A,Bは、受信したb,aを基にそれぞれbx mod p、ay mod pをさらに計算することにより、暗号鍵K(=(gx)y mod p=(gy)x mod p)を共有することができる。
【0077】
一方、秘密分散法を用いた方法とは、ディジタル署名の特性を応用し、分散署名鍵を持つ2者間で秘密裡に情報Kを共有するための方式である。ディジタル署名とは、誰にでも利用できるように公開されている検証鍵PKと、正規ユーザのみが利用できる署名鍵SKの2つの鍵から構成されている暗号化アルゴリズムのことで、任意のチャンレンジmに対して相手が署名鍵SKを用いてディジタル署名DSK(m)を計算することができるか否かにより相手認証を行う。
EPK(DSK(m))=m …(2)
この特性と上式(1)の性質を応用することにより2者間で秘密裡に情報Kを共有することができる。今、A,Bがそれぞれ署名鍵SKを分散した分散署名鍵SKA,SKBを保有し、Aのみが情報Kを保有していたとする。Aは、自分の分散署名鍵SKAを用いてKを演算し、その結果DSKA(K)をBに送信する。Bは、SKBを保有しているため、これを用いてDSKA(K)をさらに演算することができ、その演算結果DSKB(DSKA(K))=DSK(K)(上式(1)より)を検証鍵PKで演算することによりK=EPK(DSK(K))(上式(2)より)を求めることができる。これにより、A,B間で秘密裡に情報Kを共有することができる。
【0078】
まず、Diffie-Hellmanを用いる場合について図4にシーケンスを示す。
携帯端末200では、図4に示すように、乱数xを生成し、a=gx mod pを計算する。そして、暗号化アルゴリズムの候補リスト、a=gx mod p、原始元g、素数pを平文のまま検証センタ100に送信する。
検証センタ100では、それらを受信したときは、暗号化アルゴリズムの候補リストのなかから実際に利用するアルゴリズムを選択し、K=ay mod pを計算し、暗号鍵、MAC鍵、IVを求める。次いで、乱数yを生成し、受信したp,gを用いてb=gy mod pを計算し、携帯端末200が検証センタ100を認証するためのチャレンジ(乱数文字列)として、bをハッシュ鍵としたaのハッシュ値H(a,b)を計算する。携帯端末200および検証センタ100単独で自由に選択できない値であるため、選択平文攻撃を防止することが可能である。なお、ハッシュ値H(a,b)の計算については、「RFC2104,HMAC:Keyed-Hashing for Message Authentication」に、選択平文攻撃については、「暗号のすべてがわかる本」(著者:吹田智草、出版:技術評論社)にそれぞれ詳しい。
【0079】
次いで、選択した暗号化アルゴリズム、検証センタ100の電子証明書、b=gy mod pおよびセッンョンIDのディジタル署名を計算し、選択した暗号化アルゴリズム、検証センタ100の電子証明書、b=gy mod p、セッションIDおよびそれらのディジタル署名を平文のまま携帯端末200に送信する。
【0080】
携帯端末200では、それらを受信したときは、受信したbよりハッシュ値H(a,b)を計算し、検証センタ100の検証鍵でディジタル署名を検証し、検証センタ100を認証する。次いで、K=bx mod pを計算し、暗号鍵、MAC鍵、IVを生成する。
以上の手順により、検証センタ100と携帯端末200との間で安全な通信路を確保し、メッセージのやり取りを実施する。ただし、暗号化するメッセージの範囲は、ユーザの生体情報、演算を必要とするメッセージ等、第三者が予測することのできないものに限定することにより既知平文攻撃を防止する。なお、既知平文攻撃については、「暗号のすべてがわかる本」(著者:吹田智草著、出版:技術評論社)に詳しい。
【0081】
また、メッセージの完全性を保証するために、送信するメッセージにMACを添付する。MACとは、例えば、送信するメッセージと、MAC鍵と、シーケンス番号のハッシュ値等を結合したもので、これを同時に送信することにより、メッセージの改竄、リプレイ攻撃を早期検出することができる。
さらに、検証センタ100から携帯端末200に送信する最後のメッセージに、次回のセッションIDおよび暗号鍵、MAC鍵、IVを更新するための乱数Rを送信することにより高速性を実現する。
【0082】
次に、秘密分散法を用いる場合についてシーケンスを図5に示す。
携帯端末200では、図5に示すように、乱数xを生成し、暗号化アルゴリズムの候補リスト、乱数x、ユーザIDを平文のまま検証センタ100に送信する。
検証センタ100では、それらを受信したときは、暗号化アルゴリズムの候補リストのなかから実際に利用するアルゴリズムを選択し、検証センタ100で生成した乱数yおよび受信した乱数xを基にしたハッシュ値を計算し、暗号鍵、MAC鍵、IVの種を求める。この種を用いることにより、例えば、図6に示すように、ハッシュ値H(ASCII charactor 'A','BB',or'CCC',…‖x‖y‖種)を計算し、暗号鍵、MAC鍵、IVを生成する。
【0083】
次いで、携帯端末200が検証センタ100を認証するためのチャレンジとして、yをハッシュ鍵としたxのハッシュ値H(x,y)を計算する。携帯端末200および検証センタ100単独で自由に選択できない値であるため、選択平文攻撃を防止可能である。
次いで、ユーザIDと対応した分散署名鍵SKAを用いて乱数yを演算する。これにより、分散署名鍵SKBを保有している相手のみ乱数yを求めることが可能な値DSKA(y)を生成できる。
【0084】
次いで、選択した暗号化アルゴリズム、検証センタ100の電子証明書、DSKA(y)およびセッションIDのディジタル署名を計算し、選択した暗号化アルゴリズム、検証センタ100の電子証明書、DSKA(y)、セッションIDおよびそれらのディジタル署名を平文のまま携帯端末200に送信する。
携帯端末200では、それらを受信したときは、受信したDSKA(y)を、携帯端末200に保管している分散署名鍵SKBでさらに演算し、その結果DSKB(DSKA(y))=DSK(y)(上式(1)より)をユーザの検証鍵で演算することにより乱数y=EPK(DSK(y))を求める。
【0085】
次いで、乱数yをハッシユ鍵として乱数xのハッシュ値H(x,y)を計算し、検証センタ100の検証鍵でディジタル署名を検証し、検証センタ100を認証する。そして、上記に示した検証センタ100と同様の方法で、乱数x,yのハッシュ値より種を生成し、その値を基に暗号鍵、MAC鍵、IVを生成する。
以上の手順により、検証センタ100と携帯端末200との間で安全な通信路を確保し、メッセージのやり取りを実施する。ただし、暗号化するメッセージの範囲は、ユーザの生体情報、演算を必要とするメッセージ等、第三者が予測することのできないものに限定することにより既知平文攻撃を防止する。
【0086】
また、メッセージの完全性を保証するために、送信するメッセージにMACを添付する。
さらに、検証センタ100から携帯端末200に送信する最後のメッセージに、次回のセッションIDおよび暗号鍵、MAC鍵、IVを更新するための乱数Rを送信することにより高速性を実現する。
【0087】
秘密分散法を用いて暗号鍵を共有する方式は、暗号化システム全般に使用することができず、利用用途がディジタル署名の署名鍵管理に限定される。しかし、ブラインド署名(参考:岡本龍明、山本博資、「現代暗号」産業図書)を使用することができるため、演算するメッセージを検証センタ100に隠匿することができる。また、検証センタ100が分散署名鍵SKAを用いて正しく演算したか否かを携帯端末200側で検証することも可能である。なお、ブラインド署名については、「現代暗号」(著者:岡本龍明、山本博資、出版:産業図書)に詳しい。
【0088】
次に、検証センタ100と携帯端末200との間の通信路の安全性を高速に確保する方法を説明する。
ディジタル署名の署名鍵管理に本システムを用いる場合、認証中にバイオ認証によるユーザ認証を行い、分散署名鍵を用いたチャレンジ演算を行わなければならないため、高速性が求められる場合がある。
【0089】
図7にシーケンスを示す。
携帯端末200では、図7に示すように、検証センタ100より受信した乱数Rを基に、暗号鍵、MAC鍵、IVを更新する。例えば、図8に示すように、乱数Rをハッシュ鍵として、ASCII charactor ‘A’,‘BB’,or‘CCC’,…、前回利用した暗号鍵、MAC鍵、IVのハッシュ値を計算し、その値と乱数Rのハッシュ値をさらに計算することにより新しい暗号鍵、MAC鍵、IVを生成する。
【0090】
以上の手順により、検証センタ100と携帯端末200との間で安全な通信路を確保し、メッセージのやり取りを実施する。ただし、暗号化するメッセージの範囲は、ユーザの生体情報、演算を必要とするメッセージ等、第三者が予測することのできないものに限定することにより既知平文攻撃を防止する。
また、メッセージの完全性を保証するために、送信するメッセージにMACを添付する。
【0091】
さらに、検証センタ100から携帯端末200に送信する最後のメッセージに、次回のセッションおよび暗号鍵、MAC鍵、IVを更新するための乱数Rを送信することにより高速性を繰り返し実現することができる。
次に、本実施の形態の動作を図9を参照しながら説明する。図9は、Diffie-Hellmanを用いた場合についてのシーケンスを示す図である。
【0092】
携帯端末200では、図9に示すように、ステップS100,S102を経て、乱数xを生成し、原始元g、乱数xおよび素数pを使ってa=gx mod pを計算し、計算値a、素数pおよび原始元gを検証センタ100に送信する。このとき、検証センタ100と携帯端末200との間の通信に利用する暗号化アルゴリズムの候補リストも送信する。
【0093】
検証センタ100では、それらを受信したときは、ステップS150,S152を経て、乱数yを生成し、計算値a、乱数yおよび素数pを使ってK=ay mod pを計算し、これを暗号鍵、MAC鍵およびIVとする。次いで、ステップS154を経て、受信した暗号化アルゴリズムの候補リストのなかから実際に利用する暗号化アルゴリズムを選択し、原始元g、乱数yおよび素数pを使ってb=gy mod pを計算する。さらに、ステップS156を経て、計算値bをハッシュ鍵とした計算値aのハッシュ値H(a,b)を計算することにより検証センタ100および携帯端末200単独で自由にチャレンジを選択できないようにする。そして、ステップS158を経て、暗号化アルゴリズム、計算値b、検証センタ100の電子証明およびセッションIDのディジタル署名を計算し、暗号化アルゴリズム、計算値b、検証センタ100の電子証明、セッションIDおよびそれらのディジタル署名を携帯端末200に送信する。
【0094】
携帯端末200では、それらを受信したときは、ステップS104,S106を経て、ハッシュ値H(a,b)を計算し、検証センタ100の検証鍵でディジタル署名を検証し、検証センタ100を認証する。次いで、ステップS108を経て、計算値b、乱数xおよび素数pを使ってK=bx mod pを計算し、計算値Kを使って検証センタ100と共通の暗号鍵、MAC鍵およびIVを計算する。そして、ステップS110,S112を経て、第三者に予測できない生体情報および演算を必要とするSSLのメッセージmのみを暗号鍵およびIVを用いて暗号化し、メッセージの改竄およびリプレイ攻撃を早期検出できるように、ユーザの生体情報、SSLのメッセージm、シーケンス番号およびMAC鍵のハッシュ値を計算し、これを暗号化メッセージおよびシーケンス番号とともに検証センタ100に送信する。
【0095】
検証センタ100では、それらを受信したときは、ステップS160を経て、暗号化メッセージ、シーケンス番号およびMAC鍵のハッシュ値を計算し、メッセージが改竄されていないこと、リプレイ攻撃でないことを検証する。次いで、ステップS162,S164を経て、携帯端末200と共有した暗号鍵、IVを用いて暗号化メッセージを復号化し、ユーザの生体情報および検証用生体情報に基づいてバイオ認証によりユーザ認証する。その結果、正規ユーザとして認証したときは、ステップS166〜S170を経て、検証センタ100の分散署名鍵SKAを用いてSSLのメッセージmを演算し、次回の暗号鍵、MAC鍵およびIVを更新するために使用する乱数Rを生成し、演算結果DSKA(m)、次回のセッションIDおよび乱数Rを暗号化する。そして、ステップS172を経て、メッセージの改竄およびリプレイ攻撃を早期検出するために、暗号化メッセージ、シーケンス番号およびMAC鍵のハッシュ値を計算し、これを暗号化メッセージおよびシーケンス番号とともに携帯端末200に送信する。
【0096】
携帯端末200では、それらを受信したときは、ステップS114を経て、暗号化メッセージ、シーケンス番号およびMAC鍵のハッシュ値を計算し、メッセージが改竄されていないこと、リプレイ攻撃でないことを検証する。次いで、ステップS116,S118を経て、検証センタ100と共有した暗号鍵、IVを用いて暗号化メッセージを復号化し、SSLのメッセージmの演算結果DSKA(m)を携帯端末200内の分散署名鍵SKBを用いてさらに演算する。これにより、携帯端末200では、SSLチャレンジに対する正しい演算結果DSK(m)=DSKB(DSKA(m))(上式(1)より)を演算することができ、これをSSLサーバ300に送信することにより正規SSLクライアントとして認証される。
【0097】
このようにして、本実施の形態では、検証センタ100は、メッセージmおよび生体情報を受信したときは、受信した生体情報および検証用生体情報に基づいて署名鍵SKの利用適格を検証し、その検証により認証が得られたときは、検証に用いた検証用生体情報に対応する分散署名鍵SKAに基づいて、受信したメッセージmを演算し、その演算メッセージを携帯端末200に送信するようになっており、携帯端末200は、メッセージmおよびユーザの生体情報を検証センタ100に送信し、その送信により演算メッセージを受信したときは、分散署名鍵SKBに基づいて、受信した演算メッセージを演算するようになっている。
【0098】
これにより、秘密分散法により分散した分散署名鍵のうち一部を検証センタ100に保持し、生体情報を用いた個人認証により検証センタ100の分散署名鍵SKAの利用可否を判定するため、携帯端末200が第三者に無断で利用された場合、および分散署名鍵が盗まれた場合に、携帯端末200が利用する署名鍵SKが第三者に漏洩する可能性を低減することができる。したがって、従来に比して、セキュリティを比較的向上することができる。
【0099】
さらに、本実施の形態では、携帯端末200は、メッセージmおよび生体情報の送信に先立って検証センタ100の正当性を検証し、その検証より認証が得られた場合に限り、メッセージmおよび生体情報を検証センタ100に送信するようになっている。
これにより、正当な検証センタ100に対してのみメッセージmおよび生体情報が送信されるので、メッセージmおよび生体情報が第三者に漏洩する可能性を低減することができる。したがって、セキュリティをさらに向上することができる。
【0100】
さらに、本実施の形態では、携帯端末200は、メッセージmおよび生体情報の送信に先立って検証センタ100との間で暗号化通信路を確立し、メッセージm、生体情報および演算メッセージに関する送受信を暗号化通信路を通じて行うようになっており、検証センタ100は、メッセージmおよび生体情報の受信に先立って携帯端末200との間で暗号化通信路を確立し、メッセージm、生体情報および演算メッセージに関する送受信を暗号化通信路を通じて行うようになっている。
【0101】
これにより、携帯端末200と検証センタ100との間では、メッセージm、生体情報および演算メッセージに関する送受信が暗号化通信路を通じて行われるので、メッセージm、生体情報および演算メッセージが第三者に漏洩する可能性を低減することができる。したがって、セキュリティをさらに向上することができる。
【0102】
さらに、本実施の形態では、携帯端末200は、複数の暗号化アルゴリズムのなかから暗号化通信路の確立に用いるものを検証センタ100とのネゴシエーションにより決定し、決定した暗号化アルゴリズムに基づいて暗号化通信路を確立するようになっており、検証センタ100は、複数の暗号化アルゴリズムのなかから暗号化通信路の確立に用いるものを携帯端末200とのネゴシエーションにより決定し、決定した暗号化アルゴリズムに基づいて暗号化通信路を確立するようになっている。
【0103】
これにより、携帯端末200と検証センタ100との間では、複数の暗号化アルゴリズムのうちネゴシエーションにより決定したものに基づいて暗号化通信路が確立されるので、メッセージm、生体情報および演算メッセージが第三者に漏洩する可能性をさらに低減することができる。したがって、セキュリティをさらに向上することができる。
【0104】
さらに、本実施の形態では、検証センタ100は、暗号鍵、MAC鍵およびIVの更新に用いる乱数Rを生成し、生成した乱数Rに基づいて、検証センタ100が保持している暗号鍵、MAC鍵およびIVを更新し、生成した乱数Rを携帯端末200に送信するようになっており、携帯端末200は、乱数Rを受信したときは、受信した乱数Rに基づいて、携帯端末200が保持している暗号鍵、MAC鍵およびIVを更新するようになっている。
【0105】
これにより、携帯端末200において、暗号鍵、MAC鍵およびIVの更新を比較的容易に行えるので、携帯端末200と検証センタ100との間で通信遅延を低減することができる。
さらに、本実施の形態においては、通信相手を検証センタ100に特定し鍵管理専用のプロトコルを採用することにより、検証センタ100と携帯端末200との間で周知技術(SSL、IPSec(IP security protocol)等)を用いる場合よりもセキュリティを強化するとともに高速性を向上させることができる。例えば、周知技術では、第三者に公開されているメッセージ、秘匿されているメッセージにかかわらず暗号化するのに対して、本発明に係るプロトコルにおいては、第三者に秘匿されているメッセージのみを暗号化の対象とすることにより既知平文攻撃への耐性を向上させている。また、周知技術よりもRTT数を削減することができるとともに、不特定多数相手の公開鍵認証で必要となるASN.1を事前に実施するなどにより計算量も大きく削減することができる。これにより、ユーザの利便性を向上させるだけでなく、DoS(Denial of Service)攻撃を早期検出することも可能となる。また、本実施の形態で挙げたように、公開鍵認証の鍵管理を行う場合には、認証時間がタイムアウトしないうちに安全な通信路の確保、バイオ認証、分散署名鍵による演算処理を実施する必要があるため、鍵管理プロトコルには、高速性が求められる。有線ネットワークと比較して伝送遅延の大きい無線ネットワークにおいては、RTT数がボトルネックとなるため、RTT数を削減する本発明は、モバイル環境化で利用する場合には、特に周知技術より優れた方式であるといえる。
【0106】
上記第1の実施の形態において、暗号化は、発明1、2、10、17、25、32または40の演算に対応し、携帯端末200は、発明1ないし8、10ないし15、17ないし30、32ないし38または40の通信端末に対応し、メッセージmは、発明1ないし5、10ないし12、17ないし20、25ないし27、32ないし35または40のメッセージに対応している。また、暗号化メッセージは、発明2、3、5、10ないし12、17、18、20、25ないし27、32、33または35の演算メッセージに対応し、分散署名鍵SKAは、発明1、2、10、25または40の第1分散鍵に対応し、分散署名鍵SKBは、発明1、2、17、32または40の第2分散鍵に対応している。
【0107】
また、上記第1の実施の形態において、乱数Rは、発明8、15、23、30または38の更新鍵に対応している。
次に、本発明の第2の実施の形態を図面を参照しながら説明する。図10は、本発明に係る秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法の第2の実施の形態を示す図である。以下、上記第1の実施の形態と異なる部分についてのみ説明をし、重複する部分については同一の符号を付して説明を省略する。
【0108】
本実施の形態は、本発明に係る秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法を、上記第1の実施の形態と同様に、SSLのクライアント認証に使用する署名鍵の鍵管理を行う場合について適用したものである。
本実施の形態の動作を図10を参照しながら説明する。図10は、ディジタル署名を用いた場合についてのシーケンスを示す図である。
【0109】
携帯端末200では、図10に示すように、ステップS200を経て、乱数xを生成し、検証センタ100と携帯端末200との間の通信に利用する暗号化アルゴリズムの候補リスト、乱数xおよびユーザIDを検証センタ100に送信する。
検証センタ100では、それらを受信したときは、ステップS250,S252を経て、乱数yを生成し、乱数xおよび乱数yを使ってハッシュ値H(x‖y)を計算し、これを暗号鍵、MAC鍵およびIVの種とする。暗号鍵、MAC鍵およびIVは、図6に示すように、この種と乱数x、乱数yおよびASCII charactor ‘A’,‘BB’,or‘CCC’,…のハッシュをとることにより生成する。携帯端末200にも同じ値を生成できるように、ユーザIDと対応した分散署名鍵SKAで乱数yを演算する。また、検証センタ100では、受信した暗号化アルゴリズムの候補リストのなかから実際に利用する暗号化アルゴリズムを選択し、乱数yをハッシュ鍵とした乱数xのハッシュ値H(x,y)を計算することにより検証センタ100および携帯端末200単独で自由にチャレンジを選択できないようにする。そして、ステップS258を経て、暗号化アルゴリズム、乱数yを分散署名鍵SKAで演算した結果DSKA(y)、ハッシュ値H(x,y)、検証センタ100の電子証明書およびセッションIDのディジタル署名を計算し、暗号化アルゴリズム、乱数yを分散署名鍵SKAで演算した結果DSKA(y)、ハッシュ値H(x,y)、検証センタ100の電子証明書、セッションIDおよびそれらのディジタル署名を携帯端末200に送信する。
【0110】
携帯端末200では、それらを受信したときは、ステップS202,S204を経て、計算値DSKA(y)を携帯端末200内の分散署名鍵SKBを用いてさらに演算し、その演算結果DSKB(DSKA(y))=DSK(y)を検証鍵PKで演算することにより乱数y=EPK(DSKA(y))を求める。次いで、ステップS206,S208を経て、乱数yを使ってハッシュ値H(x,y)を計算し、検証センタ100の検証鍵PKでディジタル署名を検証し、検証センタ100を認証する。次いで、ステップS210を経て、ハッシュ値H(x‖y)を計算し、この値と乱数x、乱数yおよびASCII charactor ‘A’,‘BB’,or‘CCC’,…のハッシュをとることにより暗号鍵、MAC鍵およびIVを生成する。第三者に予測できない生体情報、演算を必要とするSSLのメッセージm等を暗号鍵およびIVを用いて暗号化する。また、メッセージの改竄およびリプレイ攻撃を早期検出できるように、ユーザの生体情報、SSLのメッセージm、シーケンス番号およびMAC鍵のハッシュ値を計算し、これを暗号化メッセージおよびシーケンス番号とともに検証センタ100に送信する。SSLのメッセージmを検証センタ100に通知したくないときは、ブラインド署名を用いることにより検証センタ100に対してチャレンジを隠匿したまま分散署名鍵SKAを用いた演算のみを行わせることができる。
【0111】
検証センタ100では、それらを受信したときは、ステップS260を経て、暗号化メッセージ、シーケンス番号およびMAC鍵のハッシュ値を計算し、メッセージが改竄されていないこと、リプレイ攻撃でないことを検証する。次いで、ステップS262,S264を経て、携帯端末200と共有した暗号鍵およびIVを用いて暗号化メッセージを復号化し、ユーザの生体情報および検証用生体情報に基づいてバイオ認証によりユーザ認証する。その結果、正規ユーザとして認証したときは、ステップS266〜S270を経て、検証センタ100の分散署名鍵SKAを用いてSSLのメッセージmを演算し、次回のセッションID、MAC鍵およびIVを更新するために使用する乱数Rを生成し、乱数Rおよび演算結果DSKA(y)を暗号化する。そして、ステップS272を経て、メッセージの改竄およびリプレイ攻撃を早期検出するために、暗号化メッセージ、MAC鍵およびシーケンス番号のハッシュ値を計算し、これを暗号化メッセージおよびシーケンス番号とともに携帯端末200に送信する。
【0112】
携帯端末200では、それらを受信したときは、ステップS216を経て、暗号化メッセージ、シーケンス番号およびMAC鍵のハッシュ値を計算し、メッセージが改竄されていないこと、リプレイ攻撃でないことを検証する。次いで、ステップS218,S220を経て、検証センタ100と共有した暗号鍵およびIVを用いて暗号化メッセージを復号化し、SSLのチャレンジの演算結果DSKA(y)を携帯端末200内の分散署名鍵SKBを用いてさらに演算する。これにより、携帯端末200は、SSLチャレンジに対する正しい演算結果をDSK(y)=DSKB(DSKA(y))(上式(1)より)演算することができ、これをSSLサーバ300に送信することにより正規SSLクライアントとして認証される。この際、ユーザの検証鍵PKでDSK(y)を演算することにより、検証センタ100が分散署名鍵SKAを用いて正しく演算したか否かを検証することもできる。
【0113】
このようにして、本実施の形態では、検証センタ100は、メッセージmおよび生体情報を受信したときは、受信した生体情報および検証用生体情報に基づいて署名鍵SKの利用適格を検証し、その検証により認証が得られたときは、検証に用いた検証用生体情報に対応する分散署名鍵SKAに基づいて、受信したメッセージmを演算し、その演算メッセージを携帯端末200に送信するようになっており、携帯端末200は、メッセージmおよびユーザの生体情報を検証センタ100に送信し、その送信により演算メッセージを受信したときは、分散署名鍵SKBに基づいて、受信した演算メッセージを演算するようになっている。
【0114】
これにより、秘密分散法により分散した分散署名鍵のうち一部を検証センタ100に保持し、生体情報を用いた個人認証により検証センタ100の分散署名鍵SKAの利用可否を判定するため、携帯端末200が第三者に無断で利用された場合、および分散署名鍵が盗まれた場合に、携帯端末200が利用する署名鍵SKが第三者に漏洩する可能性を低減することができる。したがって、従来に比して、セキュリティを比較的向上することができる。
【0115】
なお、他の構成についても、上記第1の実施の形態と同等の効果が得られる。
上記第2の実施の形態において、暗号化は、発明1、2、10、17、25、32または40の演算に対応し、携帯端末200は、発明1ないし8、10ないし15、17ないし30、32ないし38または40の通信端末に対応し、メッセージmは、発明1ないし5、10ないし12、17ないし20、25ないし27、32ないし35または40のメッセージに対応している。また、暗号化メッセージは、発明2、3、5、10ないし12、17、18、20、25ないし27、32、33または35の演算メッセージに対応し、分散署名鍵SKAは、発明1、2、10、25または40の第1分散鍵に対応し、分散署名鍵SKBは、発明1、2、17、32または40の第2分散鍵に対応している。
【0116】
また、上記第2の実施の形態において、乱数Rは、発明8、15、23、30または38の更新鍵に対応している。
次に、本発明の第3の実施の形態を図面を参照しながら説明する。図11は、本発明に係る秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法の第3の実施の形態を示す図である。以下、上記第1の実施の形態と異なる部分についてのみ説明をし、重複する部分については同一の符号を付して説明を省略する。
【0117】
本実施の形態は、本発明に係る秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法を、上記第1の実施の形態と同様に、SSLのクライアント認証に使用する署名鍵の鍵管理を行う場合について適用したものである。
本実施の形態の動作を図11を参照しながら説明する。図11は、検証センタ100と携帯端末200との間の通信路の安全を高速に確保した場合についてのシーケンスを示す図である。ただし、この方法は、前回利用した暗号鍵、MAC鍵およびIVが有効なときに利用できる。
【0118】
携帯端末200および検証センタ100では、図11に示すように、ステップS300,S350をそれぞれ経て、前回のセッションで受信した乱数Rをハッシュ鍵として、前回利用した暗号鍵、MAC鍵、IVおよびASCII charactor ‘A’,‘BB’,or‘CCC’,…のハッシュ値を計算し、これを新しい暗号鍵、MAC鍵およびIVとする。なお、前回利用した暗号鍵、MAC鍵およびIVと生体情報とは、例えば、データベース等の記憶手段に対応付けて格納しておくものとする。
【0119】
携帯端末200では、ステップS302を経て、第三者に予測できない生体情報および演算を必要とするSSLのメッセージm等を、暗号鍵およびIVを用いて暗号化する。そして、ステップS304を経て、メッセージの改竄およびリプレイ攻撃を早期検出できるように、ユーザの生体情報、SSLのメッセージm、シーケンス番号およびMAC鍵のハッシュ値を計算し、これを暗号化メッセージとともに検証センタ100に送信する。
【0120】
検証センタ100では、それらを受信したときは、ステップS352を経て、暗号化メッセージ、シーケンス番号およびMAC鍵のハッシュ値を計算し、メッセージが改竄されていないこと、リプレイ攻撃でないことを検証する。次いで、ステップS354,S356を経て、携帯端末200と共有した暗号鍵およびIVを用いて暗号化メッセージを復号化し、ユーザの生体情報および検証用生体情報に基づいてバイオ認証によりユーザ認証する。その結果、正規ユーザとして認証したときは、ステップS358〜S362を経て、検証センタ100の分散署名鍵SKAを用いてSSLのメッセージmを演算し、次回の暗号鍵、MAC鍵およびIVを更新するために使用する乱数Rを生成し、演算結果DSKA(m)および乱数Rを暗号化する。そして、ステップS364を経て、メッセージの改竄およびリプレイ攻撃を早期検出するために、暗号化メッセージ、MAC鍵およびシーケンス番号のハッシュ値を計算し、これを暗号化メッセージおよびシーケンス番号とともに携帯端末200に送信する。
【0121】
携帯端末200では、それらを受信したときは、ステップS306を経て、暗号化メッセージ、シーケンス番号およびMAC鍵のハッシュ値を計算し、メッセージが改竄されていないこと、リプレイ攻撃でないことを検証する。そして、ステップS308,S310を経て、携帯端末200と共有した暗号鍵およびIVを用いて暗号化メッセージを復号化し、SSLのメッセージmの演算結果DSKA(m)を携帯端末200内の分散署名鍵SKBを用いてさらに演算する。これにより、携帯端末200は、SSLチャレンジに対する正しい演算結果DSK(m)=DSKB(DSKA(m))(上式(1)より)を演算することができ、これをSSLサーバ300に送信することにより正規SSLクライアントとして認証される。
【0122】
このようにして、本実施の形態では、検証センタ100は、メッセージmおよび生体情報を受信したときは、受信した生体情報および検証用生体情報に基づいて署名鍵SKの利用適格を検証し、その検証により認証が得られたときは、検証に用いた検証用生体情報に対応する分散署名鍵SKAに基づいて、受信したメッセージmを演算し、その演算メッセージを携帯端末200に送信するようになっており、携帯端末200は、メッセージmおよびユーザの生体情報を検証センタ100に送信し、その送信により演算メッセージを受信したときは、分散署名鍵SKBに基づいて、受信した演算メッセージを演算するようになっている。
【0123】
これにより、秘密分散法により分散した分散署名鍵のうち一部を検証センタ100に保持し、生体情報を用いた個人認証により検証センタ100の分散署名鍵SKAの利用可否を判定するため、携帯端末200が第三者に無断で利用された場合、および分散署名鍵が盗まれた場合に、携帯端末200が利用する署名鍵SKが第三者に漏洩する可能性を低減することができる。したがって、従来に比して、セキュリティを比較的向上することができる。
【0124】
なお、他の構成についても、上記第1の実施の形態と同等の効果が得られる。
上記第3の実施の形態において、暗号化は、発明1、2、10、17、25、32または40の演算に対応し、携帯端末200は、発明1ないし8、10ないし15、17ないし30、32ないし38または40の通信端末に対応し、メッセージmは、発明1ないし5、10ないし12、17ないし20、25ないし27、32ないし35または40のメッセージに対応している。また、暗号化メッセージは、発明2、3、5、10ないし12、17、18、20、25ないし27、32、33または35の演算メッセージに対応し、分散署名鍵SKAは、発明1、2、10、25または40の第1分散鍵に対応し、分散署名鍵SKBは、発明1、2、17、32または40の第2分散鍵に対応している。
【0125】
また、上記第3の実施の形態において、乱数Rは、発明8、15、23、30または38の更新鍵に対応している。
なお、上記第1ないし第3の実施の形態においては、SSLサーバ300が携帯端末200を認証する際に必要となる署名鍵SKを管理するように構成したが、これに限らず、中継局220を介さず直接インターネット199に接続可能な端末(例えば、ノートパソコン、デスクトップパソコンその他の通信機器)をSSLサーバ300が認証する際に必要な署名鍵を管理するように構成してもよい。
【0126】
また、上記第1ないし第3の実施の形態においては、携帯端末200が実行する処理を、図9ないし図11のシーケンスに基づいて説明したが、より具体的には、図9ないし図11のシーケンスに示す処理のうち携帯端末200が実行すべきものをプログラムとして構成し、構成したプログラムを携帯端末200のRAM等に読み込んで実行するように構成することもできる。
【0127】
また、上記第1ないし第3の実施の形態においては、検証センタ100が実行する処理を、図9ないし図11のシーケンスに基づいて説明したが、より具体的には、図9ないし図11のシーケンスに示す処理のうち検証センタ100が実行すべきものをプログラムとして構成し、構成したプログラムを検証センタ100のRAM等に読み込んで実行するように構成することもできる。
【0128】
また、上記実施の形態においては、検証センタ100および携帯端末200は、メッセージおよび生体情報の送信に先立って通信相手との間で特定通信路を確立し、メッセージ、生体情報および演算メッセージに関する送受信を特定通信路を通じて行うように構成したが、これに限らず、メッセージが電子署名等の機密性の高いものでなければ、メッセージ、生体情報および演算メッセージに関する送受信を平文のまま行うように構成してもよい。
【0129】
また、上記実施の形態においては、本発明に係る秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法を、インターネット199からなるネットワークシステムに適用した場合について説明したが、これに限らず、例えば、インターネット199と同一方式により通信を行ういわゆるイントラネットに適用してもよい。もちろん、インターネット199と同一方式により通信を行うネットワークに限らず、通常のネットワークに適用することもできる。
【0130】
また、上記第1ないし第3の実施の形態においては、本発明に係る秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法を、図1に示すように、SSLのクライアント認証に使用する署名鍵の鍵管理を行う場合について適用したが、これに限らず、本発明の主旨を逸脱しない範囲で他の場合にも適用可能である。
【0131】
【発明の効果】
以上説明したように、発明1ないし9の秘密分散法による鍵管理システムによれば、秘密分散法により分散した分散鍵のうち一部を検証センタに保持し、生体情報を用いた個人認証により検証センタの分散鍵の利用可否を判定するため、通信端末が第三者に無断で利用された場合、および分散鍵が盗まれた場合場合に、通信端末が利用する鍵が第三者に漏洩する可能性を低減することができる。したがって、従来に比して、セキュリティを比較的向上することができるという効果が得られる。
【0132】
さらに、発明3ないし8の秘密分散法による鍵管理システムによれば、通信端末と検証センタとの間では、メッセージ、生体情報および演算メッセージに関する送受信が特定通信路を通じて行われるので、メッセージ、生体情報および演算メッセージが第三者に漏洩する可能性、誤った相手先に通信される可能性、または改竄される可能性を低減することができる。
【0133】
さらに、発明4の秘密分散法による鍵管理システムによれば、正当な検証センタに対してのみメッセージおよび生体情報が送信されるので、メッセージおよび生体情報が第三者に漏洩する可能性を低減することができる。したがって、セキュリティをさらに向上することができるという効果も得られる。
【0134】
さらに、発明5ないし8の秘密分散法による鍵管理システムによれば、通信端末と検証センタとの間では、メッセージ、生体情報および演算メッセージに関する送受信が暗号化通信路を通じて行われるので、メッセージ、生体情報および演算メッセージが第三者に漏洩する可能性を低減することができる。したがって、セキュリティをさらに向上することができるという効果も得られる。
【0135】
さらに、発明6の秘密分散法による鍵管理システムによれば、通信端末と検証センタとの間では、複数の暗号化アルゴリズムまたはMACアルゴリズムのうちネゴシエーションにより決定したものに基づいて暗号化通信路が確立されるので、メッセージ、生体情報および演算メッセージが第三者に漏洩する可能性をさらに低減することができる。したがって、セキュリティをさらに向上することができるという効果も得られる。
【0136】
さらに、発明8の秘密分散法による鍵管理システムによれば、通信端末において、暗号鍵、MAC鍵およびIVの更新を比較的容易に行えるので、通信端末と検証センタとの間で通信遅延を低減することができるという効果も得られる。
一方、発明10ないし16の検証センタによれば、発明1の秘密分散法による鍵管理システムと同等の効果が得られる。
【0137】
さらに、発明11ないし15の検証センタによれば、発明3の秘密分散法による鍵管理システムと同等の効果も得られる。
さらに、発明12ないし15の検証センタによれば、発明5の秘密分散法による鍵管理システムと同等の効果も得られる。
さらに、発明13の検証センタによれば、発明6の秘密分散法による鍵管理システムと同等の効果も得られる。
【0138】
さらに、発明15の検証センタによれば、発明8の秘密分散法による鍵管理システムと同等の効果も得られる。
一方、発明17ないし24の通信端末によれば、発明1の秘密分散法による鍵管理システムと同等の効果が得られる。
さらに、発明18ないし23の通信端末によれば、発明3の秘密分散法による鍵管理システムと同等の効果も得られる。
【0139】
さらに、発明19の通信端末によれば、発明4の秘密分散法による鍵管理システムと同等の効果も得られる。
さらに、発明20ないし23の通信端末によれば、発明5の秘密分散法による鍵管理システムと同等の効果も得られる。
さらに、発明21の通信端末によれば、発明6の秘密分散法による鍵管理システムと同等の効果も得られる。
【0140】
さらに、発明23の通信端末によれば、発明8の秘密分散法による鍵管理システムと同等の効果も得られる。
一方、発明25ないし31の検証センタ用プログラムによれば、発明10の検証センタと同等の効果が得られる。
さらに、発明26ないし30の検証センタ用プログラムによれば、発明11の検証センタと同等の効果も得られる。
【0141】
さらに、発明27ないし30の検証センタ用プログラムによれば、発明12の検証センタと同等の効果も得られる。
さらに、発明28の検証センタ用プログラムによれば、発明13の検証センタと同等の効果も得られる。
さらに、発明30の検証センタ用プログラムによれば、発明15の検証センタと同等の効果も得られる。
【0142】
一方、発明32ないし39の通信端末用プログラムによれば、発明17の通信端末と同等の効果が得られる。
さらに、発明33ないし38の通信端末用プログラムによれば、発明18の通信端末と同等の効果も得られる。
さらに、発明34の通信端末用プログラムによれば、発明19の通信端末と同等の効果も得られる。
【0143】
さらに、発明35ないし38の通信端末用プログラムによれば、発明20の通信端末と同等の効果も得られる。
さらに、発明36の通信端末用プログラムによれば、発明21の通信端末と同等の効果も得られる。
さらに、発明38の通信端末用プログラムによれば、発明23の通信端末と同等の効果も得られる。
【0144】
一方、発明40の秘密分散法による鍵管理方法によれば、発明1の秘密分散法による鍵管理システムと同等の効果が得られる。
【図面の簡単な説明】
【図1】本発明を適用するネットワークシステムの構成を示すブロック図である。
【図2】本発明に係る署名鍵管理および生体情報管理のアーキテクチャを示す図である。
【図3】バイオ認証および分散署名鍵を用いた演算手順を示す図である。
【図4】検証センタ100と携帯端末200との間における通信路の安全性確保の手順(Diffie-Hellman)を示す図である。
【図5】検証センタ100と携帯端末200との間における通信路の安全性確保の手順(秘密分散法)を示す図である。
【図6】暗号鍵、MAC鍵およびIVの生成法(例)を示す図である。
【図7】検証センタ100と携帯端末200との間における通信路の安全性確保の手順(高速バージョン)を示す図である。
【図8】暗号鍵、MAC鍵およびIVの更新法(例)を示す図である。
【図9】 Diffie-Hellmanを用いた場合についてのシーケンスを示す図である。
【図10】ディジタル署名を用いた場合についてのシーケンスを示す図である。
【図11】検証センタ100と携帯端末200との間の通信路の安全を高速に確保した場合についてのシーケンスを示す図である。
【図12】バイオ認証と耐タンパ性のデバイスを使用した従来方式を示す図である。
【符号の説明】
100 検証センタ
200 携帯端末
210 基地局
220 中継局
300 SSLサーバ
Claims (24)
- 通信を行う通信端末と、前記通信端末が通信に利用する鍵の利用適格を検証する検証センタとを通信可能に接続し、前記検証センタによる認証を得て、前記通信端末が通信するメッセージを演算する鍵管理システムであって、
前記検証センタは、前記鍵を秘密分散法により分散した分散鍵のうち第1分散鍵を検証用生体情報と対応付けて記憶するための第1分散鍵記憶手段と、前記通信端末との通信に先立って前記通信端末との間で暗号化通信路を確立する第1確立手段とを有し、前記暗号化通信路を通じて前記メッセージ及び生体情報を受信したときは、該受信した生体情報及び前記第1分散鍵記憶手段の検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記第1分散鍵記憶手段の第1分散鍵のうち前記検証に用いた検証用生体情報に対応するものに基づいて、前記受信したメッセージを演算し、その演算メッセージを前記暗号化通信路を通じて前記通信端末に送信し、
前記通信端末は、前記分散鍵のうち第2分散鍵を記憶するための第2分散鍵記憶手段と、前記生体情報を入力する生体情報入力手段と、前記検証センタとの通信に先立って前記検証センタとの間で前記暗号化通信路を確立する第2確立手段とを有し、前記メッセージ及び前記生体情報入力手段で入力した生体情報を前記暗号化通信路を通じて前記検証センタに送信し、前記暗号化通信路を通じて前記演算メッセージを受信したときは、前記第2分散鍵記憶手段の第2分散鍵に基づいて、前記受信した演算メッセージを演算し、
前記第1確立手段は、第1乱数を受信したときは、第2乱数を生成し、前記受信した第1乱数及び前記生成した第2乱数に基づいて第1暗号鍵を生成し、前記第1分散鍵記憶手段の第1分散鍵及び前記生成した第2乱数に基づいて演算値を生成し、該生成した演算値を前記通信端末に送信する第1暗号鍵生成手段と、暗号鍵の更新に用いる更新鍵を生成し、前記生成した更新鍵に基づいて、当該検証センタが保持している第1暗号鍵を更新し、前記生成した更新鍵を前記通信端末に送信する第1暗号鍵更新手段と、前記第1暗号鍵に基づいて前記暗号化通信路を確立する第1暗号化通信路確立手段とを有し、
前記第2確立手段は、前記第1乱数を生成し、該生成した第1乱数を前記検証センタに送信し、前記演算値を受信したときは、該受信した演算値、前記第2分散鍵記憶手段の第2分散鍵、及び前記分散鍵に対応する検証鍵に基づいて前記第2乱数を取得し、前記生成した第1乱数及び前記取得した第2乱数に基づいて、前記第1暗号鍵に対応する第2暗号鍵を生成する第2暗号鍵生成手段と、前記更新鍵を受信したときは、該受信した更新鍵に基づいて、当該通信端末が保持している第2暗号鍵を更新する第2暗号鍵更新手段と、前記第2暗号鍵に基づいて前記暗号化通信路を確立する第2暗号化通信路確立手段とを有し、
初回の通信については前記第1暗号鍵生成手段及び前記第2暗号鍵生成手段を、2回目以降の通信については前記第1暗号鍵更新手段及び前記第2暗号鍵更新手段を実行することを特徴とする秘密分散法による鍵管理システム。 - 請求項1において、
前記通信端末は、前記メッセージ及び前記生体情報の送信に先立って前記検証センタの正当性を検証し、その検証より認証が得られた場合に限り、前記メッセージ及び前記生体情報を前記検証センタに送信するようになっていることを特徴とする秘密分散法による鍵管理システム。 - 請求項1及び2のいずれかにおいて、
前記通信端末は、複数の暗号化アルゴリズム又はMAC(Message Authentication Code)アルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記検証センタとのネゴシエーションにより決定し、該決定した暗号化アルゴリズム又はMACアルゴリズムに基づいて前記暗号化通信路を確立するようになっており、
前記検証センタは、前記複数の暗号化アルゴリズム又はMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記通信端末とのネゴシエーションにより決定し、該決定した暗号化アルゴリズム又はMACアルゴリズムに基づいて前記暗号化通信路を確立するようになっていることを特徴とする秘密分散法による鍵管理システム。 - 請求項1乃至3のいずれかにおいて、
前記通信端末は、前記第1暗号鍵、MAC鍵及びIV(Initialization Vector)を生成し、該生成した第1暗号鍵、MAC鍵及びIVに基づいて前記暗号化通信路を確立するようになっており、
前記検証センタは、前記通信端末で生成した前記第1暗号鍵、MAC鍵及びIVに対応する前記第2暗号鍵、MAC鍵及びIVを生成し、該生成した第2暗号鍵、MAC鍵及びIVに基づいて前記暗号化通信路を確立するようになっていることを特徴とする秘密分散法による鍵管理システム。 - 請求項1乃至4のいずれかにおいて、
前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵及びIVのうちいずれかであることを特徴とする秘密分散法による鍵管理システム。 - 請求項1記載の秘密分散法による鍵管理システムにおける検証センタであって、
前記第1分散鍵記憶手段と、前記第1確立手段とを備え、
前記暗号化通信路を通じて前記メッセージ及び前記生体情報を受信したときは、該受信した生体情報及び前記第1分散鍵記憶手段の検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記第1分散鍵記憶手段の第1分散鍵のうち前記検証に用いた検証用生体情報に対応するものに基づいて、前記受信したメッセージを演算し、その演算メッセージを前記暗号化通信路を通じて前記通信端末に送信し、
前記通信端末との初回の通信については前記第1暗号鍵生成手段を、前記通信端末との2回目以降の通信については前記第1暗号鍵更新手段を実行することを特徴とする検証センタ。 - 請求項6において、
請求項3記載の秘密分散法による鍵管理システムにおける通信端末と通信可能に接続し、
前記複数の暗号化アルゴリズム又はMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記通信端末とのネゴシエーションにより決定し、該決定した暗号化アルゴリズム又はMACアルゴリズムに基づいて前記暗号化通信路を確立するようになっていることを特徴とする検証センタ。 - 請求項6及び7のいずれかにおいて、
請求項4記載の秘密分散法による鍵管理システムにおける通信端末と通信可能に接続し、
前記通信端末で生成した前記第1暗号鍵、MAC鍵及びIVに対応する前記第2暗号鍵、MAC鍵及びIVを生成し、該生成した第2暗号鍵、MAC鍵及びIVに基づいて前記暗号化通信路を確立するようになっていることを特徴とする検証センタ。 - 請求項6乃至8のいずれかにおいて、
前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵及びIVのうちいずれかであることを特徴とする検証センタ。 - 請求項1記載の秘密分散法による鍵管理システムにおける通信端末であって、
前記第2分散鍵記憶手段と、前記生体情報入力手段と、前記第2確立手段とを備え、
前記メッセージ及び前記生体情報入力手段で入力した生体情報を前記暗号化通信路を通じて前記検証センタに送信し、前記暗号化通信路を通じて前記演算メッセージを受信したときは、前記第2分散鍵記憶手段の第2分散鍵に基づいて、前記受信した演算メッセージを演算し、
前記検証センタとの初回の通信については前記第2暗号鍵生成手段を、前記検証センタとの2回目以降の通信については前記第2暗号鍵更新手段を実行することを特徴とする通信端末。 - 請求項10において、
請求項2記載の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、
前記メッセージ及び前記生体情報の送信に先立って前記検証センタの正当性を検証し、その検証より認証が得られた場合に限り、前記メッセージ及び前記生体情報を前記検証センタに送信するようになっていることを特徴とする通信端末。 - 請求項10及び11のいずれかにおいて、
請求項3記載の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、
複数の暗号化アルゴリズム又はMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記検証センタとのネゴシエーションにより決定し、該決定した暗号化アルゴリズム又はMACアルゴリズムに基づいて前記暗号化通信路を確立するようになっていることを特徴とする通信端末。 - 請求項10乃至12のいずれかにおいて、
請求項4記載の秘密分散法による鍵管理システムにおける検証センタと通信可能に接続し、
前記第1暗号鍵、MAC鍵及びIVを生成し、該生成した第1暗号鍵、MAC鍵及びIVに基づいて前記暗号化通信路を確立するようになっていることを特徴とする通信端末。 - 請求項10乃至13のいずれかにおいて、
前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵及びIVのうちいずれかであることを特徴とする通信端末。 - コンピュータからなる請求項6記載の検証センタに実行させるためのプログラムであって、
前記第1確立手段として実現される処理、
前記暗号化通信路を通じて前記メッセージ及び前記生体情報を受信したときは、該受信した生体情報及び前記第1分散鍵記憶手段の検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記第1分散鍵記憶手段の第1分散鍵のうち前記検証に用いた検証用生体情報に対応するものに基づいて、前記受信したメッセージを演算し、その演算メッセージを前記暗号化通信路を通じて前記通信端末に送信する処理、並びに
前記通信端末との初回の通信については前記第1暗号鍵生成手段を、前記通信端末との2回目以降の通信については前記第1暗号鍵更新手段を実行する処理を実行させるためのプログラムであることを特徴とする検証センタ用プログラム。 - 請求項15において、
コンピュータからなる請求項7記載の検証センタに対して、
前記複数の暗号化アルゴリズム又はMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記通信端末とのネゴシエーションにより決定し、該決定した暗号化アルゴリズム又はMACアルゴリズムに基づいて前記暗号化通信路を確立する処理を実行させるためのプログラムであることを特徴とする検証センタ用プログラム。 - 請求項15及び16のいずれかにおいて、
コンピュータからなる請求項8記載の検証センタに対して、
前記第1暗号鍵、MAC鍵及びIVに対応する前記第2暗号鍵、MAC鍵及びIVを生成し、該生成した第2暗号鍵、MAC鍵及びIVに基づいて前記暗号化通信路を確立する処理を実行させるためのプログラムであることを特徴とする検証センタ用プログラム。 - 請求項15乃至17のいずれかにおいて、
前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵及びIVのうちいずれかであることを特徴とする検証センタ用プログラム。 - コンピュータからなる請求項10記載の通信端末に実行させるためのプログラムであって、
前記生体情報入力手段及び前記第2確立手段として実現される処理、
前記メッセージ及び前記生体情報入力手段で入力した生体情報を前記暗号化通信路を通じて前記検証センタに送信し、前記暗号化通信路を通じて前記演算メッセージを受信した ときは、前記第2分散鍵記憶手段の第2分散鍵に基づいて、前記受信した演算メッセージを演算する処理、並びに
前記検証センタとの初回の通信については前記第2暗号鍵生成手段を、前記検証センタとの2回目以降の通信については前記第2暗号鍵更新手段を実行する処理を実行させるためのプログラムであることを特徴とする通信端末用プログラム。 - 請求項19において、
コンピュータからなる請求項11記載の通信端末に実行させるためのプログラムであって、
前記メッセージ及び前記生体情報の送信に先立って前記検証センタの正当性を検証し、その検証より認証が得られた場合に限り、前記メッセージ及び前記生体情報を前記検証センタに送信する処理を実行させるためのプログラムであることを特徴とする通信端末用プログラム。 - 請求項19及び20のいずれかにおいて、
コンピュータからなる請求項12記載の通信端末に実行させるためのプログラムであって、
複数の暗号化アルゴリズム又はMACアルゴリズムのなかから前記暗号化通信路の確立に用いるものを前記検証センタとのネゴシエーションにより決定し、該決定した暗号化アルゴリズム又はMACアルゴリズムに基づいて前記暗号化通信路を確立する処理を実行させるためのプログラムであることを特徴とする通信端末用プログラム。 - 請求項19乃至21のいずれかにおいて、
コンピュータからなる請求項13記載の通信端末に実行させるためのプログラムであって、
前記第1暗号鍵、MAC鍵及びIVを生成し、該生成した第1暗号鍵、MAC鍵及びIVに基づいて前記暗号化通信路を確立する処理を実行させるためのプログラムであることを特徴とする通信端末用プログラム。 - 請求項19乃至22のいずれかにおいて、
前記鍵は、公開鍵暗号方式における秘密鍵、共通鍵暗号方式における共通鍵、MAC鍵及びIVのうちいずれかであることを特徴とする通信端末用プログラム。 - 通信を行う通信端末と、前記通信端末が通信に利用する鍵の利用適格を検証する検証センタとを通信可能に接続し、前記検証センタによる認証を得て、前記通信端末が通信するメッセージを演算する方法であって、
前記検証センタに対しては、
前記通信端末との通信に先立って前記通信端末との間で暗号化通信路を確立する第1確立ステップを含み、前記暗号化通信路を通じて前記メッセージ及び生体情報を受信したときは、該受信した生体情報及び前記鍵を秘密分散法により分散した分散鍵のうち第1分散鍵を検証用生体情報と対応付けて記憶するための第1分散鍵記憶手段の検証用生体情報に基づいて前記鍵の利用適格を検証し、その検証により認証が得られたときは、前記第1分散鍵記憶手段の第1分散鍵のうち前記検証に用いた検証用生体情報に対応するものに基づいて、前記受信したメッセージを演算し、その演算メッセージを前記暗号化通信路を通じて前記通信端末に送信し、
前記通信端末に対しては、
前記生体情報を入力する生体情報入力ステップと、前記検証センタとの通信に先立って前記検証センタとの間で前記暗号化通信路を確立する第2確立ステップとを含み、前記メッセージ及び前記生体情報入力ステップで入力した生体情報を前記暗号化通信路を通じて前記検証センタに送信し、前記暗号化通信路を通じて前記演算メッセージを受信したときは、前記分散鍵のうち第2分散鍵を記憶するための第2分散鍵記憶手段の第2分散鍵に基づいて、前記受信した演算メッセージを演算し、
前記第1確立ステップは、第1乱数を受信したときは、第2乱数を生成し、前記受信した第1乱数及び前記生成した第2乱数に基づいて第1暗号鍵を生成し、前記第1分散鍵記憶手段の第1分散鍵及び前記生成した第2乱数に基づいて演算値を生成し、該生成した演 算値を前記通信端末に送信する第1暗号鍵生成ステップと、暗号鍵の更新に用いる更新鍵を生成し、該生成した更新鍵に基づいて、当該検証センタが保持している第1暗号鍵を更新し、前記生成した更新鍵を前記通信端末に送信する第1暗号鍵更新ステップと、前記第1暗号鍵に基づいて前記暗号化通信路を確立する第1暗号化通信路確立ステップとを含み、
前記第2確立ステップは、前記第1乱数を生成し、該生成した第1乱数を前記検証センタに送信し、前記演算値を受信したときは、該受信した演算値、前記第2分散鍵記憶手段の第2分散鍵、及び前記分散鍵に対応する検証鍵に基づいて前記第2乱数を取得し、前記生成した第1乱数及び前記取得した第2乱数に基づいて、前記第1暗号鍵に対応する第2暗号鍵を生成する第2暗号鍵生成ステップと、前記更新鍵を受信したときは、該受信した更新鍵に基づいて、当該通信端末が保持している第2暗号鍵を更新する第2暗号鍵更新ステップと、前記第2暗号鍵に基づいて前記暗号化通信路を確立する第2暗号化通信路確立ステップとを含み、
初回の通信については前記第1暗号鍵生成ステップ及び前記第2暗号鍵生成ステップを、2回目以降の通信については前記第1暗号鍵更新ステップ及び前記第2暗号鍵更新ステップを実行することを特徴とする秘密分散法による鍵管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002027330A JP3983561B2 (ja) | 2002-02-04 | 2002-02-04 | 秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002027330A JP3983561B2 (ja) | 2002-02-04 | 2002-02-04 | 秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003229845A JP2003229845A (ja) | 2003-08-15 |
JP3983561B2 true JP3983561B2 (ja) | 2007-09-26 |
Family
ID=27748884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002027330A Expired - Fee Related JP3983561B2 (ja) | 2002-02-04 | 2002-02-04 | 秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3983561B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4923283B2 (ja) * | 2004-08-20 | 2012-04-25 | 富士ゼロックス株式会社 | 無線通信システムおよび通信装置および通信制御プログラム |
DE102005026982A1 (de) | 2005-06-10 | 2006-12-14 | Siemens Ag | Verfahren zur Vereinbarung eines Sicherheitsschlüssels zwischen mindestens einem ersten und einem zweiten Kommunikationsteilnehmer zur Sicherung einer Kommunikationsverbindung |
DE102006042358B4 (de) * | 2006-09-08 | 2018-01-25 | Continental Automotive Gmbh | Verfahren und Servicezentrale zum Aktualisieren von Berechtigungsdaten in einer Zugangsanordnung |
JP4999472B2 (ja) * | 2007-01-22 | 2012-08-15 | 三菱電機株式会社 | 情報処理装置及び演算方法 |
JP6765993B2 (ja) * | 2017-03-02 | 2020-10-07 | 日本電信電話株式会社 | クレデンシャル生成システム及び方法 |
CN117675235A (zh) * | 2022-08-22 | 2024-03-08 | 中国移动通信有限公司研究院 | 一种保密通信处理方法、第一终端及存储介质 |
-
2002
- 2002-02-04 JP JP2002027330A patent/JP3983561B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003229845A (ja) | 2003-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8209744B2 (en) | Mobile device assisted secure computer network communication | |
EP2639997B1 (en) | Method and system for secure access of a first computer to a second computer | |
Krawczyk | SIGMA: The ‘SIGn-and-MAc’approach to authenticated Diffie-Hellman and its use in the IKE protocols | |
US20170195121A1 (en) | Token binding using trust module protected keys | |
CN110138799A (zh) | 一种基于sgx的安全云存储方法 | |
JP2024023594A (ja) | マルチポイント認証のためのキー生成・預託システム及び方法 | |
EP3262784A1 (en) | A system and methods for protecting keys in computerized devices operating versus a server | |
CN109963282A (zh) | 在ip支持的无线传感网络中的隐私保护访问控制方法 | |
AU2003202511A1 (en) | Methods for authenticating potential members invited to join a group | |
WO2003088571A1 (en) | System and method for secure wireless communications using pki | |
JP2004030611A (ja) | 通信パスワードをリモートで変更するための方法 | |
Islam et al. | An anonymous and provably secure authentication scheme for mobile user | |
CN109347626B (zh) | 一种具有反跟踪特性的安全身份认证方法 | |
US10389529B2 (en) | Entropy-based authentication of mobile financial transaction | |
WO2018030289A1 (ja) | Ssl通信システム、クライアント、サーバ、ssl通信方法、コンピュータプログラム | |
CN1846423A (zh) | 通信系统中的位置保密 | |
CN115001841A (zh) | 一种身份认证方法、装置及存储介质 | |
Wagner et al. | Establishing secure communication channels using remote attestation with TPM 2.0 | |
WO2023151427A1 (zh) | 量子密钥传输方法、装置及系统 | |
JP2016522637A (ja) | 共有秘密を含意するセキュア化されたデータチャネル認証 | |
US8806216B2 (en) | Implementation process for the use of cryptographic data of a user stored in a data base | |
JPWO2019077581A5 (ja) | ||
JP3983561B2 (ja) | 秘密分散法による鍵管理システム、検証センタ、通信端末、検証センタ用プログラム、通信端末用プログラム、並びに秘密分散法による鍵管理方法 | |
JP2003152716A (ja) | 可変認証情報を用いる資格認証方法 | |
CN113545004A (zh) | 具有减少攻击面的认证系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040928 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070130 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070402 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070626 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070704 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100713 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110713 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110713 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120713 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120713 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130713 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |