(57)【要約】【課題】鍵の更新を可能とするＩＤに基づく電子署名方法及び電子署名システムを提供する。【解決手段】本発明に係る電子署名システムは、通信ネットワーク１と、データベース１０と、鍵管理サーバ２０と、利用者端末３０ａと、利用者端末３０ｂとから構成されている。データベース１０は、利用者端末３０ａ，３０ｂに対して発行された署名鍵の更新回数及び関数の族を記憶するとともに、記憶した署名鍵の更新回数及び関数の族を利用者端末３０ａ，３０ｂに対して公開するものである。鍵管理サーバ２０は、利用者端末３０ａ，３０ｂに対して署名鍵または検証鍵を発行するとともに、利用者端末３０ａ，３０ｂに対して発行した署名鍵の更新回数や署名鍵を生成するため等に用いられる関数の族を管理するものである。【選択図】　　　図２
2004112539.tif 000002
【特許請求の範囲】
【請求項１】
利用者に固有の識別情報に基づく署名鍵を用いた電子署名方法であって、
複数の利用者端末が所属する集団におけるセンタが、署名鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記センタによって前記利用者端末の各々に対して発行された前記署名鍵の更新回数とを前記集団に公開するステップＡと、
前記集団に所属する第１の利用者端末が、前記第１の利用者端末に対する署名鍵の発行要求を送信するステップＢと、
前記センタが、前記第１の利用者端末に対する署名鍵の更新回数を更新するステップＣと、
前記センタが、前記発行要求に応じて前記第１の利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と前記利用者に固有の識別情報とに基づいて、所定の方法により前記第１の利用者端末に対する署名鍵を発行するステップＤと、
前記センタが、前記ステップＤにおいて発行された前記署名鍵を前記第１の利用者端末に送信するステップＥと、
前記第１の利用者端末が、第１の利用者端末に対する署名鍵を用いて署名付き情報を生成し、前記署名付き情報を前記集団に所属する第２の利用者端末に送信するステップＦと、
前記第２の利用者端末が、前記第１の利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と、前記利用者に固有の識別情報と、前記第１の利用者端末に対する署名鍵に対となる検証鍵とに基づいて、前記署名付き情報が前記第１の利用者端末によって生成されたか否かであることを判定するステップＧと
を備えることを特徴とする電子署名方法。
【請求項２】
前記センタが、前記第１の利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と前記利用者に固有の識別情報とに基づいて、所定の方法により前記第１の利用者端末に対する署名鍵に対となる検証鍵を発行するステップと、
前記センタが、前記検証鍵を前記第２の利用者端末に送信するステップと
をさらに備え、
前記第２の利用者端末は、前記ステップＧにおいて、前記第１の利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と前記利用者に固有の識別情報と、前記センタによって送信された検証鍵とに基づいて、前記署名付き情報が前記第１の利用者端末によって生成されたか否かであることを判定することを特徴とする請求項１に記載の電子署名方法。
【請求項３】
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）個の異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは前記利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることを特徴とする請求項１または２に記載の電子署名方法。
【請求項４】
鍵管理サーバと第１の利用者端末と第２の利用者端末とを具備する、利用者に固有の識別情報に基づく署名鍵を用いた電子署名システムであって、
前記鍵管理サーバは、
複数の利用者端末が所属する集団に対して、署名鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記利用者端末の各々に対して発行された前記署名鍵の更新回数とを公開する情報公開手段と、
前記集団に所属する第１の利用者端末から、前記第１の利用者端末に対する署名鍵の発行要求を受信する発行要求受信手段と、
前記第１の利用者端末に対する署名鍵の更新回数を更新する更新手段と、
前記発行要求に応じて、前記第１の利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と前記利用者に固有の識別情報とに基づいて、所定の方法により前記第１の利用者端末に対する署名鍵を発行する署名鍵発行手段と、
前記署名鍵発行手段によって発行された前記署名鍵を前記第１の利用者端末に送信する署名鍵送信手段と
を備え、
前記第１の利用者端末は、
前記第１の利用者端末に対する署名鍵の発行要求を前記鍵管理サーバに送信する発行要求送信手段と、
前記鍵管理サーバよって送信された前記第１の利用者端末に対する署名鍵を受信する鍵受信手段と、
前記第１の利用者端末に対する署名鍵を用いて署名付き情報を生成し、前記署名付き情報を前記集団に所属する第２の利用者端末に送信する情報送信手段と
を備え、
前記第２の利用者端末は、
前記第１の利用者端末によって送信された前記署名付き情報を受信する情報受信手段と、
前記第１の利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と、前記利用者に固有の識別情報と、前記第１の利用者端末に対する署名鍵に対となる検証鍵とに基づいて、前記署名付き情報が前記第１の利用者端末によって生成されたか否かであることを判定する判定手段とを備えることを特徴とする電子署名システム。
【請求項５】
前記鍵管理サーバは、前記第１の利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と前記利用者に固有の識別情報とに基づいて、所定の方法により前記第１の利用者端末に対する署名鍵に対となる検証鍵を発行する検証鍵発行手段と、
前記検証鍵を前記第２の利用者端末に送信する検証鍵送信手段と
をさらに備え、
前記第２の利用者端末は、前記検証鍵を受信する検証鍵受信手段をさらに備え、
前記判定手段は、前記第１の利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と、前記利用者に固有の識別情報と、前記検証鍵受信手段が受信した前記検証鍵とに基づいて、前記署名付き情報が前記第１の利用者端末によって生成されたか否かであることを判定することを特徴とする請求項４に記載の電子署名システム。
【請求項６】
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）個の異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは前記利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることを特徴とする請求項４または５に記載の電子署名システム。
【請求項７】
利用者に固有の識別情報に基づく署名鍵を用いた電子署名システムにおける鍵管理サーバであって、
複数の利用者端末が所属する集団に対して、署名鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、前記利用者端末の各々に対して発行された前記署名鍵の更新回数とを公開する情報公開手段と、
前記利用者端末から、前記利用者端末に対する署名鍵の発行要求を受信する発行要求受信手段と、
前記利用者端末に対する署名鍵の更新回数を更新する更新手段と、
前記発行要求に応じて、前記利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と前記利用者に固有の識別情報とに基づいて、所定の方法により前記利用者端末に対する署名鍵を発行する署名鍵発行手段と、
前記署名鍵発行手段によって発行された前記署名鍵を前記利用者端末に送信する署名鍵送信手段と
を備えることを特徴とする鍵管理サーバ。
【請求項８】
前記鍵管理サーバは、前記利用者端末に対する署名鍵の更新回数に対応付けられた前記関数を選択し、選択された前記関数と前記利用者に固有の識別情報とに基づいて、所定の方法により前記利用者端末に対する署名鍵に対となる検証鍵を発行する検証鍵発行手段と、
前記検証鍵を前記集団に所属する他の利用者端末に送信する検証鍵送信手段とをさらに備えることを特徴とする請求項７に記載の鍵管理サーバ。
【請求項９】
前記関数の族は、所定の誤り訂正符号によって符号化された前記利用者に固有の識別情報と前記誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは前記利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることを特徴とする請求項７または８に記載の鍵管理サーバ。
【請求項１０】
署名鍵の更新回数に対応付けられた関数と利用者に固有の識別情報とに基づいて、所定の方法により発行される署名鍵を用いた電子署名システムにおいて用いられる移動通信端末であって、
前記署名鍵を発行する鍵管理サーバに対して、前記移動通信端末に対する署名鍵の発行要求を送信する発行要求送信手段と、
前記鍵管理サーバから、前記移動通信端末に対する署名鍵を受信する鍵受信手段と、
前記移動通信端末に対する署名鍵を用いて署名付き情報を生成し、前記署名付き情報を他の移動通信端末に送信する情報送信手段と
を備えたことを特徴とする移動通信端末。
【請求項１１】
署名鍵の更新回数に対応付けられた関数と利用者に固有の識別情報とに基づいて、所定の方法により発行される署名鍵を用いた電子署名システムにおいて用いられる移動通信端末であって、
他の移動通信端末によって送信された署名付き情報を受信する情報受信手段と、
前記署名鍵を発行する鍵管理サーバによって公開されている前記他の移動通信端末に対する署名鍵の更新回数と、その更新回数に対応付けられた関数とを選択し、選択された前記関数と、前記他の移動通信端末の利用者に固有の識別情報と、前記他の移動通信端末に対する署名鍵に対となる検証鍵とに基づいて、前記署名付き情報が前記他の移動通信端末によって生成されたか否かであることを判定する判定手段と
を備えることを特徴とする移動通信端末。
【請求項１２】
前記他の移動通信端末に対する署名鍵に対となる検証鍵を受信する検証鍵受信手段をさらに備え、
前記判定手段は、前記更新回数に対応付けられた前記関数を選択し、選択された前記関数と、前記他の移動通信端末の利用者に固有の識別情報と、前記検証鍵受信手段が受信した前記検証鍵とに基づいて、前記署名付き情報が前記他の移動通信端末によって生成されたか否かであることを判定することを特徴とする請求項１１に記載の移動通信端末。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば電子メールアドレスや電話番号等の利用者に固有の識別情報（ＩＤ）に基づく電子署名方法及び電子署名システムに関する。
【０００２】
【従来の技術】
従来から利用されている電子署名方式では、利用者が検証鍵（公開鍵）の値を自由に指定することができないため、利用者と公開鍵の結びつきを認証局が保証する形態を採っている。また、このような電子署名方式では、利用者が署名鍵を漏洩もしくは紛失してしまった場合、利用者は、認証局にその旨を申請し、新たな公開鍵、署名鍵のペアを作成しなければならない。認証局は、新たに発行された公開鍵と利用者の関係を確認した後、新たな鍵証明書を発行する。さらに、認証局は、これまで利用者が使用していた公開鍵の鍵証明書を無効化する旨を鍵証明書無効化リスト（ＣＲＬ）に記載し、当該リストをすべての利用者に通知する。
【０００３】
このような電子署名方式では、電子署名の検証者は、まず、署名者の公開鍵と、認証局によって発行される電子的な鍵証明書とを取得する。次に、検証者は、当該鍵証明書の正当性を検証した上で、取得した公開鍵によって当該電子署名が署名者によって正規になされたものか否かを検証する。このため、認証局と検証者との間において余分な通信コストが発生するとともに、検証者による鍵証明書等の計算コストが発生する。特に、鍵証明書の検証には、通常、大きな計算コストが掛かることが問題となっていた。
【０００４】
このような問題を解決するため、利用者に固有の識別情報（ＩＤ）そのものを公開鍵とすることが可能な方式（ＩＤに基づく電子署名方式）の必要性が、１９８４年に提唱され、それ以降、具体的な実現方式が提案されてきた。
【０００５】
ＩＤに基づく電子署名方式においては、まず、鍵の発行及び管理を行うセンタが、マスター鍵ｍｓｔを生成し、ｍｓｔに対応する公開情報ｐｕｂを公開する。次に、任意の文宇列ｃｈａｒとｍｓｔとを作用させ、当該文字列に対する署名鍵ｄｃｈａｒを生成する（便宜上、このような署名鍵ｄｃｈａｒを「ｃｈａｒに基づく署名鍵」と呼ぶ）。ｄｃｈａｒを用いて作成された電子署名は、ｃｈａｒ及びｐｕｂを用いて検証することができる。
【０００６】
通常、ｃｈａｒに対応する署名鍵の保持者となる利用者（利用者１）の電子メールアドレス等がｃｈａｒとして利用される。この場合、利用者１がメッセージＭに対して電子署名を作成する際、検証者（利用者２）は利用者１の電子メールアドレス及びｐｕｂを用いてＭに対する電子署名を検証することができる。
【０００７】
このような機能を提供する具体的な方式として、例えば、Ｓｈａｍｉｒ方式（非特許文献１参照）が知られている。以下、Ｓｈａｍｉｒ方式を用いたＩＤに基づく電子署名方法の概要について説明する。
【０００８】
センタは、二つの大きい素数ｐ，　ｑの積である合成数ｎを作成し、また、ｅｄ＝１　ｍｏｄ　ｌｃｍ（ｐ−１，　ｑ−１）となるｅ，　ｄを作成する。ここで、ｌｃｍ（ｐ−１，ｑ−１）はｐ−１とｑ−１の最小公倍数を表す。ｄがセンタの持つマスター鍵となり、ｅ，　ｎが公開情報となる。次に、センタは文字列ｃｈａｒとマスター鍵ｄを作用させ、ｃｈａｒに基づく署名鍵をｄｃｈａｒ：＝ｃｈａｒｄ　ｍｏｄ　ｎにより導出する。ｄｃｈａｒを用いて、メッセージＭに対する電子署名｛ｓ，　ｔ｝は次のように作成される。まず、乱数ｒを選び、ｔ：＝ｒｅ　ｍｏｄ　ｎを求め、また、ｓ：＝ｄｃｈａｒｒｈ（ｔ，Ｍ）　ｍｏｄ　ｎを導出する。ここで、ｈは一方向性ハッシュ関数とする。メッセージＭ及び電子署名｛ｓ，ｔ｝の検証者は、ｓｅ＝ｃｈａｒ　ｔｈ（ｔ，ｍ）　ｍｏｄ　ｎ（検証鍵）が成立した場合、｛ｓ，ｔ｝がｄｃｈａｒの持ち主によりＭに対してなされた署名であることを確認することができる。
【０００９】
このようなＩＤに基づく電子署名方式においては、公開鍵の取得や正当性の検証にコストが掛からないという利点がある。
【００１０】
【非特許文献１】
Ｌｅｃｔｕｒｅ　Ｎｏｔｅｓ　ｉｎ　Ｃｏｍｐｕｔｅｒ　Ｓｃｉｅｎｃｅ，　Ｖｏｌ．　１９６，　Ｓｐｒｉｎｇｅｒ−Ｖｅｒｌａｇ，　ｐｐ．　４７−５３，　１９８４
【００１１】
【発明が解決しようとする課題】
しかしながら、上述した従来のＩＤに基づく電子署名方式では、署名鍵が利用者に固有のＩＤに基づいて生成されるため、当該ＩＤを変更しない限り鍵を更新することができないといった問題があった。また、このような従来のＩＤに基づく電子署名方式では、従来の電子署名方式のようなＣＲＬを用いて当該署名鍵に対となる公開鍵を無効化することができないといった問題があった。
【００１２】
そこで、本発明は、以上の点に鑑みてなされたもので、鍵の更新を可能とするＩＤに基づく電子署名方法及び電子署名システムを提供することをその目的とする。
【００１３】
【課題を解決するための手段】
本発明の第１の特徴は、利用者に固有の識別情報に基づく署名鍵を用いた電子署名方法であって、複数の利用者端末が所属する集団におけるセンタが、署名鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、センタによって利用者端末の各々に対して発行された署名鍵の更新回数とを集団に公開するステップＡと、集団に所属する第１の利用者端末が、第１の利用者端末に対する署名鍵の発行要求を送信するステップＢと、センタが、第１の利用者端末に対する署名鍵の更新回数を更新するステップＣと、センタが、発行要求に応じて第１の利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者に固有の識別情報とに基づいて、所定の方法により第１の利用者端末に対する署名鍵を発行するステップＤと、センタが、ステップＤにおいて発行された署名鍵を第１の利用者端末に送信するステップＥと、第１の利用者端末が、第１の利用者端末に対する署名鍵を用いて署名付き情報を生成し、署名付き情報を集団に所属する第２の利用者端末に送信するステップＦと、第２の利用者端末が、第１の利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と、利用者に固有の識別情報と、第１の利用者端末に対する署名鍵に対となる検証鍵とに基づいて、署名付き情報が第１の利用者端末によって生成されたか否かであることを判定するステップＧとを備えることを要旨とする。
【００１４】
かかる特徴によれば、署名鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された署名鍵の更新回数とを用いて新たな署名鍵を発行するため、利用者に固有のＩＤに基づく電子署名において、鍵の更新を行うことができる。
【００１５】
本発明の第２の特徴は、本発明の第１の特徴において、センタが、第１の利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者に固有の識別情報とに基づいて、所定の方法により第１の利用者端末に対する署名鍵に対となる検証鍵を発行するステップと、センタが、検証鍵を第２の利用者端末に送信するステップとをさらに備え、第２の利用者端末は、ステップＧにおいて、第１の利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者に固有の識別情報と、センタによって送信された検証鍵とに基づいて、署名付き情報が第１の利用者端末によって生成されたか否かであることを判定することが好ましい。
【００１６】
かかる特徴によれば、センタが署名鍵に対となる検証鍵を発行し、その検証鍵を利用者端末に対して送信するため、署名鍵の更新された場合においても検証鍵を確実に取得することができる。
【００１７】
本発明の第３の特徴は、本発明の第１または第２の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）個の異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることが好ましい。
【００１８】
かかる特徴によれば、関数として、ｈｉ（ｘ）＝ｘ＋ｒｉを用い、かつｘ及びｒｉを所定の誤り訂正符号によって表現された値を用いるため、当該関数を用いて生成された利用者に固有のＩＤに基づく値と、他の利用者に用いられる値とが同一となることがないため、異なる利用者に対して同一の署名鍵が発行されるような事態を避けることができ、より高い安全性を確保することができる。
【００１９】
本発明の第４の特徴は、鍵管理サーバと第１の利用者端末と第２の利用者端末とを具備する、利用者に固有の識別情報に基づく署名鍵を用いた電子署名システムであって、鍵管理サーバが、複数の利用者端末が所属する集団に対して、署名鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された署名鍵の更新回数とを公開する情報公開手段と、集団に所属する第１の利用者端末から、第１の利用者端末に対する署名鍵の発行要求を受信する発行要求受信手段と、第１の利用者端末に対する署名鍵の更新回数を更新する更新手段と、発行要求に応じて、第１の利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者に固有の識別情報とに基づいて、所定の方法により第１の利用者端末に対する署名鍵を発行する署名鍵発行手段と、署名鍵発行手段によって発行された署名鍵を第１の利用者端末に送信する署名鍵送信手段とを備え、第１の利用者端末が、第１の利用者端末に対する署名鍵の発行要求を鍵管理サーバに送信する発行要求送信手段と、鍵管理サーバよって送信された第１の利用者端末に対する署名鍵を受信する鍵受信手段と、第１の利用者端末に対する署名鍵を用いて署名付き情報を生成し、署名付き情報を集団に所属する第２の利用者端末に送信する情報送信手段とを備え、第２の利用者端末が、第１の利用者端末によって送信された署名付き情報を受信する情報受信手段と、第１の利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者に固有の識別情報と、第１の利用者端末に対する署名鍵に対となる検証鍵に基づいて、署名付き情報が第１の利用者端末によって生成されたか否かであることを判定する判定手段とを備えることを要旨とする。
【００２０】
本発明の第５の特徴は、本発明の第４の特徴において、鍵管理サーバが、第１の利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者に固有の識別情報とに基づいて、所定の方法により第１の利用者端末に対する署名鍵に対となる検証鍵を発行する検証鍵発行手段と、検証鍵を第２の利用者端末に送信する検証鍵送信手段とをさらに備え、第２の利用者端末が、検証鍵を受信する検証鍵受信手段をさらに備え、判定手段が、第１の利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と、利用者に固有の識別情報と、検証鍵受信手段が受信した検証鍵とに基づいて、署名付き情報が第１の利用者端末によって生成されたか否かであることを判定することを要旨とする。
【００２１】
本発明の第６の特徴は、本発明の第４または第５の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）個の異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることを要旨とする。
【００２２】
本発明の第７の特徴は、利用者に固有の識別情報に基づく署名鍵を用いた電子署名システムにおける鍵管理サーバであって、複数の利用者端末が所属する集団に対して、署名鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末の各々に対して発行された署名鍵の更新回数とを公開する情報公開手段と、利用者端末から、利用者端末に対する署名鍵の発行要求を受信する発行要求受信手段と、利用者端末に対する署名鍵の更新回数を更新する更新手段と、発行要求に応じて、利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者に固有の識別情報とに基づいて、所定の方法により利用者端末に対する署名鍵を発行する署名鍵発行手段と、署名鍵発行手段によって発行された署名鍵を利用者端末に送信する署名鍵送信手段とを備えることを要旨とする。
【００２３】
本発明の第８の特徴は、本発明の第７の特徴において、鍵管理サーバが、利用者端末に対する署名鍵の更新回数に対応付けられた関数を選択し、選択された関数と利用者に固有の識別情報とに基づいて、所定の方法により利用者端末に対する署名鍵に対となる検証鍵を発行する検証鍵発行手段と、検証鍵を集団に所属する他の利用者端末に送信する検証鍵送信手段とをさらに備えることを要旨とする。
【００２４】
本発明の第９の特徴は、本発明の第７または第８の特徴において、関数の族が、所定の誤り訂正符号によって符号化された利用者に固有の識別情報と誤り訂正符号によって誤り訂正の可能な（Ｎ＋１）異なるランダムなノイズｒ０，…，ｒＮとにより、式ｈｉ（ｘ）＝ｘ＋ｒｉ（ただし、ｘは利用者に固有の識別情報であり、ｉは０≦ｉ≦Ｎ）を用いて構成されることを要旨とする。
【００２５】
本発明の第１０の特徴は、署名鍵の更新回数に対応付けられた関数と利用者に固有の識別情報とに基づいて、所定の方法により発行される署名鍵を用いた電子署名システムにおいて用いられる移動通信端末であって、署名鍵を発行する鍵管理サーバに対して、移動通信端末に対する署名鍵の発行要求を送信する発行要求送信手段と、鍵管理サーバから、移動通信端末に対する署名鍵を受信する鍵受信手段と、移動通信端末に対する署名鍵を用いて署名付き情報を生成し、署名付き情報を他の移動通信端末に送信する情報送信手段とを備えたことを要旨とする。
【００２６】
本発明の第１１の特徴は、署名鍵の更新回数に対応付けられた関数と利用者に固有の識別情報とに基づいて、所定の方法により発行される署名鍵を用いた電子署名システムにおいて用いられる移動通信端末であって、他の移動通信端末によって送信された署名付き情報を受信する情報受信手段と、署名鍵を発行する鍵管理サーバによって公開されている他の移動通信端末に対する署名鍵の更新回数と、その更新回数に対応付けられた関数とを選択し、選択された関数と他の移動通信端末の利用者に固有の識別情報と、他の移動通信端末に対する署名鍵に対となる検証鍵に基づいて、署名付き情報が他の移動通信端末によって生成されたか否かであることを判定する判定手段とを備えることを要旨とする。
【００２７】
本発明の第１２の特徴は、本発明の第１１の特徴において、他の移動通信端末に対する署名鍵に対となる検証鍵を受信する検証鍵受信手段をさらに備え、判定手段が、更新回数に対応付けられた関数を選択し、選択された関数と、他の移動通信端末の利用者に固有の識別情報と、検証鍵受信手段が受信した検証鍵とに基づいて、署名付き情報が他の移動通信端末によって生成されたか否かであることを判定することを要旨とする。
【００２８】
【発明の実施の形態】
（本実施形態に係る電子署名システムの全体構成）
本発明の実施形態について図面を参照しながら説明する。図１は、本実施形態に係る電子署名システムの全体構成図である。
【００２９】
同図に示すように、本実施形態に係る電子署名システムは、通信ネットワーク１と、データベース１０と、鍵管理サーバ２０と、利用者端末３０ａと、利用者端末３０ｂとから構成されている。
【００３０】
通信ネットワーク１は、鍵管理サーバ２０と、データベース１０と、利用者端末３０ａと、利用者端末３０ｂとを接続するものである。通信ネットワーク１としては、例えばインターネットを用いることができる。なお、ここでいうインターネットとは、ＲＦＣ７９１等において規定されるＩＰｖ４またはＲＦＣ２４６０等において規定されるＩＰｖ６であってもよい。
【００３１】
データベース１０は、本実施形態では、利用者端末３０ａ，３０ｂに対して発行された署名鍵の更新回数及び関数の族を記憶するとともに、記憶した署名鍵の更新回数及び関数の族を利用者端末３０ａ，３０ｂに対して公開するものである。
【００３２】
鍵管理サーバ２０は、本実施形態では、利用者端末３０ａ，３０ｂに対して署名鍵または検証鍵を発行するとともに、利用者端末３０ａ，３０ｂに対して発行した署名鍵の更新回数及び署名鍵を生成するため等に用いられる関数の族を管理するものである。また、鍵管理サーバ２０は、署名鍵の更新回数や関数の族をデータベース１０上に公開させる機能を有している。
【００３３】
なお、本実施形態では、データベース１０と鍵管理サーバ２０とは、分離された形態となっているが、データベース１０と鍵管理サーバ２０とを一体のハードウェア・ソフトウェアによって実現してもよい。
【００３４】
利用者端末３０ａは、本実施形態では、鍵管理サーバ２０によって発行される署名鍵を用いて、平文に対して署名を付加した署名付き情報を送信するものである。また、利用者端末３０ｂは、本実施形態では、利用者端末３０ａから署名付き情報を受信し、データベース１０上に公開されている署名鍵の更新回数及び関数の族と、利用者端末３０ａに対する署名鍵に対となる検証鍵とに基づいて、受信した署名付き情報の正当性を判定するものである。
【００３５】
利用者端末３０ａ，３０ｂとしては、例えば、パーソナルコンピュータ、携帯情報端末（ＰＤＡ）、携帯電話端末等を用いることができる。
【００３６】
図２は、データベース１０、鍵管理サーバ２０、利用者端末３０ａ，３０ｂそれぞれの構成を示すブロック構成図である。
【００３７】
データベース１０は、本実施形態では、利用者端末３０ａ，３０ｂに対して、署名鍵の更新回数の各々と一意に対応付けられた関数によって構成される関数の族と、利用者端末３０ａ，３０ｂの各々に対して発行された署名鍵の更新回数とを公開する情報公開手段を構成する。
【００３８】
具体的には、データベース１０上に公開される関数として、例えば、ｈｉ（ｘ）＝ｘ＋ｒｉを用いることができる。ここで、ｘは、誤り訂正符号によって符号化された利用者に固有のＩＤである。ｒは、当該誤り訂正符号によって訂正可能なランダムなノイズであり、署名鍵の最大更新回数Ｎに対し、（Ｎ＋１）個のｒ０，…，ｒＮから構成される。また、ｉは、署名鍵の更新回数であり、０≦ｉ≦Ｎとする。よって、ｈｉ（ｘ）は、ＩＤがｘである利用者の利用者端末に対するｉ回目の署名鍵の更新及びその更新された署名鍵によって生成された署名付き情報を検証する場合に用いられる関数を示している。
【００３９】
なお、利用者に固有の識別情報としては、当該利用者の電子メールアドレスや電話番号等を用いることができる。また、上述した誤り訂正符号とは、ビット誤りを訂正できる符号であればよく、例えば、ＣＲＣやハミング符号等を用いることができる。また、上述した関数と異なる関数を用いて関数の族を構成してもよい。
【００４０】
関数の族テーブル１１は、上述した関数により表現される複数の関数｛ｈ０（・），ｈ１（・），．．．，　ｈＮ（・）｝と、署名鍵の更新回数との対応付けを示している。ここで、（・）は、各利用者のＩＤに対応することを示している。このように関数の族を構成することにより、例えば、電子メールアドレスがＵである利用者端末３０ａの利用者Ｕに対して初めて署名鍵が発行される場合には、鍵管理サーバ２０は、ｈ０（・）を選択し、ｈ０（Ｕ）を取得する。また、鍵管理サーバ２０は、利用者Ｕに対してｉ回目（１≦ｉ≦Ｎ）の署名鍵が発行される場合には、ｈｉ（・）を選択し、ｈｉ（Ｕ）を取得する。
【００４１】
また、データベース１０は、本実施形態では、利用者端末３０ａの利用者Ｕに対して発行された署名鍵の更新回数を示す更新回数情報ｐを鍵管理サーバ２０から受信し、更新回数情報ｐを利用者端末３０ａ，３０ｂに対して公開することができる。
【００４２】
更新回数情報テーブル１２は、更新回数情報ｐの内容の例を示しており、各々の利用者のＩＤと、当該利用者に対して発行された署名鍵の更新回数とが対応付けられている。
【００４３】
鍵管理サーバ２０は、本実施形態では、発行要求受信部２１と、秘密情報生成部２２と、鍵発行部２３と、鍵送信部２４と、情報更新部２５とから構成されている。
【００４４】
以下、上述したＳｈａｍｉｒ方式（所定の方法）を用いた利用者に固有のＩＤに基づく電子署名を例として各部の構成を説明する。
【００４５】
発行要求受信部２１は、本実施形態では、利用者端末３０ａから、利用者端末３０ａに対する署名鍵の発行要求を受信するものである。具体的には、発行要求受信部２１は、利用者端末３０ａの利用者Ｕから、利用者ＵのＩＤに基づく署名鍵の発行要求を受信し、受信した当該発行要求を鍵発行部２３へ送信するものである。
【００４６】
秘密情報生成部２２は、本実施形態では、所定の方法に基づいて秘密情報を生成するものである。
【００４７】
具体的には、秘密情報生成部２２は、二つの大きい素数ｐ，　ｑの積である合成数ｎと、ｅｄ＝１　ｍｏｄ　ｌｃｍ（ｐ−１，　ｑ−１）となるｅ，　ｄとを生成する。秘密情報生成部２２は、生成されたｄ（マスター鍵）を秘密情報とし、鍵発行部２３に送信する。ここで、ｅ及びｎは、利用者端末３０ａ，３０ｂに対して公開されるものとする。なお、ｅ及びｎは、データベース１０上において公開させてもよい。
【００４８】
鍵発行部２３は、本実施形態では、利用者端末３０ａからの署名鍵の発行要求に応じて、利用者端末３０ａに対する署名鍵の更新回数を示す更新回数情報ｐに対応付けられた関数を｛ｈ０（・），　ｈ１（・），…，　ｈＮ（・）｝の中から選択し、選択された関数と利用者端末３０ａの利用者Ｕの電子メールアドレスＵとに基づいて、所定の方法により利用者端末３０ａに対する署名鍵を発行する署名鍵発行手段を構成する。
【００４９】
また、鍵発行部２３は、本実施形態では、利用者端末３０ａに対する署名鍵の更新回数を示す更新回数情報ｐに対応付けられた関数を｛ｈ０（・），　ｈ１（・），…，　ｈＮ（・）｝の中から選択し、選択された関数と利用者端末３０ａの利用者Ｕの電子メールアドレスＵとに基づいて、所定の方法により前記利用者端末３０ａに対する署名鍵に対となる検証鍵を発行する検証鍵発行手段を構成する。
【００５０】
本実施形態に係る鍵発行部２３は、発行要求受信部２１によって受信された利用者端末３０ａからの発行要求を受信する。さらに、鍵発行部２３は、データベース１０上に公開されている更新回数情報ｐを参照し、利用者端末３０ａに対する署名鍵の更新回数と、更新回数に対応付けられた関数を｛ｈ０（・），　ｈ１（・），…，　ｈＮ（・）｝の中から選択する。具体的には、鍵発行部２３は、例えば、利用者端末３０ａが初めての署名鍵の発行を要求している場合、データベース１０上に公開されている更新回数情報ｐに利用者端末３０ａに対する署名鍵の更新記録がないため、ｈ０（・）を選択し、利用者Ｕの電子メールアドレスＵからｈ０（Ｕ）を取得する。
【００５１】
さらに、本実施形態に係る鍵発行部２３は、式ｄｃｈａｒ＝ｃｈａｒｄ　ｍｏｄ　ｎを用いて署名鍵を生成する。ここで、ｃｈａｒには、取得されたｈ０（Ｕ）が用いられる。ｄは、秘密情報生成部２２によって生成されたマスター鍵（秘密情報）であり、ｎは、素数ｐ，　ｑの積の合成数である。このようにして、鍵発行部２３は、利用者のＩＤに基づく最初の署名鍵を発行することができる。
【００５２】
また、本実施形態に係る鍵発行部２３は、署名鍵に対となる検証鍵ｓｅ＝ｃｈａｒ　ｔｈ（ｔ，Ｍ）　ｍｏｄ　ｎを生成することができる。ここで、ｃｈａｒには、取得されたｈ０（Ｕ）が用いられる。ｓ，　ｔは、平文Ｍに対して付加されている署名であり、ｈは、一方向性ハッシュ関数である。また、ｅ及びｎは、秘密情報生成部２２が生成した値である。このようにして、鍵発行部２３は、利用者のＩＤに基づく最初の検証鍵を発行することができる。
【００５３】
また、鍵発行部２３は、例えば、利用者端末３０ａがｉ回目（１≦ｉ≦Ｎ）の署名鍵の更新を要求している場合、データベース１０上に公開されている更新回数情報ｐから利用者端末３０ａに対する署名鍵の更新回数を参照してｈｉ（・）を選択し、利用者Ｕの電子メールアドレスＵからｈｉ（Ｕ）を取得することができる。さらに、鍵発行部２３は、上述した署名鍵と同様に、利用者Ｕの電子メールアドレスＵに対応するｉ回目の署名鍵を発行することができる。また、鍵発行部２３は、上述した検証鍵と同様に、利用者Ｕの電子メールアドレスＵに対応するｉ回目の検証鍵を発行することができる。
【００５４】
鍵発行部２３は、利用者Ｕからの発行要求に基づいて発行した署名鍵または検証鍵を鍵送信部２４に送信するとともに、署名鍵または検証鍵を発行したことを情報更新部２５に通知することができる。
【００５５】
鍵送信部２４は、本実施形態では、鍵発行部２３が発行した署名鍵を利用者端末３０ａに送信する署名鍵送信手段を構成する。また、鍵送信部２４は、本実施形態では、鍵発行部２３が発行した検証鍵を利用者端末３０ｂに送信する検証鍵送信手段を構成する。
【００５６】
情報更新部２５は、本実施形態では、利用者端末３０ａ，３０ｂに対する署名鍵の更新回数を示す更新回数情報ｐを更新する更新手段を構成する。
【００５７】
具体的には、情報更新部２５は、鍵発行部２３から通知された署名鍵の更新回数を取得し、データベース１０によって公開されている利用者Ｕの更新回数情報ｐを更新することができる。
【００５８】
利用者端末３０ａは、本実施形態では、発行要求送信部３１と、鍵受信部３２と、情報送信部３３とから構成されている。
【００５９】
発行要求送信部３１は、本実施形態では、利用者端末３０ａに対する署名鍵の発行要求を鍵管理サーバ２０に送信するものである。
【００６０】
鍵受信部３２は、本実施形態では、利用者端末３０ａに対する署名鍵または検証鍵を鍵管理サーバ２０から受信するものである。具体的には、鍵受信部３２は、鍵管理サーバ２０から署名鍵を受信し、受信した署名鍵を保存しておくことができる。また、鍵受信部３２は、情報送信部３３と接続されている。
【００６１】
情報送信部３３は、本実施形態では、鍵受信部３２によって受信された署名鍵を用いて署名付き情報を生成し、当該署名付き情報を利用者端末３０ｂに送信するものである。
【００６２】
具体的には、情報送信部３３は、署名鍵を用いて、平文Ｍに対する署名ｓ，　ｔを、ｔ：＝ｒｅ　ｍｏｄ　ｎ、ｓ：＝ｄｃｈａｒｒｈ（ｔ，Ｍ）　ｍｏｄ　ｎにより生成する。ここで、ｄｃｈａｒは、鍵発行部２３が生成した署名鍵である。ｒは適当な乱数であり、ｈは一方向性ハッシュ関数である。ｅ及びｎは、秘密情報生成部２２が生成した値であり、利用者端末３０ａ，３０ｂに公開されているものである。このようにして、情報送信部３３は、平文Ｍに対する署名付き情報を利用者端末３０ｂに送信することができる。
【００６３】
利用者端末３０ｂは、本実施形態では、情報受信部３４と、判定部３５とから構成されている。
【００６４】
情報受信部３４は、本実施形態では、利用者端末３０ａによって送信された署名付き情報を受信する情報受信手段を構成する。また、情報受信部３４は、本実施形態では、検証鍵を受信する検証鍵受信手段を構成する。
【００６５】
具体的には、情報受信部３４は、利用者端末３０ａによって送信された署名付き情報を受信することができる。また、情報受信部３４は、鍵管理サーバ２０によって送信された検証鍵を受信することができる。さらに、情報受信部３４は、データベース２０に対してアクセスし、データベース１０上に公開されている更新回数情報ｐ及び更新回数と対応付けられた関数を取得する機能を有している。
【００６６】
なお、情報送信部３３と情報受信部３４との当該署名付き情報の送受には、例えばＲＦＣ８２１等において規定されるＳＭＴＰを用いることができる。
【００６７】
判定部３５は、本実施形態では、利用者端末３０ａに対する署名鍵の更新回数情報ｐに対応する関数を｛ｈ０（・），　ｈ１（・），…，　ｈＮ（・）｝の中から選択し、選択された関数と、利用者端末３０ａの利用者Ｕの電子メールアドレスＵとに基づいて、利用者端末３０ａによって送信された署名付き情報が利用者端末３０ａの利用者Ｕによって生成されたか否かであることを判定するものである。
【００６８】
具体的には、判定部３５は、情報受信部３４を介して、データベース１０上に公開されている更新回数情報ｐを参照し、利用者端末３０ａに対する署名鍵の更新回数に対応付けられた関数を｛ｈ０（・），　ｈ１（・），…，　ｈＮ（・）｝の中から選択する。判定部３５は、例えば、更新回数情報ｐから、利用者Ｕがｉ回の署名鍵の更新を行っている場合、ｈｉ（・）を選択し、利用者Ｕの電子メールアドレスＵに基づいてｈｉ（Ｕ）を取得する。
【００６９】
また、判定部３５は、受信した署名付き情報に基づいて、鍵送信部２４によって送信された検証鍵が示す式ｓｅ＝ｃｈａｒ　ｔｈ（ｔ，Ｍ）　ｍｏｄ　ｎが成立するか否かを検証する。ここで、ｃｈａｒには、取得したｈｉ（Ｕ）が用いられる。ｓ，　ｔは、署名付き情報を構成する署名であり、Ｍは署名付き情報を構成する平文である。また、ｈは一方向性ハッシュ関数である。また、ｅ及びｎは、秘密情報生成部２２が生成した値であり、利用者端末３０ａ，３０ｂに公開されているものである。このようにして、判定部３５は、受信した署名付き情報が利用者端末３０ａの利用者Ｕによって生成されたか否かを判定することができる。
【００７０】
なお、上述した発行要求送信部３１、鍵受信部３２、情報送信部３３、情報受信部３４、判定部３５のすべてを、一つの利用者端末に具備させることもできる。
【００７１】
（本実施形態に係る電子署名システムによる電子署名方法）
次に、本実施形態に係る電子署名システムによる電子署名方法について説明する。図３乃至図５は、本実施形態に係る電子署名方法のシーケンスを示している。
【００７２】
まず、鍵管理サーバ２０は、所定の式（ｅｄ＝１　ｍｏｄ　ｌｃｍ（ｐ−１，　ｑ−１））に基づいて、秘密情報（ｄ）を生成する（Ｓ１）。なお、秘密情報とともに生成されたｅ，　ｎは、利用者端末３０ａ，３０ｂに対して公開される。
【００７３】
また、鍵管理サーバ２０は、利用者端末３０ａ，３０ｂに対する署名鍵の更新の回数を示す更新回数情報ｐをデータベース１０上に公開する（Ｓ２）。さらに、鍵管理サーバ２０は、例えば、所定の式（ｈｉ（ｘ）＝ｘ＋ｒｉ）によって求めることのできる関数の族｛ｈ０（・），　ｈ１（・），．．．，　ｈＮ（・）｝をデータベース１０上に公開する（Ｓ３）。
【００７４】
利用者端末３０ａは、署名鍵の発行要求を鍵管理サーバ２０に送信する（Ｓ４）。
【００７５】
鍵管理サーバ２０は、利用者端末３０ａから、初回の署名鍵の発行要求を受信する（Ｓ５）。次いで、鍵管理サーバ２０は、利用者Ｕの電子メールアドレスＵに基づいて、データベース１０によって公開されている関数の族の中からｈ０（・）を選択し、ｈ０（Ｕ）を取得する（Ｓ６）。
【００７６】
さらに、鍵管理サーバ２０は、ステップＳ１において生成された秘密情報（ｄ）とｈ０（Ｕ）を用いて、所定の式（ｄｃｈａｒ＝ｃｈａｒｄ　ｍｏｄ　ｎ）により求めることのできる初回の署名鍵（ｄｃｈａｒまたはｒ０，Ｕ）を発行する（Ｓ７）。
【００７７】
鍵管理サーバ２０は、ステップＳ７において発行された署名鍵（ｒ０，Ｕ）を利用者端末３０ａに送信する（Ｓ８）。
【００７８】
利用者端末３０ａは、ステップＳ７において発行された署名鍵ｒ０，Ｕを受信する（Ｓ９）。
【００７９】
次いで、利用者端末３０ａは、ｉ回目の署名鍵の発行要求を鍵管理サーバ２０に送信する（Ｓ１０）。なお、利用者端末３０ａが、署名鍵の更新を行う事由としては、例えば署名鍵の漏洩や紛失等がある。
【００８０】
鍵管理サーバ２０は、利用者端末３０ａから、ｉ回目の署名鍵の発行要求を受信する（Ｓ１１）。次いで、鍵管理サーバ２０は、利用者端末３０ａの利用者Ｕがｉ回目の署名鍵の更新を行うことに伴い、利用者Ｕの更新回数情報ｐを更新する（Ｓ１２）。
【００８１】
次いで、鍵管理サーバ２０は、ステップＳ１２において更新された更新回数情報ｐをデータベース１０上に公開する（Ｓ１３）。また、鍵管理サーバ２０は、データベース１０上に公開されている更新回数情報ｐを参照し、利用者Ｕに対する署名鍵の更新回数と対応付けられた関数ｈｉ（・）を選択し、電子メールアドレスＵに基づいてｈｉ（Ｕ）を取得する（Ｓ１４）。
【００８２】
さらに、鍵管理サーバ２０は、ステップＳ１において生成された秘密情報（ｄ）とｈｉ（Ｕ）とを用いて、所定の式（ｄｃｈａｒ＝ｃｈａｒｄ　ｍｏｄ　ｎ）により求めることのできるｉ回目の署名鍵（ｄｃｈａｒまたはｒｉ，ｕ）を発行する（Ｓ１５）。
【００８３】
鍵管理サーバ２０は、ステップＳ１５において発行された署名鍵（ｒｉ，ｕ）を利用者端末３０ａに送信する（Ｓ１６）。
【００８４】
利用者端末３０ａは、ステップＳ１５において発行された署名鍵（ｒｉ，ｕ）を受信する（Ｓ１７）。
【００８５】
次いで、利用者端末３０ａは、署名鍵を用いて所定の式（ｔ：＝ｒｅ　ｍｏｄ　ｎ、ｓ：＝ｄｃｈａｒｒｈ（ｔ，Ｍ）　ｍｏｄ　ｎ）により求めることのできる署名（ｓ，　ｔ）を生成し、生成された署名を付加した署名付き情報｛ｍ，　α｝を生成する（Ｓ１８）。さらに、利用者端末３０ａは、ステップＳ１８において生成された署名付き情報｛ｍ，　α｝を利用者端末３０ｂに送信する（Ｓ１９）。
【００８６】
利用者端末３０ｂは、ステップＳ１９において送信された署名付き情報｛ｍ，　α｝を受信する（Ｓ２０）。
【００８７】
次いで、利用者端末３０ｂは、データベース１０上に公開されている更新回数情報ｐを取得し（Ｓ２１）、また、利用者端末３０ｂは、ステップＳ２１において取得された更新回数情報ｐから、利用者Ｕがこれまでに行った署名鍵の更新回数ｉを取得する（Ｓ２２）。さらに、利用者端末３０ｂは、利用者Ｕの電子メールアドレスＵ及び取得した更新回数ｉから値ｈｉ（Ｕ）を取得する（Ｓ２３）。
【００８８】
次いで、利用者端末３０ｂは、ステップＳ２３において取得した値ｈｉ（Ｕ）を用いて、ステップＳ２０において受信した署名付き情報を所定の式（ｓｅ＝ｃｈａｒ　ｔｈ（ｔ，Ｍ）　ｍｏｄ　ｎ）により判定する（Ｓ２４）。
【００８９】
利用者端末３０ｂは、ステップＳ２４における判定結果から、受信した署名付き情報によって、所定の式（ｓｅ＝ｃｈａｒ　ｔｈ（ｔ，Ｍ）　ｍｏｄ　ｎ）が成立するか否かを検証する（Ｓ２５）。
【００９０】
利用者端末３０ｂは、ステップＳ２５における検証の結果、所定の式が成立した場合、利用者Ｕによる正当な署名である（Ｓ２６）とし、当該署名付き情報を受理する（Ｓ２７）。
【００９１】
一方、利用者端末３０ｂは、ステップＳ２５における検証の結果、所定の式が成立しない場合、不当な署名である（Ｓ２８）とし、当該署名付き情報｛ｍ，　α｝を受理しない（Ｓ２９）。
【００９２】
以上、本実施形態に係る電子署名システム及び電子署名方法について、Ｓｈａｍｉｒ方式（所定の方法）を用いた利用者に固有のＩＤに基づく電子署名を例として説明したが、本実施形態に係る電子署名システム及び電子署名方法において用いることのできる署名方式は、Ｓｈａｍｉｒ方式に限定されるものではなく、勿論他の方式を用いて利用者に固有のＩＤに基づく電子署名を行うこともできる。
【００９３】
（電子署名システム及び電子署名方法による作用・効果）
本実施形態に係る電子署名システム及び電子署名方法によれば、利用者Ｕの電子メールアドレスＵと更新回数に対応付けられた関数の族｛ｈ０（・），　ｈ１（・），．．．，　ｈＮ（・）｝から求められる値（例えばｈｉ（Ｕ））に基づいて署名鍵または検証鍵を生成して発行するため、従来のＩＤに基づく電子署名では困難であった鍵の更新を行うことができる。
【００９４】
本実施形態によれば、鍵管理サーバ２０が、利用者Ｕからの発行要求に応じて、利用者に固有のＩＤに対応する署名鍵を更新するため、利用者端末３０ａの利用者Ｕは、当該ＩＤを変更することなく、署名鍵の漏洩や紛失に伴う署名鍵の更新を随時かつ迅速に行うことができる。
【００９５】
また、本実施形態によれば、鍵管理サーバ２０が、署名鍵に対となる検証鍵を生成して発行し、その検証鍵を利用者端末３０ｂに送信するため、署名鍵が更新された場合においても検証鍵を確実に取得することができる。
【００９６】
さらに、本実施形態によれば、データベース１０上に公開される署名鍵（検証鍵）を生成するための関数として、ｈｉ（ｘ）＝ｘ＋ｒｉを用い、かつｘ（利用者に固有のＩＤ）及びｒｉ（ランダムノイズ）を所定の誤り訂正符号によって表現された値を用いることにより、利用者Ｕの電子メールアドレスＵに基づく値ｈｉ（Ｕ）と、他の利用者に用いられる値とが同一となることがないため、異なる利用者に対して同一の署名鍵（検証鍵）が発行されるような事態を避けることができ、より高い安全性を確保することができる。
【００９７】
【発明の効果】
以上説明したように本発明によれば、鍵の更新を可能とするＩＤに基づく電子署名方法及び電子署名システムを提供することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る電子署名システムの全体構成図である。
【図２】本発明の実施形態に係るデータベース、鍵管理サーバ及び利用者端末のブロック構成を示す図である。
【図３】本実施形態に係る電子署名方法を示すシーケンス図である。
【図４】本実施形態に係る電子署名方法を示すシーケンス図である。
【図５】本実施形態に係る電子署名方法を示すシーケンス図である。
【符号の説明】
１…通信ネットワーク
１０…データベース
２０…鍵管理サーバ
２１…発行要求受信部
２２…秘密情報生成部
２３…鍵発行部
２４…鍵送信部
２５…情報更新部
３０ａ，３０ｂ…利用者端末
３１…発行要求送信部
３２…鍵受信部
３３…情報送信部
３４…情報受信部
３５…判定部
【図１】
2004112539.tif 000003
【図２】
2004112539.tif 000004
【図３】
2004112539.tif 000005
【図４】
2004112539.tif 000006
【図５】
2004112539.tif 000007