(57)【特許請求の範囲】
【請求項１】
鍵管理サーバと第１の利用者端末と第２の利用者端末とを具備し、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送方法であって、
前記鍵管理サーバが、複数の利用者端末が所属する集団に対して、データベースを用いて、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記利用者端末の各々に対して発行された前記秘密鍵の更新回数とを前記集団に公開するステップＡと、
前記集団に所属する前記第１の利用者端末が、発行要求送信部を用いて、前記利用者端末に対する秘密鍵の発行要求を前記鍵管理サーバに送信するステップＢと、
前記鍵管理サーバが、情報更新部を用いて、前記第１の利用者端末に対する秘密鍵の更新回数を更新するステップＣと、
前記鍵管理サーバが、鍵発行部を用いて、前記発行要求に応じて前記第１の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第１の利用者端末の利用者に固有の識別情報とに基づいて、利用者に個別の識別情報に基づく鍵配送を行うことができる所定の方法により前記利用者端末に対する秘密鍵を発行するステップＤと、
前記鍵管理サーバが、鍵送信部を用いて、前記ステップＤにおいて発行された前記秘密鍵を前記第１の利用者端末に送信するステップＥと、
前記第１利用者端末が、共通鍵生成部を用いて、前記第２の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第２の利用者端末の利用者に固有の識別情報と前記第１の利用者端末に対する秘密鍵とに基づいて、前記第２の利用者端末との共通鍵を生成するステップＦと
を備えることを特徴とする鍵配送方法。
【請求項２】
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）個の異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは前記利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることを特徴とする請求項１に記載の鍵配送方法。
【請求項３】
鍵管理サーバと第１の利用者端末と第２の利用者端末とを具備し、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送システムであって、
前記鍵管理サーバは、
複数の利用者端末が所属する集団に対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記利用者端末の各々に対して発行された前記秘密鍵の更新回数とを公開する情報公開手段と、
前記集団に所属する前記第１の利用者端末から、前記第１の利用者端末に対する秘密鍵の発行要求を受信する発行要求受信手段と、
前記第１の利用者端末に対する秘密鍵の更新回数を更新する更新手段と、
前記発行要求に応じて、前記第１の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第１の利用者端末の利用者に固有の識別情報とに基づいて、利用者に個別の前記識別情報に基づく鍵配送を行うことができる所定の方法により前記第１の利用者端末に対する秘密鍵を発行する秘密鍵発行手段と、
前記秘密鍵発行手段によって発行された前記秘密鍵を前記第１の利用者端末に送信する秘密鍵送信手段と
を備え、
前記第１の利用者端末は、
前記第１の利用者端末に対する秘密鍵の発行要求を前記鍵管理サーバに送信する発行要求送信手段と、
前記鍵管理サーバよって送信された前記第１の利用者端末に対する秘密鍵を受信する鍵受信手段と
前記集団に所属する第２の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第２の利用者端末の利用者に固有の識別情報と前記第１の利用者端末に対する秘密鍵とに基づいて、前記第２の利用者端末との共通鍵を生成する共通鍵生成手段と
を備えることを特徴とする鍵配送システム。
【請求項４】
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）個の異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは前記利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることを特徴とする請求項３に記載の鍵配送システム。
【請求項５】
第１の利用者端末の利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送システムにおける鍵管理サーバであって、
複数の利用者端末が所属する集団に対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記利用者端末の各々に対して発行された秘密鍵の更新回数とを公開する情報公開手段と、
前記集団に所属する前記第１の利用者端末から、前記第１の利用者端末に対する秘密鍵の発行要求を受信する発行要求受信手段と、
前記第１の利用者端末に対する秘密鍵の更新回数を更新する更新手段と、
前記発行要求に応じて、前記第１の利用者端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記第１の利用者端末の利用者に固有の識別情報とに基づいて、利用者に個別の前記識別情報に基づく鍵配送を行うことができる所定の方法により前記利用者端末に対する秘密鍵を発行する秘密鍵発行手段と、
前記秘密鍵発行手段によって発行された前記秘密鍵を前記第１の利用者端末に送信する秘密鍵送信手段と
を備えることを特徴とする鍵管理サーバ。
【請求項６】
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは前記利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることを特徴とする請求項５に記載の鍵管理サーバ。
【請求項７】
秘密鍵の更新回数に対応付けられた関数と利用者に固有の識別情報とに基づいて、前記利用者に個別の前記識別情報に基づく鍵配送を行うことができる所定の方法により発行される秘密鍵を用いた鍵配送システムにおいて用いられる移動通信端末であって、
前記移動通信端末に対する秘密鍵の発行要求を前記鍵管理サーバに送信する発行要求送信手段と、
前記鍵管理サーバよって送信された前記移動通信端末に対する秘密鍵を受信する鍵受信手段と、
前記移動通信端末が所属する集団に所属する他の移動通信端末に対する秘密鍵の更新回数に対応付けられた前記関数を選択し、当該選択した前記関数と前記他の移動通信端末の利用者に固有の識別情報と前記移動通信端末に対する秘密鍵とに基づいて、前記他の移動通信端末との共通鍵を生成する共通鍵生成手段と
を備えたことを特徴とする移動通信端末。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば電子メールアドレスや電話番号等の利用者に固有の識別情報（ID）に基づく鍵配送方法及び鍵配送システムに関する。
【０００２】
【従来の技術】
従来から利用されている鍵配送方式では、利用者が公開鍵の値を自由に指定することができないため、利用者と公開鍵の結びつきを認証局が保証する形態を採っている。また、このような鍵配送方式では、利用者が秘密鍵を漏洩もしくは紛失してしまった場合、利用者は、認証局にその旨を申請し、新たな公開鍵、秘密鍵のペアを作成しなければならない。認証局は、新たに発行された公開鍵と利用者の関係を確認した後、新たな鍵証明書を発行する。さらに、認証局は、これまで利用者が使用していた公開鍵の鍵証明書を無効化する旨を鍵証明書無効化リスト（CRL）に記載し、当該リストをすべての利用者に通知する。
【０００３】
このような鍵配送方式では、鍵配送を行う者は、まず、鍵配送の相手の公開鍵と、認証局によって発行される電子的な鍵証明書とを取得する。次に、鍵配送を行う者は、当該鍵証明書の正当性を検証した上で、鍵配送を行う。このため、認証局と鍵配送を行う者との間において余分な通信コストが発生するとともに、鍵配送を行う者による鍵証明書等の計算コストが発生する。特に、鍵証明書の検証には、通常、大きな計算コストが掛かることが問題となっていた。
【０００４】
このような問題を解決するため、利用者に固有の識別情報（ID）そのものを公開鍵とすることが可能な方式（IDに基づく鍵配送方式）の必要性が、１９８４年に提唱され、それ以降、具体的な実現方式が提案されてきた。IDに基づく鍵配送方式においては、まず、秘密鍵の発行及び管理を行うセンタが、マスター鍵mstを生成し、mstに対応する公開情報pubを公開する。次に、任意の文宇列charとmstを作用させ当該文字列に対する秘密鍵dcharを生成することができる（便宜上、このような秘密鍵dcharを「charに基づく秘密鍵」と呼ぶ）。通常、charとして、利用者の電子メールアドレスなどが利用される。次に、例えば、charに基づく秘密鍵dcharを保持する利用者１と、char’に基づく秘密鍵dchar’を保持する利用者２とが共通鍵を用いて通信を行う際、dcharを保持する利用者１は、dcharとchar’とpubとを用いて、また、dchar’を保持する利用者２は、dchar’とcharとpubとを用いて、利用者１と利用者２との間において使用できる共通鍵の生成を行うことが可能となる。このようなIDに基づく鍵配送方式は、実際には、通信を行う相手に対して共通鍵を送信する必要がない、いわゆる「交信を必要としない」鍵配送（鍵共有）方式である。
【０００５】
このような機能を提供する具体的な方式として、例えば、Blom方式（非特許文献１参照）が知られている。以下、Blom方式の概要について説明する。
【０００６】
秘密鍵の発行及び管理を行うセンタは、有限体GF(q)上の二変数の対称多項式f(x,y)を作成し、yをマスター鍵とする。また、センタは、任意の文字列をGF(q)に写す衝突困難な一方向性ハッシュ関数hを選択する。さらに、センタは、文字列charとマスター鍵yとを作用させ、charに基づく秘密鍵dchar(y)をf(char,y)により導出する。秘密鍵dchar(y)の保持者は、dchar(y)を用いて、char’に対応する秘密鍵dchar’(y)を保持する利用者との共通鍵KをK:=dchar(char’)により導出する。
【０００７】
このようなIDに基づく鍵配送方式においては、公開鍵の取得や正当性の検証にコストが掛からないという利点がある。
【０００８】
【非特許文献１】
Proc. of CRYPTO’82, Plenum Press, pp.231-236, 1983
【０００９】
【発明が解決しようとする課題】
しかしながら、上述した従来のIDに基づく鍵配送方式では、秘密鍵が利用者に固有のIDに基づいて生成されるため、当該IDを変更しない限り鍵を更新することができないといった問題があった。また、このような従来のIDに基づく鍵配送方式では、従来の鍵配送方式のようなCRLを用いて当該秘密鍵に対となる公開情報を無効化することができないといった問題があった。
【００１０】
そこで、本発明は、以上の点に鑑みてなされたもので、鍵の更新を可能とするIDに基づく鍵配送方法及び鍵配送システムを提供することをその目的とする。
【００１１】
【課題を解決するための手段】
本発明の第１の特徴は、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送方法であって、複数の利用者端末が所属する集団におけるセンタが、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、センタによって利用者端末の各々に対して発行された秘密鍵の更新回数とを集団に公開するステップＡと、集団に所属する利用者端末が、利用者端末に対する秘密鍵の発行要求を送信するステップＢと、センタが、利用者端末に対する秘密鍵の更新回数を更新するステップＣと、センタが、発行要求に応じて利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者端末の利用者に固有の識別情報とに基づいて、所定の方法により利用者端末に対する秘密鍵を発行するステップＤと、センタが、ステップＤにおいて発行された秘密鍵を利用者端末に送信するステップＥと、利用者端末が、集団に所属する他の利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と他の利用者端末の利用者に固有の識別情報と利用者端末に対する秘密鍵とに基づいて、他の利用者端末との共通鍵を生成するステップFとを備えることを要旨とする。
【００１２】
かかる特徴によれば、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された秘密鍵の更新回数とを用いて新たな秘密鍵を発行するため、利用者に固有のIDに基づく鍵配送において、鍵の更新を行うことができる。
【００１３】
本発明の第２の特徴は、本発明の第１の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な（N+１）個の異なるランダムなノイズr0,…,rNとにより、式hi（x）=x+ri（ただし、ｘは利用者に固有の識別情報であり、iは0≦ｉ≦N）を用いて構成されることが好ましい。
【００１４】
かかる特徴によれば、関数として、hi（x）=x+riを用い、かつx及びriを所定の誤り訂正符号によって表現された値を用いるため、当該関数を用いて生成された利用者に固有のIDに基づく値と、他の利用者に用いられる値とが同一となることがないため、異なる利用者に対して同一の秘密鍵が発行されるような事態を避けることができ、より高い安全性を確保することができる。
【００１５】
本発明の第３の特徴は、鍵管理サーバと利用者端末とを具備する、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送システムであって、鍵管理サーバが、複数の利用者端末が所属する集団に対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された秘密鍵の更新回数とを公開する情報公開手段と、集団に所属する利用者端末から、利用者端末に対する秘密鍵の発行要求を受信する発行要求受信手段と利用者端末に対する秘密鍵の更新回数を更新する更新手段と、発行要求に応じて、利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者端末の利用者に固有の識別情報とに基づいて、所定の方法により利用者端末に対する秘密鍵を発行する秘密鍵発行手段と、秘密鍵発行手段によって発行された秘密鍵を利用者端末に送信する秘密鍵送信手段とを備え、利用者端末が、利用者端末に対する秘密鍵の発行要求を鍵管理サーバに送信する発行要求送信手段と、鍵管理サーバよって送信された利用者端末に対する秘密鍵を受信する鍵受信手段と、集団に所属する他の利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と他の利用者端末の利用者に固有の識別情報と利用者端末に対する秘密鍵とに基づいて、他の利用者端末との共通鍵を生成する共通鍵生成手段と
を備えることを要旨とする。
【００１６】
本発明の第４の特徴は、本発明の第３の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な（N+１）個の異なるランダムなノイズr0,…,rNとにより、式hi（x）=x+ri（ただし、ｘは利用者に固有の識別情報であり、iは0≦i≦N）を用いて構成されることが好ましい。
【００１７】
本発明の第５の特徴は、利用者に固有の識別情報に基づく秘密鍵を用いた鍵配送システムにおける鍵管理サーバであって、複数の利用者端末が所属する集団に対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された秘密鍵の更新回数とを公開する情報公開手段と、集団に所属する利用者端末から、利用者端末に対する秘密鍵の発行要求を受信する発行要求受信手段と、利用者端末に対する秘密鍵の更新回数を更新する更新手段と、発行要求に応じて、利用者端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者端末の利用者に固有の識別情報とに基づいて、所定の方法により利用者端末に対する秘密鍵を発行する秘密鍵発行手段と、秘密鍵発行手段によって発行された秘密鍵を利用者端末に送信する秘密鍵送信手段とを備えることを要旨とする。
【００１８】
本発明の第６の特徴は、本発明の第５の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な（N+１）個の異なるランダムなノイズr0,…,rNとにより、式hi（x）=x+ri（ただし、ｘは利用者に固有の識別情報であり、iは0≦ｉ≦N）を用いて構成されることが好ましい。
【００１９】
本発明の第７の特徴は、秘密鍵の更新回数に対応付けられた関数と利用者に固有の識別情報とに基づいて、所定の方法により発行される秘密鍵を用いた鍵配送システムにおいて用いられる移動通信端末であって、移動通信端末に対する秘密鍵の発行要求を鍵管理サーバに送信する発行要求送信手段と、鍵管理サーバよって送信された移動通信端末に対する秘密鍵を受信する鍵受信手段と、集団に所属する他の移動通信端末に対する秘密鍵の更新回数に対応付けられた関数を選択し、選択された関数と他の移動通信端末の利用者に固有の識別情報と移動通信端末に対する秘密鍵とに基づいて、他の移動通信端末との共通鍵を生成する共通鍵生成手段とを備えたことを要旨とする。
【００２０】
【発明の実施の形態】
（本実施形態に係る鍵配送システムの全体構成）
本発明の実施形態について図面を参照しながら説明する。図１は、本実施形態に係る鍵配送システムの全体構成図である。
【００２１】
同図に示すように、本実施形態に係る鍵配送システムは、通信ネットワーク１と、データベース１０と、鍵管理サーバ２０と、利用者端末３０ａと、利用者端末３０ｂとから構成されている。
【００２２】
通信ネットワーク１は、鍵管理サーバ２０と、データベース１０と、利用者端末３０ａと、利用者端末３０ｂとを接続するものである。通信ネットワーク１としては、例えばインターネットを用いることができる。なお、ここでいうインターネットとは、RFC791等において規定されるIPv4またはRFC2460等において規定されるIPv6であってもよい。
【００２３】
データベース１０は、本実施形態では、利用者端末３０ａ，３０ｂに対して発行された秘密鍵の更新回数及び関数の族を記憶するとともに、記憶した秘密鍵の更新回数及び関数の族を利用者端末３０ａ，３０ｂに対して公開するものである。
【００２４】
鍵管理サーバ２０は、本実施形態では、利用者端末３０ａ，３０ｂに対して秘密鍵を発行するとともに、利用者端末３０ａ，３０ｂに対して発行した秘密鍵の更新回数及び秘密鍵を生成するため等に用いられる関数の族を管理するものである。また、鍵管理サーバ２０は、秘密鍵の更新回数や関数の族をデータベース１０上に公開させる機能を有している。
【００２５】
なお、本実施形態では、データベース１０と鍵管理サーバ２０とは、分離された形態となっているが、データベース１０と鍵管理サーバ２０とを一体のハードウェア・ソフトウェアによって実現してもよい。
【００２６】
利用者端末３０ａ，３０ｂは、本実施形態では、鍵管理サーバ２０によって発行される秘密鍵を用いて、利用者端末３０ａと利用者端末３０ｂとの間において用いられる共通鍵を生成するものである。また、利用者端末３０ａ，３０ｂは、生成した共通鍵を用いて、暗号通信を行うものである。
【００２７】
利用者端末３０ａ，３０ｂとしては、例えば、パーソナルコンピュータ、携帯情報端末（PDA）、携帯電話端末等を用いることができる。
【００２８】
図２は、データベース１０、鍵管理サーバ２０、利用者端末３０ａ，３０ｂそれぞれの構成を示すブロック構成図である。
【００２９】
データベース１０は、本実施形態では、利用者端末３０ａ，３０ｂに対して、秘密鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末３０ａ，３０ｂの各々に対して発行された秘密鍵の更新回数とを公開する情報公開手段を構成する。
【００３０】
具体的には、データベース１０上に公開される関数として、例えば、hi（x）=x+riを用いることができる。ここで、xは、誤り訂正符号によって符号化された利用者に固有のIDである。rは、当該誤り訂正符号によって訂正可能なランダムなノイズであり、秘密鍵の最大更新回数Nに対し、（N+1）個のr0,…,rNから構成される。また、iは、秘密鍵の更新回数であり、0≦ｉ≦Nとする。よって、hi（x）は、IDがxである利用者の利用者端末に対するi回目の秘密鍵の更新する場合に用いられる関数を示している。
【００３１】
なお、利用者に固有の識別情報としては、当該利用者の電子メールアドレスや電話番号等を用いることができる。また、上述した誤り訂正符号とは、ビット誤りを訂正できる符号であればよく、例えば、CRCやハミング符号等を用いることができる。また、上述した関数と異なる関数を用いて関数の族を構成してもよい。
【００３２】
関数の族テーブル１１は、上述した関数により表現される複数の関数｛h0(・), h1(・),..., hN(・)｝と、秘密鍵の更新回数との対応付けを示している。ここで、(・)は、各利用者のIDに対応することを示している。このように関数の族を構成することにより、例えば、電子メールアドレスがUである利用者端末３０ａの利用者Uに対して初めて秘密鍵が発行される場合には、鍵管理サーバ２０は、h0(・)を選択し、h0(U)を取得する。また、鍵管理サーバ２０は、利用者Uに対してi回目（1≦ｉ≦N）の秘密鍵が発行される場合には、hi(・)を選択し、hi(U)を取得する。
【００３３】
また、データベース１０は、本実施形態では、利用者端末３０ａの利用者Uに対して発行された秘密鍵の更新回数を示す更新回数情報pを鍵管理サーバ２０から受信し、更新回数情報pを利用者端末３０ａ,３０ｂに対して公開することができる。
【００３４】
更新回数情報テーブル１２は、更新回数情報pの内容の例を示しており、各々の利用者のIDと、当該利用者に対して発行された秘密鍵の更新回数とが対応付けられている。
【００３５】
鍵管理サーバ２０は、本実施形態では、発行要求受信部２１と、秘密情報生成部２２と、鍵発行部２３と、鍵送信部２４と、情報更新部２５とから構成されている。
【００３６】
以下、上述したblom方式（所定の方法）を用いた利用者に固有のIDに基づく鍵配送を例として各部の構成を説明する。
【００３７】
発行要求受信部２１は、本実施形態では、利用者端末３０ａから、利用者端末３０ａに対する秘密鍵の発行要求を受信するものである。具体的には、発行要求受信部２１は、利用者端末３０ａの利用者Uから、利用者UのIDに基づく秘密鍵の発行要求を受信し、受信した当該発行要求を鍵発行部２３へ送信するものである。
【００３８】
秘密情報生成部２２は、本実施形態では、所定の方法に基づいて秘密情報を生成するものである。
【００３９】
具体的には、秘密情報生成部２２は、有限体上GF(q)上の二変数の対称多項式f(x,y)を生成する。また、任意の文字列をGF(q)に写す衝突困難な一方向性ハッシュ関数hを選択する。秘密情報生成部２２は、生成されたy（マスター鍵）を秘密情報とし、鍵発行部２３に送信する。
【００４０】
鍵発行部２３は、本実施形態では、利用者端末３０ａからの秘密鍵の発行要求に応じて、利用者端末３０ａに対する秘密鍵の更新回数を示す更新回数情報pに対応付けられた関数を｛h0(・), h1(・),…, hN(・)｝の中から選択し、選択された関数と利用者端末３０ａの利用者Uの電子メールアドレスUとに基づいて、所定の方法により利用者端末３０ａに対する秘密鍵を発行する秘密鍵発行手段を構成する。
【００４１】
本実施形態に係る鍵発行部２３は、発行要求受信部２１によって受信された利用者端末３０ａからの発行要求を受信する。さらに、鍵発行部２３は、データベース１０上に公開されている更新回数情報pを参照し、利用者端末３０ａに対する秘密鍵の更新回数と、更新回数に対応付けられた関数を｛h0(・), h1(・),…, hN(・)｝の中から選択する。具体的には、鍵発行部２３は、例えば、利用者端末３０ａが初めての秘密鍵の発行を要求している場合、データベース１０上に公開されている更新回数情報pに利用者端末３０ａに対する秘密鍵の更新記録がないため、h0(・)を選択し、利用者Uの電子メールアドレスUからh0（U）を取得する。
【００４２】
さらに、本実施形態に係る鍵発行部２３は、秘密鍵dcharをf(char,y)により生成する。ここで、charには、取得されたh0（U）が用いられる。yは、秘密情報生成部２２によって生成されたマスター鍵（秘密情報）である。このようにして、鍵発行部２３は、利用者のIDに基づく最初の秘密鍵を発行することができる。
【００４３】
また、鍵発行部２３は、例えば、利用者端末３０ａがi回目（1≦ｉ≦N）の秘密鍵の更新を要求している場合、データベース１０上に公開されている更新回数情報pから利用者端末３０ａに対する秘密鍵の更新回数を参照してhi(・)を選択し、利用者Uの電子メールアドレスUからhi（U）を取得することができる。さらに、鍵発行部２３は、上述した秘密鍵と同様に、利用者Uの電子メールアドレスUに対応するi回目の秘密鍵を発行することができる。
【００４４】
鍵発行部２３は、利用者Uからの発行要求に基づいて発行した秘密鍵を鍵送信部２４に送信するとともに、秘密鍵を発行したことを情報更新部２５に通知することができる。
【００４５】
鍵送信部２４は、本実施形態では、鍵発行部２３が発行した秘密鍵を利用者端末３０ａに送信する秘密鍵送信手段を構成する。
【００４６】
情報更新部２５は、本実施形態では、利用者端末３０ａに対する秘密鍵の更新回数を示す更新回数情報pを更新する更新手段を構成する。
【００４７】
具体的には、情報更新部２５は、鍵発行部２３から通知された秘密鍵の更新回数を取得し、データベース１０によって公開されている利用者Uの更新回数情報pを更新することができる。
【００４８】
なお、発行要求受信部２１、秘密情報生成部２２、鍵発行部２３、鍵送信部２４、及び情報送信部２５は、利用者端末３０ｂに対しても同様の処理を行うことができる。鍵発行部２３は、例えば、電子メールアドレスがSである利用者端末３０ｂの利用者Sに対するj回目（1≦ｉ≦N）の秘密鍵の更新要求に際しては、関数hj(S)に基づいて、利用者端末３０ｂに対する秘密鍵dchar’をf(char’,y)により生成することができる。ここで、char’には、取得されたhj（S）が用いられる。yは、秘密情報生成部２２によって生成されたマスター鍵（秘密情報）である。
【００４９】
利用者端末３０ａは、本実施形態では、発行要求送信部３１ａと、鍵受信部３２ａと、共通鍵生成部３３ａと、情報送信部３４ａと、情報受信部３５ａとから構成されている。
【００５０】
発行要求送信部３１ａは、本実施形態では、利用者端末３０ａに対する秘密鍵の発行要求を鍵管理サーバ２０に送信するものである。
【００５１】
鍵受信部３２ａは、本実施形態では、利用者端末３０ａに対する秘密鍵を鍵管理サーバ２０から受信するものである。具体的には、鍵受信部３２ａは、鍵管理サーバ２０から秘密鍵を受信し、受信した秘密鍵を保存しておくことができる。また、鍵受信部３２ａは、共通鍵生成部３３ａと接続されている。
【００５２】
共通鍵生成部３３ａは、利用者端末３０ｂに対する秘密鍵の更新回数に対応付けられた関数を｛h0(・), h1(・),…, hN(・)｝の中から選択し、選択された関数と、利用者端末３０ｂの利用者に固有のIDに基づいて、利用者端末３０ｂとの共通鍵を生成するものである。
【００５３】
具体的には、共通鍵生成部３３ａは、データベース１０上に公開されている更新回数情報pを参照し、利用者端末３０ｂに対する秘密鍵の更新回数に対応付けられた関数を｛h0(・), h1(・),…, hN(・)｝の中から選択する。共通鍵生成部３３ａは、例えば、更新回数情報pから、電子メールアドレスがSである利用者端末３０ｂの利用者Sがj回の秘密鍵の更新を行っている場合、hj(・)を選択し、電子メールアドレスSに基づいてhj(S)を取得する。
【００５４】
共通鍵生成部３３ａは、利用者端末３０ｂとの共通鍵をK:=dchar(char’)により生成する。ここで、char’には、取得したhj(S)が用いられる。dcharは、鍵発行部２３が生成した利用者端末３０ａに対する秘密鍵である。このようにして、共通鍵生成部３３ａは、利用者端末３０ｂの利用者Ｓとの通信に用いることのできる共通鍵を生成することができる。また、共通鍵生成部３３ａは、情報送信部３４ａ及び情報受信部３５ａと接続されている。
【００５５】
情報送信部３４ａは、本実施形態では、共通鍵生成部３３ａによって生成された利用者端末３０ｂとの共通鍵を用いて、利用者端末３０ｂに対して暗号化された情報を送信するものである。
【００５６】
情報受信部３５ａは、本実施形態では、利用者端末３０ｂから暗号化された情報を受信し、共通鍵生成部３３ａによって生成された利用者端末３０ｂとの共通鍵を用いて、受信した情報を復号するものである。
【００５７】
なお、本実施形態では、利用者端末３０ｂは、利用者端末３０ａと同様の機能を有する、発行要求送信部３１ｂと、鍵受信部３２ｂと、共通鍵生成部３３ｂと、情報送信部３４ｂと、情報受信部３５ｂとを具備している。利用者端末３０ｂに具備される共通鍵生成部３３ｂは、本実施形態では、利用者端末３０ａとの共通鍵をK:=dchar’(char)により生成する。ここで、charには、取得したhi(U)が用いられる。dchar’は、鍵発行部２３が生成した利用者端末３０ｂに対する秘密鍵である。
【００５８】
（本実施形態に係る鍵配送システムによる鍵配送方法）
次に、本実施形態に係る鍵配送システムによる鍵配送方法について説明する。図３乃至図５は、本実施形態に係る鍵配送方法のシーケンスを示している。
【００５９】
まず、鍵管理サーバ２０は、所定の方法（有限体上GF(q)上の二変数の対称多項式f(x,y)を生成等）に基づいて、秘密情報（y）を生成する（Ｓ１）。
【００６０】
また、鍵管理サーバ２０は、利用者端末３０ａ，３０ｂに対する秘密鍵の更新の回数を示す更新回数情報pをデータベース１０上に公開する（Ｓ２）。さらに、鍵管理サーバ２０は、例えば、所定の式（hi（x）=x+ri）によって求めることのできる関数の族｛h0(・), h1(・),..., hN(・)｝をデータベース１０上に公開する（Ｓ３）。
【００６１】
利用者端末３０ａは、秘密鍵の発行要求を鍵管理サーバ２０に送信する（Ｓ４）。
【００６２】
鍵管理サーバ２０は、利用者端末３０ａから、初回の秘密鍵の発行要求を受信する（Ｓ５）。次いで、鍵管理サーバ２０は、利用者Uの電子メールアドレスUに基づいて、データベース１０によって公開されている関数の族の中からh0(・)を選択し、h0(U)を取得する（Ｓ６）。
【００６３】
さらに、鍵管理サーバ２０は、ステップＳ１において生成された秘密情報（d）とh0(U)を用いて、所定の式（dchar=f(char,y)）により求めることのできる初回の秘密鍵（dcharまたはg0,U）を発行する（Ｓ７）。
【００６４】
鍵管理サーバ２０は、ステップＳ７において発行された秘密鍵（g0,U）を利用者端末３０ａに送信する（Ｓ８）。
【００６５】
利用者端末３０ａは、ステップＳ７において発行された秘密鍵r0,Uを受信する（Ｓ９）。
【００６６】
次いで、利用者端末３０ａは、i回目の秘密鍵の発行要求を鍵管理サーバ２０に送信する（Ｓ１０）。なお、利用者端末３０ａが、秘密鍵の更新を行う事由としては、例えば秘密鍵の漏洩や紛失等がある。
【００６７】
鍵管理サーバ２０は、利用者端末３０ａから、i回目の秘密鍵の発行要求を受信する（Ｓ１１）。次いで、鍵管理サーバ２０は、利用者端末３０ａの利用者Uがi回目の秘密鍵の更新を行うことに伴い、利用者Uの更新回数情報pを更新する（Ｓ１２）。
【００６８】
次いで、鍵管理サーバ２０は、ステップＳ１２において更新された更新回数情報pをデータベース１０上に公開する（Ｓ１３）。また、鍵管理サーバ２０は、データベース１０上に公開されている更新回数情報pを参照し、利用者Uに対する秘密鍵の更新回数と対応付けられた関数hi(・)を選択し、電子メールアドレスUに基づいてhi(U)を取得する（Ｓ１４）。
【００６９】
さらに、鍵管理サーバ２０は、ステップＳ１において生成された秘密情報（y）とhi(U)とを用いて、所定の式（dchar=f(char,y)）により求めることのできるi回目の秘密鍵（dcharまたはgi,u）を発行する（Ｓ１５）。
【００７０】
鍵管理サーバ２０は、ステップＳ１５において発行された秘密鍵（gi,u）を利用者端末３０ａに送信する（Ｓ１６）。
【００７１】
利用者端末３０ａは、ステップＳ１５において発行された秘密鍵（gi,u）を受信する（Ｓ１７）。
【００７２】
次いで、利用者端末３０ｂは、利用者端末３０ａとの共通鍵を生成するため、データベース１０上に公開されている更新回数情報pを取得（Ｓ１８）し、また、利用者端末３０ｂは、ステップＳ１８において取得された更新回数情報pから、利用者Uがこれまでに行った復号鍵の更新回数iを取得する（Ｓ１９）。さらに、利用者端末３０ｂは、利用者Uの電子メールアドレスU及び取得した更新回数iから値hi(U)を取得する（Ｓ２０）。
【００７３】
次いで、利用者端末３０ｂは、ステップＳ２０において取得した値hi(U)を用いて、所定の式（K:=dchar’(char)）により利用者端末３０ａとの共通鍵となる値（ks,u）を演算する（Ｓ２１）。なお、利用者端末３０ｂに対する秘密鍵dchar’は、ステップＳ４〜Ｓ９またはステップＳ１０〜S17において説明した内容と同様の方法により、利用者端末３０ｂが鍵管理サーバから受信した秘密鍵を利用することができる。
【００７４】
利用者端末３０ｂは、所定の式（K:=dchar’(char)）により演算された値を利用者端末３０ａとの共通鍵として生成する（Ｓ２２）。
【００７５】
なお、利用者端末３０ａは、ステップＳ１８〜Ｓ２２において説明した内容と同様の方法により、利用者端末３０ｂとの共通鍵を生成することができる。利用者端末３０ａと利用者端末３０ｂとが、上述の方法により、それぞれ共通鍵を生成することにより、利用者端末３０ａと利用者端末３０ｂとの間において、当該共通鍵を用いて暗号通信を行うことができる。
【００７６】
以上、本実施形態に係る鍵配送システム及び鍵配送方法について、bolm方式（所定の方法）を用いた利用者に固有のIDに基づく鍵配送を例として説明したが、本実施形態に係る鍵配送システム及び鍵配送方法において用いることのできる鍵配送方式は、blom方式に限定されるものではなく、勿論他の方式を用いて、本実施形態において説明した利用者に固有のIDに基づく鍵配送を行うこともできる。
【００７７】
（鍵配送システム及び鍵配送方法による作用・効果）
本実施形態に係る鍵配送システム及び鍵配送方法によれば、利用者Uの電子メールアドレスUと更新回数に対応付けられた関数の族｛h0(・), h1(・),..., hN(・)｝から求められる値（例えばhi(U)）に基づいて秘密鍵を生成して発行するため、従来のIDに基づく鍵配送では困難であった鍵の更新を行うことができる。
【００７８】
本実施形態によれば、鍵管理サーバ２０が、利用者Uからの発行要求に応じて、利用者に固有のIDに対応する秘密鍵を更新するため、利用者端末３０ａの利用者Uは、当該IDを変更することなく、秘密鍵の漏洩や紛失に伴う秘密鍵の更新を随時かつ迅速に行うことができる。
【００７９】
また、本実施形態によれば、データベース１０上に公開される秘密鍵を生成するための関数として、hi（x）=x+riを用い、かつx（利用者に固有のID）及びri（ランダムノイズ）を所定の誤り訂正符号によって表現された値を用いることにより、利用者Uの電子メールアドレスUに基づく値hi(U)と、他の利用者に用いられる値とが同一となることがないため、異なる利用者に対して同一の秘密鍵が発行されるような事態を避けることができ、より高い安全性を確保することができる。
【００８０】
【発明の効果】
以上説明したように本発明によれば、鍵の更新を可能とするIDに基づく鍵配送方法及び鍵配送システムを提供することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る鍵配送システムの全体構成図である。
【図２】本発明の実施形態に係るデータベース、鍵管理サーバ及び利用者端末のブロック構成を示す図である。
【図３】本実施形態に係る鍵配送方法を示すシーケンス図である。
【図４】本実施形態に係る鍵配送方法を示すシーケンス図である。
【符号の説明】
１…通信ネットワーク
１０…データベース
２０…鍵管理サーバ
２１…発行要求受信部
２２…秘密情報生成部
２３…鍵発行部
２４…鍵送信部
２５…情報更新部
３０ａ，３０ｂ…利用者端末
３１ａ，３１ｂ…発行要求送信部
３２ａ，３２ｂ…鍵受信部
３３ａ，３３ｂ…共通鍵生成部
３４ａ，３４ｂ…情報送信部
３５ａ，３５ｂ…情報受信部
【図１】
0003895243.tif 000002
【図２】
0003895243.tif 000003
【図３】
0003895243.tif 000004
【図４】
0003895243.tif 000005