(57)【要約】【課題】  複数の電子文書からなる申請手続き全ての文書の署名情報を管理し、第三者による改竄、改変を防止する。【解決手段】  電子申請装置１は、受信した申請様式に合致する様式文書および手続き管理文書中に必要事項を入力し、また、自らの私有鍵を用いて様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、様式文書に任意に添付される添付文書、および手続き管理文書中の署名範囲、それぞれに対する署名を手続き管理文書中に保持し、文書管理装置へ送信する。また、電子署名検証装置２は、取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、様式文書に関連して送信される手続き管理文書に保持された署名と同じ署名を検証してその真正性を検証する。【選択図】      図１
2005196389.tif 000002
【特許請求の範囲】
【請求項１】
文書管理装置とは通信ネットワークを介して接続される電子申請装置であって、
自らの識別と文書の申請様式を識別するための情報を送信し、前記文書管理装置に対して該当する様式文書の取得要求を発行する申請様式取得要求部と、
前記申請様式に合致する様式文書と、その手続き管理文書、および識別した署名者用の実行管理データとを受信する申請文書取得部と、
前記様式文書および手続き管理文書中に必要事項を入力し、自らの私有鍵を用いて前記様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、前記様式文書に任意に添付される添付文書、および前記手続き管理文書中の署名範囲、それぞれに対する署名を前記手続き管理文書中に保持する署名生成部と、
前記署名済みの様式文書、添付文書および手続き管理文書を前記文書管理装置へ送信する申請文書送信部と、
を備えたことを特徴とする電子申請装置。
【請求項２】
前記署名生成部は、
前記手続き管理文書に対し、更に第三者の私有鍵を用いて書名を付すことを特徴とする請求項１に記載の電子申請装置。
【請求項３】
文書管理装置とは通信ネットワークを介して接続され、電子申請に必要な様式文書に付与された署名の検証を行う電子署名検証装置であって、
前記署名検証の対象となる様式文書を特定し、前記文書管理装置に対してその様式文書の照会を行う様式文書照会部と、
前記照会により取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、前記様式文書に関連して送信される手続き管理文書に保持された前記署名と同じ署名を検証してその真正性を検証する署名検証部と、
を備えたことを特徴とする電子署名検証装置。
【請求項４】
前記署名検証部は、
前記手続き管理文書に保持された第三者の私有鍵を用いて付された署名を更に署名検証することを特徴とする請求項３に記載の電子署名検証装置。
【請求項５】
電子申請に必要な様式文書に署名を付して申請を行う電子申請方法であって、
自らの識別と文書の申請様式を識別するための情報を送信し、前記文書管理装置に対して該当する様式文書の取得要求を発行するステップと、
前記申請様式に合致する様式文書と、その手続き管理文書、および識別した署名者用の実行管理データとを受信するステップと、
前記様式文書および手続き管理文書中に必要事項を入力し、自らの私有鍵を用いて前記様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、前記様式文書に任意に添付される添付文書、および前記手続き管理文書中の署名範囲、それぞれに対する署名を前記手続き管理文書中に保持するステップと、
前記署名済みの様式文書、添付文書および手続き管理文書を前記文書管理装置へ送信するステップと、
を有することを特徴とする電子申請方法。
【請求項６】
電子申請に必要な様式文書に付与された署名の検証を行う電子署名検証方法であって、
前記署名検証の対象となる様式文書を特定し、前記文書管理装置に対してその様式文書の照会を行うステップと、
前記照会により取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、前記様式文書に関連して通信ネットワークを介して送信される手続き管理文書に保持された前記署名と同じ署名を検証してその真正性を検証するステップと、
を有することを特徴とする電子署名検証方法。
【請求項７】
文書管理装置とは通信ネットワークを介して接続され、電子申請に必要な様式文書に署名を付して申請を行う電子申請装置に用いられるプログラムであって、
自らの識別と文書の申請様式を識別するための情報を送信し、前記文書管理装置に対して該当する様式文書の取得要求を発行する処理と、
前記申請様式に合致する様式文書と、その手続き管理文書、および識別した署名者用の実行管理データとを受信する処理と、
前記様式文書および手続き管理文書中に必要事項を入力し、自らの私有鍵を用いて前記様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、前記様式文書に任意に添付される添付文書、および前記手続き管理文書中の署名範囲、それぞれに対する署名を前記手続き管理文書中に保持する処理と、
前記署名済みの様式文書、添付文書および手続き管理文書を前記文書管理装置へ送信する処理と、
をコンピュータに実行させる電子申請プログラム。
【請求項８】
文書管理装置とは通信ネットワークを介して接続され、電子申請に必要な様式文書に付与された署名の検証を行う電子署名検証装置に用いられるプログラムであって、
前記署名検証の対象となる様式文書を特定し、前記文書管理装置に対してその様式文書の照会を行う処理と、
前記照会により取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、前記様式文書に関連して送信される手続き管理文書に保持された前記署名と同じ署名を検証してその真正性を検証する処理と、
をコンピュータに実行させる電子署名検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書管理装置とはインターネット等の通信ネットワークを介して接続され、電子申請に必要な様式文書に署名を付して申請する、あるいは電子申請に必要な様式文書に付与された署名の検証を行う、電子申請装置およびその方法ならびにプログラム、電子署名検証装置およびその方法ならびにプログラムに関する。
【背景技術】
【０００２】
電子署名を利用した電子申請システムや電子稟議システムでは、データの流通性を考慮してＸＭＬ（eXtended Markup Language）文書が広く使われている。この様なシステムにおいて、文書内容が回覧の途中や後日改竄が行われたか否かを発見できるようにするための仕組みとして、ＸＭＬ署名が使われている（例えば、非特許文献１〜３参照）。
これは、文書データを圧縮したハッシュ値を署名者の保持する私有鍵で暗号化するディジタル署名技術を、ＸＭＬの構造に対応するようにしたものである。
【非特許文献１】H・X・メル＋Doris Baker著、「暗号技術のはなし」、初版、ピアソン・エデュケーション、2002年12月15日、P.115〜P.125
【非特許文献２】電子署名及び認証業務に関する法律（電子署名法）の概要（［平成１５年１１月１４日検索］、インターネット＜ＵＲＬ：URL:http://www.soumu.go.jp/joho_tsusin/top/ninshou-law/2-1.pdf＞）
【非特許文献３】IETF（Internet Engineering Task Force） W3C XML Signature WG（［平成１５年１１月１４日検索］、インターネット＜ＵＲＬ：http://www.w3.org/Signature/＞）
【０００３】
図２６に申請手続きにおける署名方式の一例を示す。図２６中、上段ブロックが申請者の端末装置（電子申請装置）、下段ブロックが申請者による申請手続きの真正性を確認する検証者の端末装置（電子検証装置）に対応する。
【０００４】
図２６において、電子検証装置は、先ず、署名済み電子文書Ａから署名データＡを取り出し、署名に関する情報を取得する。署名に関する情報とは、ディジタル署名のアルゴリズム、署名の対象となった被署名文書内の範囲情報およびそのハッシュ値、圧縮関数に利用したアルゴリズムを特定する識別等が含まれる。次に、署名範囲情報から署名範囲を特定し、圧縮関数に利用されたアルゴリズムを使用しハッシュ値を計算する。そして、計算されたハッシュ値と署名データＡ内の文書のハッシュ値が等しいことを検査する。電子検証装置は、上記した検査により、署名対象範囲の文書内容の完全性は確認できるが、更に被署名データＡの真正性の検査が必要である。
被署名データＡの検査は、ディジタル署名Ａと申請者の公開鍵である公開鍵Ｂを使用して行う。具体的に、まず、署名方法識別から署名に使用された圧縮アルゴリズムを特定し、被署名データＡのハッシュ値を求める。次にディジタル署名Ａを公開鍵Ｂで復号してハッシュ値を得、それぞれのハッシュ値が等しいことを検査する。上記２種類の検査により、申請者による署名の真正性が保証される。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ＸＭＬはテキスト形式であり、可読性、流通性が良く、エディタなどのツールで容易に編集することが可能である。その反面、誰でも容易にＸＭＬ署名の内容を削除、改変が可能であり、従って、署名データが悪意や事故により削除されても検知できない。
また、複数の申請様式から成る申請や、添付ファイルを含む申請や稟議の場合、複数文書の関連を保持したうえで完全性を保証する必要がある。上記した非特許文献３では、ＸＭＬ文書内の署名からみて、当該署名が「非署名データ」のどの文書に対応するか定義されているが（Ｘｐａｔｈ）、「非署名データ」のどの部分の文書がどの署名に対応するかについて把握できていない。このため、署名が改竄され、あるいは削除された場合承認が得られているか否かを把握できなくなる。
【０００６】
本発明は上記事情に鑑みてなされたものであり、従来、署名情報の削除が検知出来ないのはＸＭＬ電子文書内の署名が互いに独立していることが原因であることに着目し、データ構造上、申請書の上位に位置する手続き管理ファイルを導入し、ここに申請書や添付ファイルの署名値を保持することで、複数の電子文書からなる申請手続き全ての文書の署名情報を管理し、第三者による改竄、改変を防止することのできる、電子申請装置およびその方法ならびにプログラム、署名検証装置およびその方法ならびにプログラムを提供することを目的とする。
また、当該文書に対して、ＨＳＭ（ハードウェアセキュリティモジュール）等耐タンパ性装置により厳重に保管される私有鍵で改竄防止用の署名を付与することで、署名者本人による改竄、改変も防止し、完全性を保証出来る、電子申請装置およびその方法ならびにプログラム、署名検証装置およびその方法ならびにプログラムを提供することも目的とする。
【課題を解決するための手段】
【０００７】
上記した課題を解決するために本発明は、文書管理装置とは通信ネットワークを介して接続される電子申請装置であって、自らの識別と文書の申請様式を識別するための情報を送信し、前記文書管理装置に対して該当する様式文書の取得要求を発行する申請様式取得要求部と、前記申請様式に合致する様式文書と、その手続き管理文書、および識別した署名者用の実行管理データとを受信する申請文書取得部と、前記様式文書および手続き管理文書中に必要事項を入力し、自らの私有鍵を用いて前記様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、前記様式文書に任意に添付される添付文書、および前記手続き管理文書中の署名範囲、それぞれに対する署名を前記手続き管理文書中に保持する署名生成部と、前記署名済みの様式文書、添付文書および手続き管理文書を前記文書管理装置へ送信する申請文書送信部と、を備えたことを特徴とする。
【０００８】
また、本発明において、前記署名生成部は、前記手続き管理文書に対し、更に第三者の私有鍵を用いて書名を付すことを特徴とする。
【０００９】
上記した課題を解決するために本発明は、文書管理装置とは通信ネットワークを介して接続され、電子申請に必要な様式文書に付与された署名の検証を行う署名検証装置であって、前記署名検証の対象となる様式文書を特定し、前記文書管理装置に対してその様式文書の照会を行う様式文書照会部と、前記照会により取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、前記様式文書に関連して送信される手続き管理文書に保持された前記署名と同じ署名を検証してその真正性を検証する署名検証部と、を備えたことを特徴とする。
【００１０】
また、本発明において、前記署名検証部は、前記手続き管理文書に保持された第三者の私有鍵を用いて付された署名を更に署名検証することを特徴とする。
【００１１】
上記した課題を解決するために本発明は、電子申請に必要な様式文書に署名を付して申請を行う電子申請方法であって、自らの識別と文書の申請様式を識別するための情報を送信し、前記文書管理装置に対して該当する様式文書の取得要求を発行するステップと、前記申請様式に合致する様式文書と、その手続き管理文書、および識別した署名者用の実行管理データとを受信するステップと、前記様式文書および手続き管理文書中に必要事項を入力し、自らの私有鍵を用いて前記様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、前記様式文書に任意に添付される添付文書、および前記手続き管理文書中の署名範囲、それぞれに対する署名を前記手続き管理文書中に保持するステップと、前記署名済みの様式文書、添付文書および手続き管理文書を前記文書管理装置へ送信するステップと、を有することを特徴とする。
【００１２】
上記した課題を解決するために本発明は、電子申請に必要な様式文書に付与された署名の検証を行う署名検証方法であって、前記署名検証の対象となる様式文書を特定し、前記文書管理装置に対してその様式文書の照会を行うステップと、前記照会により取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、前記様式文書に関連して通信ネットワークを介して送信される手続き管理文書に保持された前記署名と同じ署名を検証してその真正性を検証するステップと、を有することを特徴とする。
【００１３】
上記した課題を解決するために本発明は、文書管理装置とは通信ネットワークを介して接続され、電子申請に必要な様式文書に署名を付して申請を行う電子申請装置に用いられるプログラムであって、自らの識別と文書の申請様式を識別するための情報を送信し、前記文書管理装置に対して該当する様式文書の取得要求を発行する処理と、前記申請様式に合致する様式文書と、その手続き管理文書、および識別した署名者用の実行管理データとを受信する処理と、前記様式文書および手続き管理文書中に必要事項を入力し、自らの私有鍵を用いて前記様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、前記様式文書に任意に添付される添付文書、および前記手続き管理文書中の署名範囲、それぞれに対する署名を前記手続き管理文書中に保持する処理と、前記署名済みの様式文書、添付文書および手続き管理文書を前記文書管理装置へ送信する処理と、をコンピュータに実行させることを特徴とする。
【００１４】
上記した課題を解決するたに本発明は、文書管理装置とは通信ネットワークを介して接続され、電子申請に必要な様式文書に付与された署名の検証を行う署名検証装置に用いられるプログラムであって、前記署名検証の対象となる様式文書を特定し、前記文書管理装置に対してその様式文書の照会を行う処理と、前記照会により取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、前記様式文書に関連して送信される手続き管理文書に保持された前記署名と同じ署名を検証してその真正性を検証する処理と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、署名生成部が、申請文書取得部により受信される申請様式に合致する様式文書および手続き管理文書中に必要事項を入力し、また、自らの私有鍵を用いて様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、様式文書に任意に添付される添付文書、および手続き管理文書中の署名範囲、それぞれに対する署名を手続き管理文書中に保持し、文書管理装置へ送信することで、複数文書の関連を保持したうえで申請手続きに要する全ての文書の署名情報を管理することができる。
また、耐タンパ性装置により厳重に保管される第三者の私有鍵を用い改竄防止用の署名を付与することで、署名者本人による改竄、改変も防止出来、完全性を保証することが出来る。
【００１６】
本発明によれば、署名検証部が、様式文書照会部により取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、様式文書に関連して送信される手続き管理文書に保持された署名と同じ署名を検証してその真正性を検証することで、複数の電子文書からなる申請手続き全ての文書の署名情報を管理し、第三者による改竄、改変を防止できる。
また、手続き管理文書に保持された第三者の私有鍵を用いて付された署名を更に署名検証することで、署名者本人による改竄、改変も防止出来、完全性を保証することが可能な電子署名検証装置を提供出来る。
【発明を実施するための最良の形態】
【００１７】
図１は、本発明の電子申請装置および電子署名検証装置が接続される電子申請システムのシステム構成を説明するために引用した図である。
図１において、符号１は、電子申請に必要な様式文書に署名を付して申請を行う電子申請装置、符号２は、電子申請に必要な様式文書に付与された署名の検証を行う電子署名検証装置である。電子申請装置１および電子署名検証装置は、インターネット、イントラネット、エクストラネット等の通信ネットワーク５を介して文書管理装置３、４に接続される。
文書管理装置３は、手続きに伴い必要とされる多数の申請様式文書を管理すると共に、手続きそのもの、また、手続き中の文書、手続きが完した後の文書を管理し、文書管理装置４はその代替用として用意される。
【００１８】
図５、図６に、文書管理装置３（４）で管理されるテーブルおよびその構造の一例が示されている。
ここでは、手続き管理ＴＢＬ３１と、様式管理ＴＢＬ３２と、申請管理ＴＢＬ３３と、申請様式管理ＴＢＬ３４と、申請添付文書管理ＴＢＬ３５が例示されている。
【００１９】
様式類を管理するために用いられる手続き管理ＴＢＬ３１は、図５（ａ）に示されるように、手続きの種類毎、その手続きを識別する手続き識別番号、手続き名、手続き管理文書（雛型）の各データ項目から構成される。ここで、手続き管理文書は、データ構造上、様式文書の上位に位置し、ここに様式文書や添文書の署名値を保持することで、第三者による改竄、改変を防止するものである。詳細は後述する。
様式管理ＴＢＬ３２は、図５（ｂ）に示されるように、手続き識別番号、様式通番、様式文書（雛型）の各データ項目から構成される。これらテーブル間の関係は、図７（ａ）に示されるように、手続き識別番号をキーに手続く管理ＴＢＬ３１と様式管理ＴＢＬＬ３２を結合することで、手続きに必要な手続き管理文書雛型、様式文書雛型の全てを取得できる。
【００２０】
申請状態を管理するために用いられる申請管理ＴＢＬ３３は、図６（ａ）に示されるように、申請番号、手続き識別番号、手続き管理文書の各データ項目から構成される。また、申請様式管理ＴＢＬ３４は、図６（ｂ）に示されるように、申請番号、様式通番、申請文書の各データ項目から構成される。更に、申請添付文書管理ＴＢＬ３５は、申請番号、通番、申請添付文書の各データ項目から構成される。
これらテーブル間の関係は、図７（ｂ）に示されるように、申請番号をキーに、申請管理ＴＢＬ３３、申請様式管理ＴＢＬ３４、申請添付文書管理ＴＢＢＬ３５を結合することにより、手続きに必要な手筒へ木管理文書および全ての申請様式文書、添付文書を取得できる。
【００２１】
図２は、図１に示す電子文書申請装置の内部構成を機能展開して示したブロック図である。
本発明の電子申請装置１は、申請文書取得要求部１１と、申請文書取得部１２と、署名生成部１３と、申請文書送信部１４と、文書ＴＢＬ（table）１５で構成される。
【００２２】
申請文書取得要求部１１は、自らと文書の申請様式を識別するための情報を送信し、文書管理装置３、４に対して該当する様式文書の取得要求を発行する機能を持ち、申請文書取得部１２は、申請様式に合致する様式文書と、その手続き管理文書、および識別した署名者用の実行管理データとを受信する機能を持つ。
また、署名生成部１３は、様式文書および手続き管理文書中に必要事項を入力し、自らの私有鍵を用いて様式文書に署名を付すと共に、当該様式文書内に生成された署名データ、様式文書に任意に添付される添付文書、および手続き管理文書中の署名範囲、それぞれに対する署名を手続き管理文書中に保持する機能を持つ。署名生成部１３はまた、手続き管理文書に対し、更に第三者の私有鍵を用いて書名を付す機能も併せ持つ。
【００２３】
申請文書送信部１４は、署名済みの様式文書、添付文書および手続き管理文書を文書管理装置３、４へ送信する機能を持つ。
なお、文書ＴＢＬ１５には、文書管理装置３、４から送信される様式文書、添付文書、手続き管理文書が格納される。
【００２４】
図３は、図１に示す電子署名検証装置の内部構成を機能展開して示したブロック図である。
本発明の電子署名検証装置２は、申請文書照会部２１と、署名検証部２２と、検証結果出力部２３と、文書ＴＢＬ２４で構成される。
【００２５】
申請文書照会部２１は、署名検証の対象となる様式文書を特定し、文書管理装置３、４に対してその様式文書の照会を行う機能を持つ。
署名検証部２２は、申請文書照会部２１による照会に従い、取得した申請者の私有鍵で署名済みの様式文書および当該様式文書に任意に添付され取得される添付文書を、様式文書に関連して送信される手続き管理文書に保持された署名と同じ署名を検証してその真正性を検証する機能を持つ。署名検証部２２はまた、手続き管理文書に保持された第三者の私有鍵を用いて付された署名を更に署名検証する機能も併せ持つ。
結果出力部２３は、署名検証部２２による署名検証の結果を、表示装置等を介して外部へ出力する機能を持つ。なお、文書ＴＢＬ２４には、電子文書申請装置１から送信される署名付きの様式文書、添付文書、手続き管理文書が格納される。手続き管理文書には様式文書や添文書の署名値が保持されており、この署名謡を検証することによって署名者本人を含む第三者による改竄、改変は防止するものである。詳細は後述する。
【００２６】
図４は、本発明の概略動作を説明するために引用した動作シーケンス図であり、具体的には、文書管理装置３（４）と、電子申請装置１、電子署名検証装置２間の動作シーケンスが示されている。
以下、図４に示す動作シーケンス図を参照しながら図２、図３に示す本発明実施形態の概略動作について説明する。
【００２７】
まず、申請者は電子申請装置１を操作することにより、文書管理装置３（４）に対し通信ネットワーク５経由で申請者識別を含む手続き識別番号を送信して申請文書の取得要求を発行する（Ｓ４１）。
文書管理装置２（４）では、申請文書取得要求部１１を介して発行される申請文書取得要求を受信し、申請者の識別と認証を行い、認証が成功した取得要求に対して、手続き識別番号をキーに、該当の手続き管理ＴＢＬ３１、様式管理ＴＢＬ３２を参照して得られる手続き管理文書（雛型）および様式文書（雛型）を、要求のあった電子申請装置１に対して通信ネットワーク５経由でダウンロードする（Ｓ４２）。すなわち、自らの管理する様式類の中から申請者が選択した手続きに関する様式と、手続き管理文書及び、識別した署名者用の署名実行管理データを取り出し電子申請装置１に送信する。
【００２８】
ダウンロードされるこれら文書類を申請文書取得部１２で受信した電子申請装置１では、様式文書および手続き管理文書中に申請者によって入力される必要事項取り込み、署名生成部１３を起動して、自らの私有鍵を用いて様式文書に署名を付す（Ｓ４３）。そして、当該様式文書内に生成された署名データ、様式文書に任意に添付される添付文書、および手続き管理文書中の署名範囲、それぞれに対する署名を手続き管理文書中に保持し、申請文書送信部１４を介して署名済みの様式文書、添付文書および手続き管理文書を文書管理装置３（４）へアップロードする（Ｓ４４）。
【００２９】
続いて、文書管理装置３（４）では、アップロードにより受信した文書類の改竄チェックを署名データにより行う。そして、チェック結果が正しいものについて更に、耐タンパ性装置内で保管されている第三者の私有鍵による改竄防止用の電子署名を付与する（Ｓ４５）。そして、申請番号を採番したうえで保存管理する。ここでは、申請番号をキーに、申請管理ＴＢＬ３３、申請様式管理ＴＢＬ３４、申請添付文書管理ＴＢＬ３５に、手続き管理文書、様式文書、添付文書のそれぞれを保存する（Ｓ４６）。
なお、電子申請装置１には、上記した電子署名操作を実行するために後述する本発明の署名プログラムがインストールされているものとする。
【００３０】
一方、検証者は申請が完了した手続きの正当性を検査するために、文書管理装置３（４）に対して申請完了手続きの照会を行い、申請番号を指定することにより検査を行う申請手続きの選択を行う。これに対し、文書管理装置３（４）は、検証者の識別、認証を行い、認証に成功した場合に、該当の申請に関連する署名済み手続き管理文書、署名済み様式、添付電子文書及び、申請者用の署名実行管理ファイルを電子署名検証装置２の照会画面を表示するとともに、当該申請手続きに使用された電子文書中の全ての署名データ検証を行い、その検証結果を電子申請装置１に表示する。
具体的に、検証者は、電子署名検証装置２を操作することにより、文書管理装置３（４）に対し通信ネットワーク５経由で、検証者識別を含む申請番号を送信して保存文書の照会要求を発行する（Ｓ４７）。文書管理装置３（４）では、申請文書照会部２により発行される保存文書照会要求を受信し、手続き申請番号をキーに該当の手続き管理ＴＢＬ３３、申請様式管理ＴＢＬ３４、申請添付文書管理ＴＢＬ３５を参照して得られる手続き管理文書、申請文書および申請添付文書を、要求のあった電子署名検証装置２に対して通信ネットワーク５経由でダウンロードする（Ｓ４８）。
【００３１】
申請文書照会部２１は、照会の結果取得した、申請者の私有鍵で改竄防止署名済みの様式文書（申請文書）、および当該様式文書に任意に添付され取得される添付文書（申請添付文書）を署名検証部２２に送信し（Ｓ４９）署名検証部２２では、これらに関連して送信される手続き管理文書に保持された改竄防止署名と同じ署名を検証してその真正性を検証する（Ｓ５０）。
なお、電子署名検証装置２には、上記した署名検証操作を実行するために本発明の署名検証プログラムがインストールされているものとする。
【００３２】
図８は、署名実行時の署名プログラムと各データの関連を説明するために引用した動作概念図である。
ここでは、例えば、図５（ｂ）の様式管理ＴＢＬ３２に示されるように、ある手続き（手続き識別番号“Ｓ００００Ａ”）のために、様式通番“００１”と“００２”が付されたそれぞれ申請様式１（４０）と２（４１）の２種類が必要とされ、更に、図６（ｃ）の申請添付文書管理ＴＢＬ３５に示されるように、それぞれに添付文書１（４３）、２（４４）の付属を要するものとする。
以上の前提の下で、署名プログラムｓｐは、申請者が持つ署名用の鍵である私有鍵により文書管理装置３（４）から取得した手続き管理文書４２を含む各文書に対して電子署名を行う。具体的に、署名用プログラムｓｐは、各様式（申請様式１（４０）、申請様式２（４１））に電子署名を付すとともに、当該様式内に生成された署名データ、および添付文書、手続き管理文書中の署名範囲、それぞれに対する署名を、手続き管理文書４２中に生成し、そのハッシュ値を保持する。
署名実行後は、署名済み手続き管理文書４２、署名済み様式４０、４１、添付文書４３、４４を文書管理装置３（４）へ送信する。
【００３３】
図９は、本発明の電子署名プログラムによる内部処理を説明するために引用した動作概念図であり、図１１〜図１６はその具体的な手順を示すフローチャートである。
以下、図１１〜図１６に示すフローチャートを参照しながら図９に示す動作概念図の詳細を説明する。
【００３４】
本発明の電子署名プログラムは、図１１に示されるように、申請様式４０、４１への署名付与ルーチン（Ｓ５１）と、手続き管理文書４２への署名付与ルーチン（Ｓ５２）から成る。
添付文書４３、４４を含む申請様式４０、４１への署名付与ルーチン（Ｓ５１）の詳細な流れが図１２に示されている。
図１２に示すフローチャートにおいて、まず、申請様式１（４０）への署名にあたり（Ｓ５１１）、署名対象要素（４０１）の値を取得し、当該ハッシュ値の計算を行う（Ｓ５１２、Ｓ５１３）。そして、更なる署名対象要素があれば値を取得し、当該ハッシュ値の計算を行う（Ｓ５１２、Ｓ５１３）。
【００３５】
次に、全ての署名対象要素のハッシュ値取得完了を確認し（Ｓ５１２Ｙｅｓ）、被署名データの生成を行う（Ｓ５１４）。続いて、申請者が持つ私有鍵ｐｋによる被署名データへのディジタル署名が実行され（Ｓ５１５）、この被署名データとディジタル署名値による署名データ４０２が生成される（Ｓ５１６）。
そして、申請者の署名データを付加してＳ５１１の処理に戻り（Ｓ５１７）、次の申請様式２（４１）について上記した申請様式１（４０）の署名処理と同様の処理（Ｓ５１２〜Ｓ５１７）を繰り返し実行する。全ての申請様式への署名が終了したところで申請様式への署名処理（Ｓ５１）の実行を終了する。
【００３６】
図１３に、手続き管理文書４２への署名付与ルーチンの詳細な流れが示されている。
手続き管理文書４２への署名付与ルーチン（Ｓ５２）は、手続き管理文書４２の署名対象要素に対する署名処理（Ｓ５２１）と、申請様式１（４０）、申請様式２（４１）の署名データに対する署名処理を実行した後（Ｓ５２２）、添付文書の有無がチェックされ（Ｓ５２３）、あったときに、更に添付文書への署名処理のためのサブルーチンを実行し（Ｓ５２４）、添付文書がないときに処理終了となる。
なお、手続き管理文書４２の署名対象要素に対する署名処理（Ｓ５２１）は図１４に、申請様式１（４０）、申請様式２（４１）の署名データに対する署名処理は図１５に、添付文書への署名処理は図１６にその詳細な流れが示されている。
【００３７】
図１４に示す、手続き管理文書４２の署名対象要素に対する署名処理（Ｓ５２１）では、まず、署名対象要素（４２１）のハッシュ値を取得し（Ｓ５２１１）、当該署名対象要素のハッシュ値の計算を行う（Ｓ５２１２）。そして、Ｓ５２１１の処理に戻り、更に署名対象要素があればその署名対象要素の値を取得し（Ｓ５２１１）、当該ハッシュ値の計算を行う（Ｓ５２１２）。
次に、全ての署名対象要素のハッシュ値取得完了を確認したところで（Ｓ５２１１Ｙｅｓ）、被署名テータの生成を行う（Ｓ５２１３）。続いて、申請者が持つ私有鍵ｐｋによる被署名データへのディジタル署名が実行され（Ｓ５２１４）、この被署名データとディジタル署名値による署名データＡＫ１（４２２）が生成される（Ｓ５２１５）。そして、手続き管理文書４２へ申請者の署名データＡＫ１（４２２）を付加して処理を終了する。
【００３８】
図１５に示す申請様式の署名データに対する署名処理（Ｓ５２２）では、まず、申請様式１（４０）について自身の署名データか否かをチェックする（Ｓ５２２３）。ここで、自身の署名データにより署名されていれば当該署名データのハッシュ値を計算して（Ｓ５２２４）、Ｓ５２２２の処理に戻り、次の署名データについても同じ処理を繰り返す（Ｓ５２２３、Ｓ５２２４）。
一方、全ての署名データに対する署名処理の処理完了を待って（Ｓ５２２２Ｙｅｓ）、被署名データの生成を行う（Ｓ５２２５）。続いて、申請者が持つ私有鍵ｐｋによる被署名データへのディジタル署名が実行され（Ｓ５２２６）、この被署名データとディジタル署名値による署名データＡＤ１（４２３）の作成を行う（Ｓ５２２７）。そして、手続き管理文書４２へその署名データＡＤ１（４２３）を付与し、Ｓ５２２１の処理へ戻って次の申請様式２（４１）についても上記した申請様式１（４０）の処理と同様の処理（Ｓ５２２２〜Ｓ５２２８）を繰り返し実行し、手続き管理文書４２へその署名データＡＤ２（４２４）を付与する。全ての申請様式についての処理が完了したところで申請様式の署名データに対する署名処理（Ｓ５２２）の実行を終了する。
【００３９】
図１６に示す添付文書への署名処理（Ｓ５２４）では、まず、添付文書１（４３）における文書全体のハッシュ値を計算する（Ｓ５２３２）。次に、被署名データＡＴ１の作成を行う（Ｓ５２４３）。そして、申請者が持つ私有鍵ｐｋにより被署名データへのディジタル署名を実行し（Ｓ５２３４）、この被署名データとディジタル署名値による署名データＡＴ１（４２５）を作成する（Ｓ５２３５）。
続いて手続き管理文書４２へその署名データＡＴ１（４２５）を付加し（Ｓ５２３６）、続いて添付文書４４に同様の処理（Ｓ５２３２〜Ｓ５２３６）を実行し、手続き管理文書４２へ署名データＡＴ２（４２６）を付加する。以上の処理を全添付文書分繰り返して処理を終了する（Ｓ５２３１）。
【００４０】
図１７は、アップロード文書の署名検証処理（図４のＳ４５）を説明するために引用したフローチャートである。
電子申請装置１からアップロードされた文書の署名検証処理は、アップロード申請様式に対する署名検証処理ルーチン（Ｓ６１）と、アップロード手続き管理文書に対する署名検証ルーチン（Ｓ６２）から成る。アップロード申請様式に対する署名検証処理ルーチン（Ｓ６１）は、図１８に、アップロード手続き管理文書に対する署名検証ルーチン（Ｓ６２）は図１９にその詳細手順が示されている。
【００４１】
図１８に示すフローチャートにおいて、まず、申請様式１（４０）についてその署名対象要素毎ハッシュ値を計算し（Ｓ６１３、Ｓ６１４）、署名データ中のハッシュ値と計算済みハッシュ値との比較を行い（Ｓ６１５）、一致する場合は次の署名対象要素の処理に移り、不一致の場合は検証エラーとする。
全ての署名対象要素について上記した処理の実行を終えると（Ｓ６１３Ｙｅｓ）、被署名データのハッシュ値を計算し（Ｓ６１６）、ディジタル署名値を署名者の公開鍵により復号する（Ｓ６１７）。そして、この公開鍵による復号値と、Ｓ６１６で計算済みのハッシュ値との比較を行い（Ｓ６１８）、一致していれば、次の署名データに対して上記したＳ６１３〜Ｓ６１７の処理を繰り返し、また、不一致の場合は検証エラーとする。全ての署名データについて上記の処理が完了したら（Ｓ６１２Ｙｅｓ）、申請様式２（４１）についても申請様式１（４０）と同様の処理を実行し、全ての申請様式の処理完了を待ってアップロード申請様式文書に対する署名検証処理を終える（Ｓ６１１Ｙｅｓ）。
【００４２】
図１９に示すフローチャートにおいて、まず、手続き管理文書４２の署名対象要素４２１について、ハッシュ値を計算する（Ｓ６２３）。そして、署名データ中のハッシュ値と計算済みハッシュ値との比較を行い（Ｓ６２４）、不一致の場合は検証エラーとする。署名データ中に、更に署名対象要素が含まれる場合には、署名データ中の署名対象要素について上記処理を行う。
全ての署名対象要素データ４２２〜４２６について上記した処理の実行を終えると（Ｓ６２２Ｙｅｓ）、被署名データのハッシュ値を計算し（Ｓ６２５）、ディジタル署名値を署名者の公開鍵により復号する（Ｓ６２６）。そして、この公開鍵による復号値と、Ｓ６１６で計算済みのハッシュ値との比較を行い（Ｓ６２７）、一致していれば、次の署名データに対して上記したＳ６２２〜Ｓ６２７の処理を繰り返し、また、不一致の場合は検証エラーとする。全ての署名データについて上記の処理が完了したら（Ｓ６２１Ｙｅｓ）、アップロード手続き管理文書に対する署名検証処理を終える。
【００４３】
図１０は、改竄防止署名時における本発明の電子署名プログラムによる内部処理を説明するために引用した動作概念図であり、図２０〜図２５はその具体的な手順を示すフローチャートである。
以下、図２０〜図２５に示すフローチャートを参照しながら図１０に示す動作概念図の詳細を説明する。
【００４４】
本発明の電子署名プログラムは、図２０に示されるように、申請様式４０、４１への署名付与ルーチン（Ｓ７１）と、手続き管理文書４２への署名付与ルーチン（Ｓ７２）から成る。申請様式４０、４１に関する署名付与ルーチン（Ｓ７１）は図２１に、手続き管理文書に対する署名付与ルーチン（Ｓ７２）は、図２２にその詳細な流れが示されている。
【００４５】
図２１に示すフローチャートにおいて、まず、申請様式全体のハッシュ値を計算する（Ｓ７１２）。次に、被署名データの作成を行う（Ｓ７１３）。そして、改竄防止のために第三者が持つ私有鍵ｐｋ’により被署名データへのディジタル署名を実行し（Ｓ７１４）、この被署名データＣＤ１とディジタル署名値ＣＤ１による署名データ（４２７、４２８）を作成する（Ｓ７１５）。
続いて手続き管理文書４２へその署名データを付加し（Ｓ７１６）、全申請様式と添付文書分繰り返して申請様式に対する署名付与処理を終える（Ｓ７１１Ｙｅｓ）。
【００４６】
図２２に示すフローチャートにおいて、まず、手続き管理文書全体のハッシュ値を計算する（Ｓ７２１）。次に、被署名データの作成を行う（Ｓ７２２）。そして、改竄防止のために第三者が持つ私有鍵ｐｋ’により被署名データへのディジタル署名を実行し（Ｓ７２３）、この被署名データＣＫ１とディジタル署名値ＣＴ１による署名データ（４２９）を作成する（Ｓ７２４）。
続いて手続き管理文書４２へその署名データを付加し、手続き管理文書に対する署名付与処理を終える（Ｓ７２５）。
【００４７】
図２３は、署名の真正性検証処理の流れを説明するために引用したフローチャートである。図２３に示されるように、署名の真正性検証処理は、申請様式中の申請者署名の検証ルーチン（Ｓ８１）と、手続き管理文書中の署名検証ルーチン（Ｓ８２）から成る。
申請様式中の申請者署名の検証ルーチン（Ｓ８１）は図２４に、手続き管理文書中の署名検証ルーチン（Ｓ８２）は図２５にその詳細な流れが示されている。
【００４８】
図２４に示すフローチャートにおいて、まず、申請様式１（４０）についてその署名対象要素（４００２）のハッシュ値を計算し（Ｓ８１３、Ｓ８１４）、署名データ中のハッシュ値と計算済みハッシュ値との比較を行い（Ｓ８１５）、一致する場合は次の署名対象要素（４０１２）の処理（Ｓ８１４）に移り、不一致の場合は検証エラーとする。
全ての署名対象要素について上記した処理の実行を終えると（Ｓ８１３Ｙｅｓ）、被署名データのハッシュ値を計算し（Ｓ８１６）、ディジタル署名値を公開鍵により復号する（Ｓ８１７）。そして、この公開鍵による復号値と、Ｓ８１６で計算済みのハッシュ値との比較を行い（Ｓ８１８）、一致していれば、次の署名データに対して上記したＳ８１３〜Ｓ８１７の処理を繰り返し、また、不一致の場合は検証エラーとする。全ての署名データについて上記の処理が完了したら（Ｓ８１２Ｙｅｓ）、申請様式２（４１）についても申請様式１（４０）と同様の処理を実行し、全ての申請様式の処理完了を待って申請様式文書に対する署名の真正性検証処理を終える（Ｓ８１１Ｙｅｓ）。
【００４９】
図２５に示すフローチャートにおいて、まず、手続き管理文書４２の署名対象要素ＡＫ１〜ＣＫ１（４２２〜４２９）について、その署名対象要素または添付文書４３、４４のハッシュ値を計算する（Ｓ８２３）。そして、署名データ中のハッシュ値と計算済みハッシュ値との比較を行い（Ｓ８２４）、一致する場合は次の署名対象要素の処理に移り、不一致の場合は検証エラーとする。
全ての署名対象要素４２２〜４２９について上記した処理の実行を終えると（Ｓ８２２Ｙｅｓ）、被署名データのハッシュ値を計算し（Ｓ８２５）、ディジタル署名値を公開鍵により復号する（Ｓ８２６）。そして、この公開鍵による復号値と、Ｓ６１６で計算済みのハッシュ値との比較を行い（Ｓ８２７）、一致していれば、次の署名データに対して上記したＳ８２２〜Ｓ８２７の処理を繰り返し、また、不一致の場合は検証エラーとする。全ての署名データについて上記の処理が完了したら（Ｓ８２１Ｙｅｓ）、手続き管理文書４２に対する署名の真正性検証処理を終える。
【００５０】
以上説明のように本発明は、署名情報の削除が検知出来ないのはＸＭＬ電子文書内の署名は互いの独立していることが原因であることに着目して、データ構造上、申請様式の上位に位置する手続き管理文書４２（ファイル）を導入し、ここに申請様式や添付ファイルの署名値を保持することで、複数の電子文書からなる申請手続き全ての文書の署名情報を管理するものである。また、この文書に対して、ＨＳＭ（ハードウェアセキュリティモジュール）等の耐タンパ性装置により厳重に保管され第三者の私有鍵で改竄防止用の署名を付与し、署名者本人による改竄、改変も防止し、完全性を保証するものである。
【００５１】
なお、図２に示す電子申請装置１を構成する、申請文書取得要求部１１と、申請文書取得部１２と、署名生成部１３と、申請文書送信部１４、そして、図３に示す、電子署名検証装置２を構成する、申請文書照会部２１と、署名検証部２２と、検証結果出力部２３のそれぞれで実行される手順をコンピュータ読取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをコンピュータシステムに読込ませ、実行することによっても本発明を実現することができる。ここでいうコンピュータシステムとは、ＯＳや周辺機器等のハードウェアを含む。
【００５２】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００５３】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【００５４】
【図１】本発明の電子申請装置および電子署名検証装置が接続される電子申請システムのシステム構成を説明するために引用した図である。
【図２】図１に示す電子文書申請装置の内部構成を機能展開して示したブロック図である。
【図３】図１に示す電子署名検証装置の内部構成を機能展開して示したブロック図である。
【図４】本発明の概略動作を説明するために引用した動作シーケンス図である。
【図５】文書管理装置で管理されるテーブルおよびそのテーブル構造の一例を示す図である。
【図６】文書管理装置で管理されるテーブルおよびそのテーブル構造の一例を示す図である。
【図７】図５、図６に示すテーブルの結合関係を説明するために引用した図である。
【図８】署名実行時の署名プログラムと各データの関連を説明するたに引用した動作概念図である。
【図９】申請者署名時の署名プログラムの内部処理を説明するために引用した動作概念図である。
【図１０】改竄防止署名時の署名プログラムの内部処理を説明するために引用した動作概念図である。
【図１１】本発明実施形態の動作を説明するために引用したフローチャートである。
【図１２】本発明実施形態の動作を説明するために引用したフローチャートである。
【図１３】本発明実施形態の動作を説明するために引用したフローチャートである。
【図１４】本発明実施形態の動作を説明するために引用したフローチャートである。
【図１５】本発明実施形態の動作を説明するために引用したフローチャートである。
【図１６】本発明実施形態の動作を説明するために引用したフローチャートである。
【図１７】本発明実施形態の動作を説明するために引用したフローチャートである。
【図１８】本発明実施形態の動作を説明するために引用したフローチャートである。
【図１９】本発明実施形態の動作を説明するために引用したフローチャートである。
【図２０】本発明実施形態の動作を説明するために引用したフローチャートである。
【図２１】本発明実施形態の動作を説明するために引用したフローチャートである。
【図２２】本発明実施形態の動作を説明するために引用したフローチャートである。
【図２３】本発明実施形態の動作を説明するために引用したフローチャートである。
【図２４】本発明実施形態の動作を説明するために引用したフローチャートである。
【図２５】本発明実施形態の動作を説明するために引用したフローチャートである。
【図２６】従来のディジタル署名処理の流れを説明するために引用した図である。
【符号の説明】
【００５５】
１…電子申請装置、２…電子署名検証装置、３（４）…文書管理装置、５…通信ネットワーク、１１…申請文書取得要求部、１２…申請文書取得部、１３…署名生成部、１４…申請文書送信部、２１…申請文書照会部、２２…署名検証部、２３…検証結果出力部、３１…手続き管理ＴＢＬ、３２…様式管理ＴＢＬ、３３…申請管理ＴＢＬ、３４…申請様式管理ＴＢＬ、３５…申請添付文書管理ＴＢＬ
【図１】
2005196389.tif 000003
【図２】
2005196389.tif 000004
【図３】
2005196389.tif 000005
【図４】
2005196389.tif 000006
【図５】
2005196389.tif 000007
【図６】
2005196389.tif 000008
【図７】
2005196389.tif 000009
【図８】
2005196389.tif 000010
【図９】
2005196389.tif 000011
【図１０】
2005196389.tif 000012
【図１１】
2005196389.tif 000013
【図１２】
2005196389.tif 000014
【図１３】
2005196389.tif 000015
【図１４】
2005196389.tif 000016
【図１５】
2005196389.tif 000017
【図１６】
2005196389.tif 000018
【図１７】
2005196389.tif 000019
【図１８】
2005196389.tif 000020
【図１９】
2005196389.tif 000021
【図２０】
2005196389.tif 000022
【図２１】
2005196389.tif 000023
【図２２】
2005196389.tif 000024
【図２３】
2005196389.tif 000025
【図２４】
2005196389.tif 000026
【図２５】
2005196389.tif 000027
【図２６】
2005196389.tif 000028