(57)【要約】【課題】  簡単な方法且つ高い信頼性で経済的に電子署名を更新できる仕組を構築することにより、長期的に電子署名を有効となす電子署名方法および電子署名装置を提供する。【解決手段】  電子署名を生成する手段である電子署名発行サーバ１２と基準時計１１と、有効鍵束保管部１３と失効鍵束保管部１４からなる記憶手段を有する情報処理装置である第３者機関１０と、電子署名生成ソフトウエアがインストールされ前記第３者機関１０と電子署名に関連するデータの授受を行う情報処理端末２０からなり、前記電子署名内に少なくとも１箇所の書き換え可能な情報記録領域を設け、ディジタルデータに対する電子署名を作成すると共に、電子署名を更新する毎に更新時点の電子証明情報を記録していく。【選択図】  図１
2005204126.tif 000002
【特許請求の範囲】
【請求項１】
電子署名生成手段を有する情報処理装置を用いて、ディジタルデータに対して電子署名を生成する電子署名方法であって、
上記情報処理装置が電子署名を生成する際に、電子署名内に少なくとも１箇所の書き換え可能な情報記録領域を設けることを特徴とする電子署名方法。
【請求項２】
前記電子署名生成手段を有する情報処理装置の記憶装置、または、当該情報処理装置に接続可能な外部記憶装置は、暗号化手段である秘密鍵および秘密鍵と対をなす公開鍵からなる鍵束を少なくとも２組所有し、各鍵束には固有のＩＤを与えておき、前記電子署名生成手段を有する情報処理装置と、この情報処理装置にインストールされている電子署名ソフトウエアは、前記電子署名を生成するために、作為または無作為に選択した前記鍵束に含まれる秘密鍵を用いて書き換え可能な情報記録領域を含む電子署名情報を暗号化し、使用した秘密鍵を含む鍵束のＩＤを添付して当該ディジタルデータに埋め込むことを特徴とする請求項１に記載の電子署名方法。
【請求項３】
前記電子署名生成手段を有する情報処理装置は、発行した書き換え可能な情報記録領域を設けた電子署名を、電子署名に添付した鍵束のＩＤをもとに復号可能な公開鍵を選択して復号し、前記書き換え可能な情報記録領域に記録されている情報を新たな情報に変更した後、再度作為または無作為に選択した秘密鍵を用いて暗号化すると共に、使用した秘密鍵を含む鍵束のＩＤを添付して当該ディジタルデータに再埋め込み可能とすることを特徴とする請求項１又は２に記載の電子署名方法。
【請求項４】
前記可変情報記録領域に記録する内容は、電子署名を更新するごとに前回または今回あるいはその両方の電子署名を更新したときの時刻、鍵束ＩＤ、当該ディジタルデータのダイジェスト値を含むことを特徴とする請求項１、２又は３に記載の電子署名方法。
【請求項５】
電子署名生成手段を有する情報処理装置、または、当該情報処理装置に接続可能な外部記憶装置は、有効期限切れなどにより失効した秘密鍵と公開鍵からなる鍵束とその鍵束のＩＤを永続的に保存することを特徴とする請求項１、２又は３に記載の電子署名方法。
【請求項６】
電子署名生成手段を有する情報処理装置を用いて、ディジタルデータに対して電子署名を生成する電子署名装置であって、
上記電子署名生成手段を有する情報処理装置、または、当該情報処理装置に接続可能な外部記録装置に、電子署名を生成、または書き換えるときに使用した鍵束のＩＤと、当該鍵束を使用して生成した電子署名の発行を要求した依頼者のメールアドレスなどの連絡先を含める情報を合わせて保存し、当該鍵束が失効する前に自動的あるいは操作者の操作によって電子署名の更新を促す情報を発信する手段を具備せしめたことを特徴とする電子署名装置。
【請求項７】
前記電子署名生成手段を有する情報処理装置は、前記電子署名の発行または書き換えに使用する鍵束の有効期限情報を添付した電子署名を発行し、この情報処理装置にインストールされている当該電子署名と添付された鍵束の有効期限情報が埋め込まれたディジタルデータを開くためのアプリケーションソフトウエア、または、当該電子署名を検証するための電子署名検証ソフトウエアの内、少なくとも一方のソフトウエアには、当該電子署名に添付された有効期限情報を読み取る手段と、当該電子署名と添付された鍵束の有効期限情報が埋め込まれたディジタルデータを開く毎、または、検証する毎に鍵束の有効期限情報を表示する手段が具備されていることを特徴とする請求項６に記載の電子署名装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタルデータに対して電子署名を作成する電子署名方法とその装置に関する。
【背景技術】
【０００２】
ディジタルデータの真正性や発行元の特定あるいは存在時点の証明に関する情報を公正に確認する手段として、電子署名が普及している。電子署名はいったん署名対象のディジタルデータに埋め込まれると、電子署名の検証ソフトウエアによる検証は可能であるが、電子署名内に含まれている情報の変更は行うことができないように構成されている。
【０００３】
各種ディジタルデータの真正性や存在時点を証明するために実施されるディジタルタイムスタンプも電子署名の一種である。ディジタルタイムスタンプ（以後タイムスタンプ）は、タイムスタンプの対象データ自体、あるいは対象データのダイジェスト値を公正かつ正確な基準時計を所有する第３者機関に送付し、第３者機関が所有する基準時計に由来した時刻情報と当該データのダイジェスト値を含む電子署名トークンの発行を依頼し、発行された電子署名トークンを対象ディジタルデータに埋め込むことで、事後、電子署名検証ソフトウエアにより、当該ディジタルデータの真正性と存在時点を検証することが可能とする電子署名である。出願人も特許文献１にてディジタルタイムスタンプに関する提案を行っている。
【特許文献１】特開２００３−２４４１３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、現在の電子署名の構造において、電子署名情報を暗号化して電子署名トークンを生成するための秘密鍵の有効期限がきた場合、再度タイムスタンプを実施しなければ電子署名が失効してしまうため、対象ディジタルデータの真正性は証明できないことになる。この場合、最初にタイムスタンプを実施した時刻情報を含むタイムスタンプを残した上で新たにタイムスタンプを実施しなければ、対象ディジタルデータの当初の存在時点は証明できないことになる。
【０００５】
したがって、オリジナルディジタルデータに対して、最初にタイムスランプを実施したデータに更にタイムスタンプを実施することになる。長期にわたって対象ディジタルデータの真正性および存在時点を証明するには、この作業が繰り返し実施され、その結果、複数のタイムスタンプが埋め込まれたデータとなり、当該データを記録保存するための容量の増大につながるという第１の問題が発生する。
【０００６】
また、このように複数のタイムスタンプが実施されたディジタルデータの真正性および存在時点を証明するには、最初のタイムスタンプから最後のタイムスタンプまで、すべてのタイムスタンプにおいて各タイムスタンプの有効期限内につぎのタイムスタンプが実施されたか否かというタイムスタンプの連続性を検証しなければならない。
【０００７】
しかし、各タイムスタンプの有効期限は固定的ではなく、今後の技術的進歩や鍵の信頼度などによってタイムスタンプの実施時期ごとに異なる可能性が非常に高い。この場合、前記タイムスタンプの連続性を検証することは膨大な作業となってしまう。ここに第２の問題点が発生する。
【０００８】
従って、本発明の技術的課題は、非常に簡単な方法と高い信頼性のもとに、経済的に電子署名を更新できる仕組みを構築することにより、長期的に電子署名を有効と成す電子署名方法と装置を提供することである。
【課題を解決するための手段】
【０００９】
上記の技術的課題を解決するために、本発明に係る電子署名方法は、請求項１において、電子署名を生成する時点で、電子署名内に電子署名の更新情報などの可変情報を記録する領域を少なくとも１箇所設けることを特徴としている。
【００１０】
つぎに、本発明に係る電子署名方法は、請求項２において、電子署名情報を暗号化して電子署名トークンを生成する際に使用する秘密鍵および秘密鍵と対をなす公開鍵からなり固有のＩＤを持つ鍵束を少なくとも２組用意しておき、要求された電子署名対象のディジタルデータに対する電子署名を生成し発行する際に、電子署名情報の暗号化に使用した秘密鍵を含む鍵束のＩＤも合わせて当該ディジタルデータに埋め込むことを特徴としている。
【００１１】
さらに、本発明に係る電子署名方法は、請求項３において、電子署名を生成するために使用した鍵束の有効期限が近づいたときに電子署名を更新するため、クライアントは電子署名と暗号化するために使用した秘密鍵を含む鍵束のＩＤを発行元に送付し、電子署名の発行元は受領した鍵束のＩＤから電子署名を復号するための公開鍵を抽出したうえで電子署名を復号した後、電子署名内の可変情報記録領域に記録されている情報を書き換えて更新し、現時点で有効な鍵束を作為的あるいは無作為に選択し、再度、選択した秘密鍵を用いて可変情報記録部を書き換えた電子署名情報を暗号化して電子署名トークンを生成し、使用した秘密鍵を含む鍵束のＩＤと共にクライアントに返送し、クライアントは受領した新たな電子署名トークンと鍵束ＩＤで当該ディジタルデータに埋め込まれている電子署名を更新することを特徴としている。
【００１２】
また、本発明に係る電子署名方法は、請求項４において、前記可変情報記録領域に記録する内容は、電子署名を更新するごとに、前回、または今回、あるいはその両方の更新時点での時刻、使用した鍵ＩＤ、当該ディジタルデータのダイジェスト値を含んでいることを特徴としている。
【００１３】
さらに、本発明に係る電子署名方法は、請求項５において、暗号化および復号に使用した１対の秘密鍵と公開鍵からなる鍵束とその鍵束のＩＤは、鍵束が失効しても永続的に保管管理しておくことを特徴としている。
【００１４】
次に、本発明に係る電子署名装置は、請求項６において、電子署名を発行した情報処理装置、または、情報処理装置に接続される外部記録装置で、クライアントの要請により発行した電子署名を暗号化するために使用した秘密鍵を含む鍵束のＩＤと、メールアドレスなどの連絡先を含むクライアントの情報とを合わせて記録保存しておき、当該鍵束の有効期限が近づくなど当該鍵束が失効する前にその旨をクライアントに自動的、または、電子署名を発行した機関の操作者の操作によって連絡し、電子署名の更新を促すように構成したことを特徴としている。
【００１５】
また、本発明に係る電子署名装置は、請求項７において、クライアントに電子署名の更新を促す手段の一態様として、電子署名を発行する情報処理装置は、電子署名を発行する時点で使用した鍵束の有効期限を電子署名に添付して電子署名を発行し、当該電子署名および添付された鍵束の有効期限が埋め込まれたディジタルデータを開くためのアプリケーションソフトウエアや、或いは、電子署名を検証するための検証ソフトウエアに、添付された鍵束の有効期限を読み出す手段を待たせることで、電子署名を埋め込まれたディジタルデータを開く毎、または、検証する毎に電子の有効期限を表示するなどでクライアントに知らしめ、電子署名の更新時期を認識せしめるように構成したことを特徴としている。
【発明の効果】
【００１６】
以上述べた次第で、本発明に係る電子署名方法とその装置によれば、ディジタルデータにたいして最初に実施した電子署名の情報を固定したまま定期、不定期を問わず電子署名の更新が可能となり、初回の電子署名トークンを生成する時点で暗号化のために使用した電子署名実施当初の鍵が失効したとしても、更新により永続的に初回に実施した電子署名内容の認証が可能となる。
【００１７】
また、本発明は、タイムスタンプを実施したディジタルデータの真正性と存在時点の証明を永続的に実施できる仕組みを作るのみでなく、タイムスタンプ以外の電子署名においても、可変する情報の記録を可能とし、たとえば検証した回数の情報等を電子署名内への記録なども可能となり、電子署名が実施されたディジタルデータにたいし、より利便性を与えることも可能にしている。
【発明を実施するための最良の形態】
【００１８】
以下に本発明の実施の形態による電子署名方法および電子署名装置について、第１実施例としてセンター・サーバ由来の時刻情報を含む電子署名すなわちディジタルタイムスタンプを例として、図面を参照しながら説明する。
【実施例１】
【００１９】
図１は本発明を実施するにあたり必要最小限のシステム構成のブロック図である。図１に示すように、第３者機関１０は、タイムスタンプの時刻情報を供給する原子時計などの基準時計１１と、電子署名発行サーバ１２と、電子署名を暗号化するための現時点で有効な少なくとも２組の秘密鍵と公開鍵からなる鍵束及びそのＩＤを保管する有効鍵束保管部１３と、現時点では有効期限を過ぎてしまった過去に使用した秘密鍵と公開鍵からなる鍵束及びそのＩＤを保管する失効鍵束保管部１４から構成されている。場合によってはクライアント情報管理部１５を設け、クライアントの要請により発行した電子署名を生成する時点で使用した鍵束とそのＩＤと、クライアントの連絡先を含むクライアント情報を合わせて保管し、鍵束の有効期限が近づいたとき、当該鍵束を使用して発行した電子署名を要求したクライアントの一覧を当該鍵束のＩＤで検索し、自動的、または電子署名発行機関の操作者の操作によって、電子署名の更新を促す情報をクライアントに対して発信することも考えられる。
【００２０】
２０は、クライアントの情報処理端末であり、電子署名生成ソフトウエアがインストールされ、且つ、ネットワーク３０に接続可能であり、ネットワーク３０を経由して第３者機関１０の電子署名発行サーバ１２と、タイムスタンプやダイジェスト値、或いは、抽出したタイムスタンプトークンなどのデータの授受を行う。
【００２１】
図２は本発明の電子署名実施方法の具体例である。まず、クライアントは、電子署名の実施を希望するディジタルデータ４０を、電子署名生成ソフトウエアがインストールされ、且つ、ネットワーク３０に接続可能な情報処理端末２０上で開く。次いで、電子署名生成ソフトウエアを起動して電子署名生成処理を実行すると、電子署名生成ソフトウエア及び情報処理端末２０は、電子署名対象ディジタルデータ４０に電子署名埋め込み領域４１を生成する。場合によっては、出願人が特願２００３−３９１７１８で提案しているように、電子署名に含まれる情報を当該ディジタルデータ４０上に表示するための表示エリアを生成することも考えられる。
【００２２】
次に、電子署名ソフトウエアおよび情報処理端末２０は、当該ディジタルデータ４０から電子署名の埋め込み領域４１、場合によっては前記表示エリアも含めた領域を除いて、ダイジェスト値４２を計算する。ダイジェスト値としては、非可逆性であり、非衝突性の高いハッシュ関数により計算されたハッシュ値が望ましい。
【００２３】
さらに、電子署名生成ソフトウエアおよび情報処理端末２０は、計算して得られた当該ディジタルデータ４０のダイジェスト値４２を、ネットワーク３０経由で第３者機関１０の電子署名発行サーバ１２に送信する。第３者機関１０の電子署名発行サーバ１２は、受信したダイジェスト値４２と、基準時計１１に由来する受信を開始した時刻情報５１と、ダミーデータを書き込むことにより第１可変情報記録部５２および第２可変情報記録部５３からなる時刻情報を含む電子情報５４を作成し、有効鍵束保管部１３から現在使用することができる秘密鍵６１と公開鍵６２からなる鍵束６０を無作為、あるいは規定ルールにより作為的に選択し、秘密鍵６１を用いて電子署名情報５４を暗号化して時刻情報を含む電子署名すなわちタイムスタンプトークン５５を生成する。使用した秘密鍵６１を含む鍵束６０には鍵束ＩＤが割り付けられていて、場合によっては有効期限６４を定義しておくことも考えられる。
【００２４】
次に、第３者機関１０の電子署名発行サーバ１２は、タイムスタンプトークン５５と暗号化するために使用した秘密鍵６１を含む鍵束６０の鍵束ＩＤ６３を、ネットワーク３０経由でクライアントの情報処理端末２０に返信する。このとき、場合によっては鍵束の有効期限６４や、暗号化するために使用した秘密鍵６１と公開鍵６２も含めて返信することも考えられる。
【００２５】
鍵束の有効期限６４を電子署名の有効期限とすることで、電子署名が実施されたディジタルデータ４３に鍵束の有効期限６４が記録されている場合は、当該ディジタルデータを開くためのアプリケーションソフトウエアや、電子署名検証ソフトウエアに有効期限６４を読み出す手段を設けておき、当該ディジタルデータ４３を開く毎に、当該ディジタルデータ４３上に電子署名の有効期限を表示したり、電子署名を検証する毎に以下に述べる電子署名の更新を要求することが可能となる。また、公開鍵６２が当該ディジタルデータ４３に記録されている場合は、電子署名検証ソフトウエアがインストールされている情報処理端末を利用して、オフラインでの電子署名の検証が可能となる。
【００２６】
図３は、電子署名を実施したディジタルデータ４３の電子署名の有効期限が近づいた場合における、電子署名の有効期限の延長方法を示している。まず、当該ディジタルデータ４３が保存され、電子署名生成ソフトウエアがインストールされているクライアントの情報処理端末２０は、当該ディジタルデータ４３から電子署名の埋め込み領域４１に関する新たに計算したダイジェスト値４４と、当該ディジタルデータ４３の電子署名の埋め込み領域４１に記録されているタイムスタンプトークン５５および鍵束ＩＤ６３を抽出し、ネットワーク３０を経由して第３者機関１０の電子署名発行サーバ１２に送信する。
【００２７】
新たなダイジェスト値４４とタイムスタンプトークン５５および鍵束６３を受信した第３者機関１０の電子署名発行サーバ１２は、受信した鍵束ＩＤ６３が実在し有効であるか否かを判断するために、前記有効鍵束保管部１３に保管されている鍵束のＩＤ群を検索する。一致するＩＤがあれば、受信した鍵束ＩＤ６３は現時点で有効と判断される。一致するＩＤがなければ、前記失効鍵束保管部１４に保管されている鍵束のＩＤ群を検索する。一致するＩＤがあれば電子署名は失効していることになり、その旨をネットワーク３０経由でクライアントの情報処理端末２０に通知する。また、失効鍵束保管部１４にも一致するＩＤが存在しなければ電子署名自体が偽物ということになり、その旨をネットワーク３０経由でクライアントの情報処理端末２０に通知する。
【００２８】
鍵束ＩＤ６３が有効であるとき、電子署名発行サーバ１２は前記有効鍵束保管部１３から一致するＩＤをもつ鍵６０を選択し公開鍵６２を取り出して、受信したタイムスタンプトークン５５を復号する。タイムスタンプトークン５５を復号することにより、ダイジェスト値４２、時刻情報５１、第１可変情報記録部５２、第２可変情報記録部５３が得られる。また、復号することが出来なければ、電子署名は偽物ということになり、その旨をネットワーク３０経由でクライアントの情報処理端末２０に通知する。
【００２９】
復号できた場合は、タイムスタンプトークン５５に含まれていたダイジェスト値４２と新たに計算されたダイジェスト値４４を比較する。両者が一致しない場合は、前回の電子署名以降なんらかの手段で当該ディジタルデータ４３に対して変更がなされていることになり、電子署名は失効する。従って、この旨をネットワーク３０経由でクライアントの情報処理端末２０に通知する。ダイジェスト値４２と４４が一致した場合は、ディジタルデータ４３および電子署名の真正性が確認できたことになり、次の処理に進む。
【００３０】
電子署名発行サーバ１２は、第１可変情報記憶部５２に前回の電子署名を実施または更新した時刻情報と、使用した鍵ＩＤ、および、ダイジェスト値などからなる旧電子署名実施情報を記録する。初めての書き換えの場合は、最初に実施した電子署名の実施情報となる。次に、以下に記す構成の電子署名情報５６を暗号化して、新たなタイムスタンプトークン５７を生成するために、有効鍵束保管部１３に保管されている有効鍵束のなかから作為、または無作為に新たな鍵束６５を選択する。次いで、この新たに使用する秘密鍵６６を含む鍵束６５のＩＤ６８とダイジェスト値４２（または４４）、および、電子署名更新時刻としての基準時計１１に由来する現在時刻からなる新電子署名実施情報を、第２可変情報記録部５３に記録する。尚、最初の電子署名で記録した時刻情報５１は永続的に保持し変更しない。然る後、以上の情報で構成された新たな電子署名情報５６を暗号化し、新たなタイムスタンプトークン５７を生成する。
【００３１】
次に、電子署名発行サーバ１２は新たなタイムスタンプトークン５７と新たな鍵束ＩＤ６８を、ネットワーク３０を介してクライアントの情報処理端末２０に返信する。情報処理端末２０とインストールされている電子署名生成ソフトウエアは、返信されたタイムスタンプトークン５７と鍵束のＩＤ６８でディジタルデータ４３の電子署名埋め込み領域４１を上書きするなどして、電子署名情報を更新する。以後、電子署名の更新ごとに、第１可変情報記録部５２には前回の電子署名情報からなる旧電子署名実施情報を、また、第２可変情報記録部５３には今回の電子署名情報からなる新電子署名情報を書き込んで、新たな電子署名情報５６およびタイムスタンプトークン５７を生成する。第１可変情報記録部５２と第２可変情報記録部５３に記録されている旧、新二つの電子署名実施情報により、万が一、現在有効である電子署名を暗号化している秘密鍵６６が解読されたとしても、少なくとも旧電子署名実施情報を記録されている時刻までは、電子署名の継続性があることを実証できる。
【００３２】
図４は本発明の電子署名を、最初に発行するためのクライアントの情報処理端末２０と、インストールされている電子署名生成ソフトウエア及び電子署名発行サーバ１２の処理内容を示すフローチャートである。図４に示すように、クライアントは、ステップＳ１で電子署名対象のディジタルデータを情報処理端末２０上で開き、ステップＳ２で電子署名生成ソフトウエアを起動する。ステップＳ３で電子署名埋め込み領域４１を生成し所定のダイジェスト値４２を計算し、ステップＳ４でダイジェスト値４２を第３者機関１０の電子署名発行サーバ１２に送信する。電子署名発行サーバ１２は、ステップＳ５で受信開始時刻を記録し、ステップＳ６に進み有効鍵束６０を選択する。ステップＳ７でダイジェスト値４２、受信時刻５１、可変情報記録部５２，５３を、選択した秘密鍵６１で暗号化して、タイムスタンプトークン５５を生成する。さらに、電子署名発行サーバ１２は、ステップS８でタイムスタンプトークン５５に鍵束のＩＤ６３を添付してクライアントの情報処理端末２０に送信する。次いで、クライアントの情報処理端末２０は、ステップＳ９でタイムスタンプトークン５５と鍵束ＩＤ６３を電子署名埋め込み領域４１に書き込んで記録し、ステップＳ１０でディジタルデータ４３を保存する。
【００３３】
図５は本発明の電子署名を更新するためのクライアントの情報処理端末２０とインストールされている電子署名生成ソフトウエア及び第３者機関１０の電子署名発行サーバ１２の処理内容を示すフローチャートである。図５において、ステップＳ１１からステップＳ１５まではクライアントの処理であり、ステップＳ１６からステップＳ２６は電子署名発行サーバ１２の処理、ステップＳ２７及びステップＳ２８はクライアントの処理であり、ステップＳ２９からステップＳ３８は電子署名発行サーバ１２の処理である。
【００３４】
即ち、クライアントは、ステップＳ１１で電子署名が実施されているディジタルデータ４３を情報処理端末２０上で開き、ステップＳ１２で電子署名生成ソフトウエアを起動し、ステップＳ１３で所定のダイジェスト値４４を計算する。次に、ステップＳ１４で電子署名埋め込み領域４１からタイムスタンプトークン５５と鍵束ＩＤ６３を抽出し、ステップＳ１５でダイジェスト値４４とタイムスタンプトークン５５、および鍵束ＩＤ６３を第３者機関１０の電子署名発行サーバ１２に送信する。
【００３５】
電子署名発行サーバ１２は、ステップＳ１６で受信時刻を記録し、ステップＳ１７で受信した鍵束ＩＤ６３が有効鍵保管部１３に存在するかを確認する。次に、ステップＳ１８で鍵束ＩＤ６３が存在するか否かを判断し、存在すればステップＳ１９に進んで該当するＩＤの鍵束６０の公開鍵６２で復号する。ステップＳ２０で復号できるか否かを判断し、復号できれば、ステップＳ２１に進み復号して得られたダイジェスト値４２と新たに送信されてきたダイジェスト値４４とを比較する。ステップＳ２２で一致するか否かを判断し、一致すればステップＳ２３で有効鍵束保管部１３から有効鍵束６５を選択し、ステップＳ２４で第２の可変情報記録部５３に新たな電子署名実施情報を記録する。ステップＳ２５でダイジェスト値、受信時刻、可変情報記録部を選択した秘密鍵６６で暗号化し、タイムスタンプトークン５７を生成する。ステップＳ２６でタイムスタンプトークン５７に鍵束のＩＤ６８を添付してクライアントに送信する。ステップＳ２７で、クライアントの情報処理端末２０はタイムスタンプトークン５７と鍵束ＩＤ６８を電子署名埋め込み領域４１に書き込んで記録し、ステップＳ２８で更新したディジタルデータ４５を保管して動作を終了する。
【００３６】
ステップＳ１８で受信した鍵束ＩＤ６３が有効鍵保管部１３に存在しなければ、ステップＳ２９に進み、電子署名発行サーバ１２は、受信した鍵束ＩＤ６３が失効鍵保管部１４に存在するかを確認する。ステップＳ３０で鍵束ＩＤ６３が存在するか否かを判断し、存在すればステップＳ３１で該当するＩＤ６３の鍵束は失効していることになり、ステップＳ３２でその旨をクライアントに通知する。また、ステップＳ３０で鍵束ＩＤ６３が存在しなければ、ステップＳ３３に進み電子署名は偽物であることになり、ステップＳ３４でその旨をクライアントに通知する。
【００３７】
また、ステップＳ２０で復号できなければ、ステップＳ３５に進み電子署名は偽物であることになり、ステップＳ３６でクライアントにその旨を通知する。また、ステップＳ２２で、復号して得られたダイジェスト値４２と新たに送信されてきたダイジェスト値４４が一致していなければ、当該ディジタルデータ４３は改変されていることになり、その旨をクライアントに通知する。
【実施例２】
【００３８】
次に、本発明の第２実施例として、電子入札などにおいて有効となるディジタルデータの相互承認について説明する。図６は本発明の第２実施例のブロック図であり、電子署名を発行、更新する第３者機関１０は電子署名発行サーバ１２と、有効鍵束保管部１３及び失効鍵束保管部１４及びクライアント情報管理部１５で構成されている。場合によっては、基準時計１１を含むことも考えられる。
【００３９】
クライアントＡとクライアントＢは第３者機関１０に登録され、クライアント情報管理部１５にクライアント情報が記録されている。クライアントＡとＢとは別の事業者であってもいいし、同一事業者に属する別の人格であってもよく、当然、それぞれ個人であってもよい。クライアントＡおよびＢはそれぞれ情報処理端末２１と２２を所有し、それぞれの情報処理端末２１および２２にはともに電子署名生成ソフトウエアがインストールされており、且つ、ネットワーク３０を介して第３者機関１０の電子署名発行サーバ１２とデータの授受が可能なように構成されている。また、クライアントＡおよびＢの情報処理端末２１と２２の間においてもネットワーク３０を介してデータの授受が可能なように構成されている。場合によっては、物理的記録媒体３２を利用してデータの授受を行うことも可能である。
【００４０】
まず、図７に示すように、上述したクライアントＡが所有する情報処理端末２１上で生成、または加工したディジタルデータ７０に、相互承認機能を有する電子署名を実施する場合、クライアントＡは電子署名対象のディジタルデータ７０の加工が完了した時点で電子署名生成ソフトウエアを起動する。電子署名生成ソフトウエアは当該ディジタルデータ７０に電子署名埋め込み領域７１を生成し、当該ディジタルデータ７０から電子署名埋め込み領域７１を除いた領域に関するダイジェスト値７２を計算する。
【００４１】
次に、クライアントＡの情報処理端末２１とインストールされている電子署名生成ソフトウエアは、ネットワーク３０を介して電子署名を発行する第３者機関１０の電子署名発行サーバ１２に接続し、電子署名発行サーバ１２に対して、自動的に情報処理端末２１のＩＰアドレスと電子署名生成ソフトウエアの管理番号などを送信する。あるいは、クライアントＡが手動でユーザＩＤとパスワードを入力する方法も考えられる。
【００４２】
第３者機関１０の電子署名発行サーバ１２は、受信したＩＰアドレスと電子署名生成ソフトウエアの管理番号、またはユーザーＩＤとパスワードをもとにクライアント情報管理部１５内を検索し、クライアントＡが電子署名を要求することが可能な契約者か否かを調べる。クライアントＡが電子署名を要求可能な契約者であった場合は、電子署名発行サーバ１２はクライアントＡの情報処理端末２１に電子署名対象ディジタルデータ７０のダイジェスト値７２を送信するように要求する。クライアントＡの情報処理端末２１は、要求に応じてダイジェスト値７２を電子署名発行サーバ１２に送信する。
【００４３】
第３者機関１０の電子署名発行サーバ１２は、受信したダイジェスト値７２と、電子署名を発行する第３者機関のＩＤなどの電子署名発行元情報８１と、事後、電子署名を要求したクライアントを特定可能なクライアントＡに関する電子署名要求者情報８２と、少なくとも一カ所のダミーデータを書き込むことによって定義した可変情報記録部８３からなる電子署名情報８４を生成し、有効鍵束管理部１８から現在使用することができる秘密鍵６１および公開鍵６２からなる鍵束６０を選択し、秘密鍵６１を用いて上記の電子署名情報８４を暗号化して電子署名トークン８５を生成する。生成した電子署名トークン８５は使用した鍵束のＩＤ６３を添付して、ネットワーク３０経由でクライアントＡの情報処理端末２１に返信する。クライアントＡの情報処理端末２１は、返信されてきた電子署名トークン８５と鍵束のＩＤ６３を、ディジタルデータ７０に生成されている電子署名埋め込み領域７１に記録する。以上の処理により、ディジタルデータ７０に対する電子署名の依頼者であるクライアントＡと、電子署名の発行元である第３者機関の情報が記録されている発信側の電子署名が実施されたディジタルデータ７３が生成される。
【００４４】
次に、図８に示す様に、クライアントＡは、発信側の電子署名が実施されていたディジタルデータ７３を、ネットワーク３０を介した電子メールや、物理的媒体３２に記録した後に送付するなどして、クライアントＢの情報処理端末２２へ伝達する。クライアントＢは、自身が所有する情報処理端末２２で、受領した発信側の電子署名が実施されたディジタルデータ７３を開いた後、情報処理端末２２にインストールされている電子署名生成ソフトウエアを起動することで、受信側の承認電子署名を実施する準備が整う。
【００４５】
電子署名生成ソフトウエアには、ディジタルデータ７３に電子署名が実施されていることを検出する手段を設けておき、当該ディジタルデータ７３に発信側の電子署名が実施されていることを検出することで、情報処理端末２２上で、自動的にディジタルデータ７３に対して受信側の承認電子署名を実施するか否かをクライアントＢに問い合わせる仕組を設けることもできる。クライアントＢが受信側の承認電子署名を実行するように入力すると、情報処理端末２２およびインストールされている電子署名生成ソフトウエアは、ディジタルデータ７３から電子署名トークン８５と鍵束のＩＤ６３を抽出し、また新たにディジタルデータ７３の所定領域のダイジェスト値７４を計算する。
【００４６】
次に、前記クライアントＡが初回の電子署名を要求したときと同様に、クライアントＢの情報処理端末２２のＩＰアドレスと電子署名ソフトウエアの管理番号の送信、または、クライアントＢによるユーザーＩＤとパスワードの入力をもとに、電子署名発行サーバ１２は、クライアントＢが電子署名を承認することが可能な契約者か否かを調べる。クライアントＢが電子署名を承認可能な契約者であった場合は、電子署名発行サーバ１２は、クライアントＢの情報処理端末２２に抽出した電子署名トークン８５と鍵束のＩＤ６３および新たに計算したダイジェスト値７４を送信する。要求を受けたクライアントＢの情報処理端末２２は、ネットワーク３０を介して、抽出した電子署名トークン８５と鍵束のＩＤ６３および新たに計算したダイジェスト値７４を第３者機関１０の電子署名発行サーバ１２に送付する。
【００４７】
電子署名発行サーバ１２は、クライアントＢから送られてきた鍵束のＩＤ６３をもとに有効鍵保管部１３内を検索し、該当する鍵束６０に含まれている公開鍵６２を使って電子署名トークン８５を復号する。復号により得られた電子署名に含まれていたダイジェスト値７２と、送られてきた新たに計算されたダイジェスト値７４を比較し、発信側の電子署名が実施されてからディジタルデータ７３に変更が加えられていないかを確認する。そして、書き込みが可能となった可変情報記録部８３にクライアント情報管理部１５から読み出したクライアントＢを特定できる情報を電子署名承認者情報８６として記録し、新たに電子署名情報８７を生成する。
【００４８】
新たに生成された電子署名情報８７を有効鍵束保管部１３から新たに選択した鍵束６５に含まれる秘密鍵６６で暗号化し、承認済み電子署名トークン８８を生成し、使用した鍵束のＩＤ６８と共にクライアントＢの情報処理端末２２に返送する。
【００４９】
クライアントＢの情報処理端末２２とインストールされている電子署名生成ソフトウエアは、受信した承認済み電子署名トークン８８で、ディジタルデータ７３のデータ署名埋め込み領域７１を上書きなどにより更新する。以上の処理で、承認済み電子署名が実施されたディジタルデータ７５が生成される。クライアントＢはこのディジタルデータ７５を記録保存し、ディジタルデータ７５の複製を生成し、クライアントＡに送付することで、クライアントＡとクライアントＢが相互に承認した記録をもつ電子署名が実施されたディジタルデータが得られる。
【００５０】
本実施例においても、第１の実施例と同様に鍵束ＩＤが有効であるか失効しているか、電子署名が復号できるか否かなどの判定により電子署名の真正性は各階段でその都度確認し、真正性が確認出来ない場合は電子署名を否認しその旨をクライアントに通知する。
【００５１】
図９は第２実施例における電子署名の発行方法を示すフローチャートである。図９に示すように、クライアントＡは、ステップＳ３９で電子署名対象のディジタルデータを情報処理端末２１上で開き、ステップＳ４０で電子署名生成ソフトウエアを起動する。ステップＳ４１で電子署名埋め込み領域７１を生成し所定のダイジェスト値７２を計算する。ステップＳ４２でユーザー情報を前述した電子署名発行サーバ１２に送信する。電子署名発行サーバ１２においては、ステップＳ４３で、クライアント情報管理部１５はユーザー情報を検索して、ステップＳ４４に進みクライアントは契約者であるか否かを判断する。クライアントが契約者であればステップＳ４５に進みダイジェスト値７２の送信をクライアントＡに要求する。クライアントＡはステップＳ４６でダイジェスト値７２を電子署名発行サーバ１２に送信する。電子署名発行サーバ１２は、ステップＳ４７で有効鍵束保管部１３から有効鍵束６０を選択し、ステップＳ４８でダイジェスト値７２、署名発行元情報８１、署名要求者情報８２、可変情報記録部８３からなる電子署名情報８４を生成する。さらに、電子署名発行サーバ１２は、ステップＳ４９で秘密鍵６１で電子署名情報８４を暗号化して電子署名トークン８５を生成し、ステップＳ５０で電子署名トークン８５と使用した鍵束ＩＤ６３をクライアントＡに返信する。クライアントＡは、ステップＳ５１で電子署名トークン８５と鍵束ＩＤ６３を電子署名埋め込み領域７１に書き込んで記録し、ステップＳ５２でディジタルデータ７３を保存し、ステップＳ５３でディジタルデータ７３をクライアントＢに送付する。また、前記ステップＳ４４でクライアントが契約者でない場合は、ステップＳ５４に進み、電子署名発行サーバ１２は電子署名要求を受けない旨をクライアントに通知する。
【００５２】
図１０は本発明の電子署名を更新するためのクライアントＢの情報処理端末２２と、インストールされている電子署名生成ソフトウエア及び電子署名発行サーバ１２の処理内容を示すフローチャートである。クライアントＢは、ステップＳ５５で電子署名が実施されているディジタルデータ７３を情報処理端末２２上で開き、ステップＳ５６で電子署名生成ソフトウエアを起動し、ステップＳ５７で所定のダイジェスト値７４を計算する。次に、ステップＳ５８で電子署名埋め込み領域７１からタイムスタンプトークン８５と鍵束ＩＤ６３を抽出し、ステップＳ５９でユーザー情報を第３者機関１０の電子署名発行サーバ１２に送信する。
【００５３】
電子署名発行サーバ１２は、ステップＳ６０でクライアント情報管理部１５でユーザー情報を検索し、ステップＳ６１でクライアントが契約者であるか否かを判断する。クライアントが契約者であれば、ステップＳ６２に進み電子署名情報の送信をクライアントＢに要求する。クライアントＢはステップＳ６３で抽出した電子署名トークン８５、鍵束ＩＤ６３、新たに計算したダイジェスト値７４を電子署名発行サーバ１２に送信する。再び電子署名発行サーバ１２は、ステップＳ６４で受信した鍵束ＩＤ６３が有効鍵束保管部１３に存在するかを確認し、ステップＳ６５に進み鍵束ＩＤ６３が存在するか否かを判断する。存在すれば、ステップＳ６６に進み該当するＩＤの鍵束６０の公開鍵６２で復号する。ステップＳ６７で復号できるか否かを判断し、復号できればステップＳ６８に進み、復号して得られたダイジェスト値７２と新たに送信されてきたダイジェスト値７４を比較する。ステップＳ６９で一致するか否かを判断し、一致すればステップＳ７０で有効鍵束保管部１３から有効鍵束６５を選択し、ステップＳ７１で可変情報記録部８３にクライアントＢのユーザー情報を記録する。
【００５４】
次いで、ステップＳ７２でダイジェスト値７２、受信時刻、クライアントＡおよびＢのユーザー情報を秘密鍵６６で暗号化し、電子署名トークン８８を生成する。ステップＳ７３で電子署名トークン８８に鍵束のＩＤ６８を添付してクライアントＢに返信する。ステップＳ７４で、クライアントＢは電子署名トークン８８と鍵束ＩＤ６８を電子署名埋め込み領域７１に書き込んで記録し、ステップＳ７５でディジタルデータ７５を保管し、ステップＳ７６でディジタルデータ７５のコピーをクライアントＡに送信する。
【００５５】
データ署名発行サーバ１２において、ステップＳ６１でクライアントが契約者でなければ、ステップＳ７７に進み、電子署名要求を受けないクライアントにその旨を通知する。ステップＳ６５において受信した鍵束ＩＤ６３が有効鍵保管部１３に存在しなければ、ステップＳ７８に進み、受信した鍵束ＩＤ６３が失効鍵束保管部１４に存在するかを確認し、ステップＳ７９に進み存在するか否かを判断する。存在すればステップＳ８０で該当するＩＤの鍵束６３は失効していることになり、ステップＳ８１でその旨をクライアントに通知する。また、ステップＳ７９で存在しなければ、ステップＳ８２に進み電子署名は偽物であることになり、ステップＳ８３でクライアントにその旨をクライアント通知する。また、ステップＳ６７で復号できなければ、ステップＳ８４に進み電子署名は偽物であることになり、ステップＳ８５でその旨をクライアントＢに通知する。また、ステップＳ６９で一致しなければ、ステップＳ８６で当該ディジタルデータ７３は改変されていることになり、ステップＳ８７でその旨をクライアントＢに通知する。
【図面の簡単な説明】
【００５６】
【図１】本発明による電子署名発行を行うための最小システムのブロック図である。
【図２】本発明の第１実施例による電子署名対象ディジタルデータに更新可能な電子署名を実施する際に必要な電子署名の構成と、クライアント及び電子署名発行サーバの処理内容を示すブロック図である。
【図３】本発明の第１実施例における電子署名を更新するために実施されるクライアント及び電子署名発行サーバの処理内容を示すブロック図である。
【図４】本発明の第１実施例による電子署名対象ディジタルデータに更新可能な電子署名を実施する際のクライアント及び電子署名発行サーバの処理フローチャートである。
【図５】本発明の第１実施例における電子署名を更新するために実施されるクライアントと電子署名発行サーバの処理フローチャートである。
【図６】本発明の第２実施例におけるシステムのブロック図である。
【図７】本発明の第２実施例における電子署名の発行方法を示す図である。
【図８】本発明の第２実施例における電子署名の承認方法を示す図である。
【図９】本発明の第２実施例における電子署名の承認方法を示すフローチャートである。
【図１０】本発明の第２実施例における電子署名承認方法を示すフローチャートである。
【符号の説明】
【００５７】
１０…第３者機関
１１…基準時計
１２…電子署名発行サーバ
１３…有効鍵束保管部
１４…失効鍵束保管部
１５…クライアント情報管理部
２０…クライアント情報端末
２１…クライアント情報端末
２２…クライアント情報端末
３０…ネットワーク
３２…物理的記録媒体
４０…電子署名対象のディジタルデータ
４１…電子署名の埋め込み領域
４２…ダイジェスト値
４３…電子署名を埋め込んだディジタルデータ
４４…電子署名を更新するために新たに算出したディジタルデータのダイジェスト値
４５…更新された電子署名を埋め込んだディジタルデータ
５１…初回電子署名実施時点の時刻情報
５２…第１可変情報記録部
５３…第２可変情報記録部
５４…暗号化前の初回に発行する電子署名情報
５５…初回に発行するタイムスタンプトークン
５６…更新後の電子署名情報
５７…更新後のタイムスタンプトークン
６０…有効な鍵束
６１…有効な秘密鍵
６２…有効な秘密鍵と対をなる公開鍵
６３…有効な鍵束のＩＤ
６６…更新時点で使用する有効な秘密鍵
６８…更新時点で使用する有効な鍵束のＩＤ
７０…電子署名対象のディジタルデータ
７１…電子署名の埋め込み領域
７２…ダイジェスト値
７３…電子署名が埋め込まれたディジタルデータ
７４…新たに計算したダイジェスト値
７５…承認済み電子署名が埋め込まれたディジタルデータ
８１…電子署名発行元情報
８２…電子署名要求情報
８３…可変情報記録部
８４…電子署名情報
８５…電子署名トークン
８６…電子署名承認者情報
【図１】
2005204126.tif 000003
【図２】
2005204126.tif 000004
【図３】
2005204126.tif 000005
【図４】
2005204126.tif 000006
【図５】
2005204126.tif 000007
【図６】
2005204126.tif 000008
【図７】
2005204126.tif 000009
【図８】
2005204126.tif 000010
【図９】
2005204126.tif 000011
【図１０】
2005204126.tif 000012