(57)【要約】【課題】  ユーザーが複数の秘密鍵を持つ文書管理システムで、署名に使用する秘密鍵の選択はユーザー任せにしないようにすることを目的とする。【解決手段】  ユーザーが複数の秘密鍵を持つ場合に、文書管理システムに登録されているそのユーザー情報をもとに署名に使う秘密鍵を自動的に選択する。また、秘密鍵の発行機関をもとに署名に使う秘密鍵を自動的に選択する。また、署名が無効になった場合に署名者に電子メールで自動的に通知する。【選択図】  図１
2005175688.tif 000002
【特許請求の範囲】
【請求項１】
データベースを用いて文書データとユーザー情報を管理し、ユーザー情報にそのユーザーの電子メールアドレスを持ち、データベース上の文書データに対してユーザーが電子署名と、電子署名済みの文書に対して電子署名の検証を行うことができる文書管理システムにおいて、複数の秘密鍵を持つユーザーがデータベース上の文書に対して電子署名を行う場合に、システムが保持するユーザー情報からそのユーザーの電子メールアドレスを取得し、それを用いてそれぞれの秘密鍵に対応する公開鍵証明書が持つ秘密鍵所持者のメールアドレスを検索することで、システムに登録されているユーザーの電子メールアドレスに対して発行された秘密鍵を自動的に選択できることを特徴とするシステム。
【請求項２】
前記請求項の文書管理システムにおいて、システムに登録されているユーザーの電子メールアドレスに対して発行された秘密鍵が複数検知された場合に、あらかじめシステム上で電子署名に使用する秘密鍵の発行機関を定義しておくことで、定義された発行機関からそのユーザーの電子メールアドレスに対して発行された公開鍵証明書に対応する秘密鍵を自動的に選択することを特徴とするシステム。
【請求項３】
前記請求項の文書管理システムにおいて、データベース上の電子署名済み文書に対して署名検証が行われた場合に、電子署名時に署名データに署名者の電子メールアドレスを加えることで、署名が無効であった場合にその署名データから署名者のメールアドレスを取得し、署名が無効になったことを自動的に通知することを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は文書管理システムに関し、公開鍵暗号方式を用いてデータベース上の文書データに電子署名を行い、データベース上の署名済み文書の署名検証が行える文書管理システムに関するものである。
【背景技術】
【０００２】
従来の文書管理システムにおいて、データベース上の文書に電子署名を行うことができる文書管理システムが提案されていた（例えば、特許文献１参照。）。
【特許文献１】特開2000-209562号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記従来の文書管理システムでは、署名に使用する秘密鍵の選択はユーザー任せになっていた。
【０００４】
本発明は、上述した問題を解決するためになされたものであり、ユーザーが複数の秘密鍵を持つ場合に、文書管理システムに登録されているそのユーザー情報をもとに署名に使う秘密鍵を自動的に選択することを目的とする。
【０００５】
また、秘密鍵の発行機関をもとに署名に使う秘密鍵を自動的に選択することを目的とする。
【０００６】
また、署名が無効になった場合に署名者に電子メールで自動的に通知することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するための手段として、データベースを用いて文書データとユーザー情報を管理し、ユーザー情報にそのユーザーの電子メールアドレスを持ち、データベース上の文書データに対してユーザーが電子署名を行うことができる文書管理システムにおいて、電子メールアドレスによって秘密鍵に対応する公開鍵証明書を検索する手段を有し、発行機関によって秘密鍵に対応する公開鍵証明書を検索する手段を有し、データベース上の署名済み文書データが改竄されたことを検知できる手段を有することを特徴とする。
【発明の効果】
【０００８】
以上説明したように、本発明によれば、データベースを用いて文書データとユーザー情報を管理し、ユーザー情報にそのユーザーの電子メールアドレスを持ち、データベース上の文書データに対してユーザーが電子署名を行うことができる文書管理システムにおいて、ユーザーが複数の秘密鍵を持つ場合に、文書管理システムに登録されているそのユーザー情報をもとに署名に使う秘密鍵を自動的に選択することが可能となる。
【０００９】
また、秘密鍵の発行機関をもとに署名に使う秘密鍵を自動的に選択することが可能となる。
【００１０】
また、署名が無効になった場合に署名者に電子メールで自動的に通知することが可能となる。
【発明を実施するための最良の形態】
【００１１】
（実施形態１）
図１は本発明における文書管理システムと鍵管理システムのシステムブロックを示した図である。本実施例における文書管理システムはパーソナルコンピュータのOS上で動作するアプリケーション(1000)であり、OSや別アプリケーションが提供する鍵管理システム(1100)を利用して電子署名や署名検証を行う。
【００１２】
<文書管理システム処理>
まず、文書管理を行う文書管理システム部について説明する。1001はユーザーインターフェース部である。システムはユーザーインターフェース部を介してユーザーの操作を受け取り、1002の文書管理制御部にそのユーザー操作を伝える。
ユーザーインターフェース部から伝えられた操作情報は1002の文書管理制御部で解析され、文書の参照、登録や変更といった操作を行う。署名や検証要求があった場合は電子署名制御部1006を通して鍵管理システム1100にアクセスし、署名時は適切な秘密鍵を選択して署名データの作成、検証時は検証を行う。署名時の詳細については図２を用いて後述する。
【００１３】
また、必要に応じて、文書情報1004やユーザー情報1005のデータベースにデータベース制御部1003を通してアクセスする。
【００１４】
1004は文書情報データベースで、文書データそのものとそれに関するセキュリティ情報、文書の署名データなどが保存されるデータベースである。
【００１５】
1005はユーザー情報データベースで、ユーザーの個人情報や権限、電子メールアドレスなどに関する情報が保存されるデータベースである。
【００１６】
1007は電子メール送信部である。システムが電子メールの送信要求を出したときに、電子メールを送信する。
【００１７】
<鍵管理システム処理>
次に、鍵管理システム部について説明する。1101は鍵管理制御部で、アプリケーションからの要求を解析し、必要に応じて鍵情報1102データベースにアクセスする。
【００１８】
1102は鍵情報データベースで、各ユーザーが管理する秘密鍵や公開鍵、公開鍵証明書などが保存されるデータベースである。
【００１９】
図２は署名に使用する秘密鍵の自動選択を示すフローチャートである。
まず、S2001でユーザーがもつ秘密鍵に対応する公開鍵証明書のリストを取得する。
【００２０】
S2002では、システムの持つユーザー情報から電子メールアドレスを取得する。
S2003では、S2002で取得した電子メールアドレスを持つユーザーに発行された公開鍵証明書を、S2001で取得した公開鍵証明書のリストから検索する。
【００２１】
S2004では、S2003で取得した公開鍵証明書に対応付けられている秘密鍵を取得し、それを用いて電子署名を行う。
【００２２】
本実施形態によれば、システムが保持するユーザー情報によって、署名に使用する秘密鍵を複数の候補から自動的に選択できるようになる。
【００２３】
（実施形態２）
前記実施形態では、発行先の電子メールアドレスのみを考慮して秘密鍵の選択を行っていたが、鍵管理制御部1006での処理を図３に示すように変更して、発行者も利用して鍵を選択するようにしてもよい。
【００２４】
この場合、ユーザーが複数の発行機関から同一の電子メールアドレスに対して秘密鍵の発行を受けている場合でも、署名に使用する秘密鍵を一意に自動的に選択することができる。
【００２５】
（実施形態３）
前記実施形態では、署名の有効性はユーザーごとに検証する必要があるが、署名の無効性が発覚した時点で署名者にその旨を伝える電子メールを送信するように変更してもよい。
【００２６】
この場合、署名者は自分で署名の検証を行わなくても署名の有効性を知ることができ、署名者の負担を削減することができる。
【００２７】
（実施形態４）
前記実施形態では、文書管理システムの形態には特にこだわっていないが、図4に示すように、クライアント部4000とサーバー部4100から成り立つシステムに変更しても良い。
【００２８】
<クライアント部>
まず、クライアント部について説明する。4001はユーザーインターフェース部である。システムはユーザーインターフェース部を介してユーザーの操作を受け取り、4002の文書管理制御部にそのユーザー操作を伝える。
【００２９】
ユーザーインターフェース部から伝えられた操作情報は4002の文書管理制御部で解析され、署名や検証要求があった場合は電子署名制御部4004を通して鍵管理システムにアクセスする。必要に応じてサーバーと、文書データや署名データ、ユーザー情報などののやりとりを適切に行う。
【００３０】
4003は通信制御部で、サーバー4100と通信するための制御を行う。本実施例の通信制御部は文書管理サーバーの処理に特化した制御のみを行っており、TCP/IP等の通信そのものの制御はOSに用意されたものを使用している。
【００３１】
<サーバー部>
次に、サーバー部について説明する。4101は通信制御部で、クライアントの通信制御部4003と通信のための制御を行う。ただしサーバーの通信制御部は多数のクライアントの通信制御部と同時に通信を行うことが可能になっている。
【００３２】
4102は文書管理制御部で、文書管理に関するすべての処理の振り分けを行っている。その際、署名データの無効化が通知された場合に、メール送信部(4106)を呼び出す。
【００３３】
4103はデータベース制御部で、データベースに登録や変更するデータの作成、保存処理を行う。また、クライアントからの要求に応じてそれぞれのデータベースからデータを取り出し、クライアントに渡すデータを作成する処理を行う。
4104は文書情報データベースで、文書データそのものとそれに関するセキュリティ情報、文書の署名データなどが保存されるデータベースである。
【００３４】
4105はユーザー情報データベースで、ユーザーの個人情報や権限、電子メールアドレスなどに関する情報が保存されるデータベースである。
4106は電子メール送信部である。システムが電子メールの送信要求を出したときに、電子メールを送信する。
【００３５】
この場合、異なるマシンで使用した場合も、同一基準で鍵の選択を行うことができる。
【図面の簡単な説明】
【００３６】
【図１】本発明における文書管理システムのシステムブロック図。
【図２】本発明における電子署名制御部のフローチャート図。
【図３】本発明における電子署名制御部のフローチャート図。
【図４】本発明におけるサーバ部のブロック図。
【符号の説明】
【００３７】
1001  ユーザーインターフェース部
1002  文書管理制御部
1003  データベース制御部
1004  文書情報データベース
1005  ユーザー情報データベース
1006  電子署名制御部
1007  メール送信部
1101  鍵管理制御部
1102  鍵情報データベース
4001  ユーザーインターフェース部
4002  文書管理制御部
4003  通信制御部
4101  通信制御部
4102  文書管理制御部
4103  データベース制御部
4104  文書情報データベース
4105  ユーザー情報データベース
4106  メール送信部
【図１】
2005175688.tif 000003
【図２】
2005175688.tif 000004
【図３】
2005175688.tif 000005
【図４】
2005175688.tif 000006