(57)【特許請求の範囲】
【請求項１】
不可視データを含み得る構造化文書に対して電子署名を行うための電子署名装置であって、
上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換する可視データ変換手段と、
上記可視データ部分の内容を表示する表示手段と、
上記可視データ変換手段により得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成する第１の電子署名生成手段と、
上記可視データ変換手段により得られた上記イメージデータと、上記第１の電子署名生成手段により得られた第１の電子署名とを結合して１つのファイルを生成する第１の結合手段と、
元の上記構造化文書と、上記第１の結合手段により得られた上記ファイルとを結合して１つのファイルにする第２の結合手段と、
上記第２の結合手段により得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成する第２の電子署名生成手段と、
上記第２の結合手段により得られた上記ファイルと、上記第２の電子署名生成手段により得られた上記第２の電子署名とを結合して１つのファイルを生成する第３の結合手段と、
上記第３の結合手段により得られた上記ファイルを出力する出力手段と
を備え、
上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う
ことを特徴とする電子署名装置。
【請求項２】
上記第１の電子署名生成手段が、上記可視データ変換手段により得られた上記イメージデータの圧縮処理を行い、当該圧縮処理の後に、上記暗号化を行うとともに、
上記第２の電子署名生成手段が、上記第２の結合手段により得られた上記ファイルの圧縮処理を行い、当該圧縮処理の後に、上記暗号化を行う
ことを特徴とする請求項１に記載の電子署名装置。
【請求項３】
上記第１の秘密鍵と上記第２の秘密鍵が同一であることを特徴とする請求項１または２に記載の電子署名装置。
【請求項４】
上記第１の秘密鍵と上記第２の秘密鍵が異なることを特徴とする請求項１または２に記載の電子署名装置。
【請求項５】
上記表示手段により上記可視データ部分の内容が表示された後に、署名を実行するか否かの指令が入力される署名実行指令入力手段をさらに備えたことを特徴とする請求項１〜４のいずれかに記載の電子署名装置。
【請求項６】
不可視データを含み得る構造化文書に対して電子署名を行うための電子署名装置であって、
上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージデータファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加する可視データ変換手段と、
上記可視データ部分の内容を上記所定の文言とともに表示する表示手段と、
元の上記構造化文書と、可視データ変換手段により生成されたイメージデータファイルとを結合して１つのファイルにする第１の結合手段と、
上記第１の結合手段により得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成する電子署名生成手段と、
上記第１の結合手段により得られた上記ファイルと、上記電子署名生成手段により得られた上記電子署名とを結合して１つのファイルを生成する第２の結合手段と、
上記第２の結合手段により得られた上記ファイルを出力する出力手段と
を備え、
上記所定の文言により、署名対象範囲の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う
ことを特徴とする電子署名装置。
【請求項７】
上記電子署名生成手段が、上記第１の結合手段により得られた上記ファイルの圧縮処理を行い、当該圧縮処理の後に、上記暗号化を行うことを特徴とする請求項６に記載の電子署名装置。
【請求項８】
上記可視データ変換手段が、
上記可視データ部分を抽出して、当該可視データに上記所定の文言データを追加した後に、イメージデータに変換する
ことを特徴とする請求項６または７に記載の電子署名装置。
【請求項９】
上記可視データ変換手段が、
上記可視データ部分を抽出してイメージデータに変換してイメージデータファイルを生成するとともに、上記所定の文言データから他の１つのイメージデータファイルを生成して、それらのイメージデータファイルを結合させて１つのイメージデータファイルを生成する
ことを特徴とする請求項６または７に記載の電子署名装置。
【請求項１０】
上記表示手段により上記可視データ部分の内容および上記所定の文言が表示された後に、署名を実行するか否かの指令が入力される署名実行指令入力手段をさらに備えたことを特徴とする請求項６〜９のいずれかに記載の電子署名装置。
【請求項１１】
不可視データを含み得る構造化文書に対して電子署名を行うための電子署名方法であって、
上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換する可視データ変換ステップと、
上記可視データ部分の内容を表示する表示ステップと、
上記可視データ変換ステップにより得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成する第１の電子署名生成ステップと、
上記可視データ変換ステップにより得られた上記イメージデータと、上記第１の電子署名生成ステップにより得られた第１の電子署名とを結合して１つのファイルを生成する第１の結合ステップと、
元の上記構造化文書と、上記第１の結合ステップにより得られた上記ファイルとを結合して１つのファイルにする第２の結合ステップと、
上記第２の結合ステップにより得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成する第２の電子署名生成ステップと、
上記第２の結合ステップにより得られた上記ファイルと、上記第２の電子署名生成ステップにより得られた上記第２の電子署名とを結合して１つのファイルを生成する第３の結合ステップと、
上記第３の結合ステップにより得られた上記ファイルを出力する出力ステップと
を備え、
上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う
ことを特徴とする電子署名方法。
【請求項１２】
不可視データを含み得る構造化文書に対して電子署名を行うための電子署名方法であって、
上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージデータファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加する可視データ変換ステップと、
上記可視データ部分の内容を上記所定の文言とともに表示する表示ステップと、
元の上記構造化文書と、可視データ変換手段により得られたイメージデータファイルとを結合して１つのファイルにする第１の結合ステップと、
上記第１の結合ステップにより得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成する電子署名生成ステップと、
上記第１の結合ステップにより得られた上記ファイルと、上記電子署名生成ステップにより得られた上記電子署名とを結合して１つのファイルを生成する第２の結合ステップと、
上記第２の結合ステップにより得られた上記ファイルを出力する出力ステップと
を備え、
上記所定の文言により、署名対象範囲の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う
ことを特徴とする電子署名方法。
【請求項１３】
不可視データを含み得る構造化文書に対して電子署名を行うための電子署名プログラムであって、
上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換する可視データ変換ステップと、
上記可視データ部分の内容を表示する表示ステップと、
上記可視データ変換ステップにより得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成する第１の電子署名生成ステップと、
上記可視データ変換ステップにより得られた上記イメージデータと、上記第１の電子署名生成ステップにより得られた第１の電子署名とを結合して１つのファイルを生成する第１の結合ステップと、
元の上記構造化文書と、上記第１の結合ステップにより得られた上記ファイルとを結合して１つのファイルにする第２の結合ステップと、
上記第２の結合ステップにより得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成する第２の電子署名生成ステップと、
上記第２の結合ステップにより得られた上記ファイルと、上記第２の電子署名生成ステップにより得られた上記第２の電子署名とを結合して１つのファイルを生成する第３の結合ステップと、
上記第３の結合ステップにより得られた上記ファイルを出力する出力ステップと
をコンピュータに実行させるための電子署名プログラムであって、
上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う
ことを特徴とする電子署名プログラム。
【請求項１４】
不可視データを含み得る構造化文書に対して電子署名を行うための電子署名プログラムであって、
上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージデータファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加する可視データ変換ステップと、
上記可視データ部分の内容を上記所定の文言とともに表示する表示ステップと、
元の上記構造化文書と、可視データ変換手段により得られたイメージデータファイルとを結合して１つのファイルにする第１の結合ステップと、
上記第１の結合ステップにより得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成する電子署名生成ステップと、
上記第１の結合ステップにより得られた上記ファイルと、上記電子署名生成ステップにより得られた上記電子署名とを結合して１つのファイルを生成する第２の結合ステップと、
上記第２の結合ステップにより得られた上記ファイルを出力する出力ステップと
をコンピュータに実行させるための電子署名プログラムであって、
上記所定の文言により、署名対象範囲の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う
ことを特徴とする電子署名プログラム。
【請求項１５】
不可視データを含み得る構造化文書に対して電子署名を行うための電子署名プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
上記電子署名プログラムが、
上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換する可視データ変換ステップと、
上記可視データ部分の内容を表示する表示ステップと、
上記可視データ変換ステップにより得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成する第１の電子署名生成ステップと、
上記可視データ変換ステップにより得られた上記イメージデータと、上記第１の電子署名生成ステップにより得られた第１の電子署名とを結合して１つのファイルを生成する第１の結合ステップと、
元の上記構造化文書と、上記第１の結合ステップにより得られた上記ファイルとを結合して１つのファイルにする第２の結合ステップと、
上記第２の結合ステップにより得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成する第２の電子署名生成ステップと、
上記第２の結合ステップにより得られた上記ファイルと、第２の電子署名生成ステップにより得られた上記第２の電子署名とを結合して１つのファイルを生成する第３の結合ステップと、
上記第３の結合ステップにより得られた上記ファイルを出力する出力ステップと
をコンピュータに実行させるための電子署名プログラムであって、
上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う
ことを特徴とする電子署名プログラムを記録した記録媒体。
【請求項１６】
不可視データを含み得る構造化文書に対して電子署名を行うための電子署名プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
上記電子署名プログラムが、
上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージデータファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加する可視データ変換ステップと、
上記可視データ部分の内容を上記所定の文言とともに表示する表示ステップと、
元の上記構造化文書と、可視データ変換手段により得られたイメージデータファイルとを結合して１つのファイルにする第１の結合ステップと、
上記第１の結合ステップにより得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成する電子署名生成ステップと、
上記第１の結合ステップにより得られた上記ファイルと、上記電子署名生成ステップにより得られた上記電子署名とを結合して１つのファイルを生成する第２の結合ステップと、
上記第２の結合ステップにより得られた上記ファイルを出力する出力ステップと
をコンピュータに実行させるための電子署名プログラムであって、
上記所定の文言により、署名対象範囲の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う
ことを特徴とする電子署名プログラムを記録した記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、コンピュータシステム等を用いて、構造化文書に電子署名を付加するための電子署名装置、電子署名方法、電子署名プログラムおよび電子署名プログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
近年、情報化社会がめざましい発展をとげ、それに伴って、ペーパーレス化が急速な勢いで進んでいる。それにより、あらゆる文書が電子化され、従来においては紙の文書に署名捺印をしていた契約書のような文書まで電子化されつつあるため、従来の署名捺印の意義に相当する電子署名と呼ばれる技術の開発がなされている。電子署名とは、文書の署名者が本人であることと、当該文書が改ざんされていないことを証明するための検証用データのことである。
【０００３】
図８は、従来の電子署名装置の構成を示したものである。図において、１００１は、署名を付与したい文書を作成する文書作成手段であり、１００２は、当該文書をこの装置で作成せずに、外部から入力するための文書入力部、１００３は、文書作成部１００１または文書入力部１００２により得られた文書を所定のハッシュ関数を用いて圧縮処理を行う圧縮部、１００４は、圧縮された文書を署名者が所有する秘密鍵で暗号化して電子署名を生成する電子署名生成部である。１００５は、文書作成部１００１または文書入力部１００２により得られた元の文書と、電子署名生成部１００４により得られた電子署名とを結合して１つのファイルを生成する結合部である。１００６は、結合部１００５により得られたファイルを出力する出力部である。１００７は、種々のファイル等の表示を行うディスプレイ装置等から構成された表示部である。また、１００８は、自分以外の他のユーザから、電子署名が付与された文書が送信されてきた場合に、それが入力される入力部、１００９は入力部１００８に入力された文書のうちの電子署名部分を、署名者の秘密鍵と対になっている公開鍵により復号する復号部である（入力部１００８に入力された文書のうちの電子署名を付与する対象となった元の文書の部分は、圧縮部１００３により圧縮処理されている。）。１０１０は、入力部１００８に入力されて圧縮部１００３により圧縮された文書と、入力部１００８に入力されて復号部１００９により得られた復号済ファイルとを比較して、署名が本人によるものか否か、および、改ざんされていないか否かを検証する検証部である。
【０００４】
図９は、署名者側、認証者側での電子署名のファイルの流れについて説明した図である。図８および図９を用いて、従来の電子署名の処理の流れについて簡単に説明する。まず、はじめに、署名者の動作について説明する。署名者は、署名を付与したい文書であるファイルＡ１００を文書入力部１００２または文書作成部１００１により得る。次に、ファイルＡ１００に、圧縮部１００３により、所定のハッシュ関数を用いてファイルの圧縮処理を行い、メッセージダイジェスト（圧縮済ファイル）１０１を作成する。次に、電子署名生成部１００４により、メッセージダイジェスト（圧縮済ファイル）１０１を、署名者が所有する秘密鍵を用いて暗号化し、ファイルＢ１０２を生成する。このファイルＢが電子署名と呼ばれるものである。署名者は、結合部１００５により、署名が付与された文書として、元のファイルＡ１００のコピーと、ファイルＢ（電子署名）１０２のコピーとを結合させて１つのファイルとし、出力部１００６を介して認証者側に送信する。
【０００５】
次に、認証者の動作について説明する。認証者は、ファイルＡのコピー１０３とファイルＢ（電子署名）のコピー１０４とを入力部１００８により受信すると、まず、ファイルＡのコピー１０３に対して、署名者がファイルＡ１００の圧縮に用いたものと同一のハッシュ関数を用いて圧縮部１００３により圧縮処理を行い、メッセージダイジェスト（圧縮済ファイル）１０５を生成する。次に、認証者は、復号部１００９により、ファイルＢ（電子署名）のコピー１０４を、認証者が所有する公開鍵を用いて復号し、復号済ファイル１０６を生成する。次に、認証者は、メッセージダイジェスト（圧縮済ファイル）１０５と復号済ファイル１０６とを比較して、両者の内容が一致していれば、ファイルＡ１０３が署名者本人によって確かに署名されたものであり、かつ、改ざんされていないものであることが証明される。
【０００６】
また、認証の別の方法として、署名者が、元の文書と電子署名とを送信する際に、電子証明書データを添付して送信すれば、インターネット等の通信網を介して、電子証明書を発行した認証局の検証用サーバに接続して、当該電子証明書データの有効性を検証し、認証局の検証用サーバからの回答に基づいて、署名者の本人確認および改ざんの有無を証明するようにしてもよい。
【０００７】
【発明が解決しようとする課題】
以上が、電子署名の基本的概念であるが、ＰＤＦ文書（アドビシステムズ社の登録商標）やＷｏｒｄ文書（マイクロソフト社の登録商標）等においては、ファイルＡが、図１０に示すように、マクロ等を含む不可視データ１００ａを含むファイルであることがある。この不可視データ１００ａは、通常操作だけでは表示されず、特定の操作をしないと可視または確認することができないものである。しかしながら、署名者は、通常操作で画面に表示される可視データ１００ｂのみでファイル内容を判断して、ファイルＡ１００全体を対象にした電子署名を行ってしまう可能性がある。
【０００８】
万一、不可視データ１００ａに係争の原因となるデータがあった場合には、係争時において、本人の意思による署名対象範囲が、不可視データ１００ａを含んでいるか否かを特定することは、非常に困難な状況となることが推定される。
【０００９】
電子署名法は、本人の意思による電磁媒体への署名を紙媒体の押印やサインと同様に扱う法律であるが、紙媒体では、通常、不可視データは扱えないため、押印やサインの範囲を容易に特定できることから、電磁媒体特有の問題解決が必要となっている。
【００１０】
本発明は、かかる問題点を解決するためになされたものであり、署名者の署名対象範囲の明確な特定が可能な電子署名装置、電子署名方法、電子署名プログラム及び電子署名プログラムを記録した記録媒体を得ることを目的とする。
【００１１】
【課題を解決するための手段】
この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名装置であって、上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換する可視データ変換手段と、上記可視データ部分の内容を表示する表示手段と、上記可視データ変換手段により得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成する第１の電子署名生成手段と、上記可視データ変換手段により得られた上記イメージデータと、上記第１の電子署名生成手段により得られた第１の電子署名とを結合して１つのファイルを生成する第１の結合手段と、元の上記構造化文書と、上記第１の結合手段により得られた上記ファイルとを結合して１つのファイルにする第２の結合手段と、上記第２の結合手段により得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成する第２の電子署名生成手段と、上記第２の結合手段により得られた上記ファイルと、第２の電子署名生成手段により得られた上記第２の電子署名とを結合して１つのファイルを生成する第３の結合手段と、上記第３の結合手段により得られた上記ファイルを出力する出力手段とを備え、上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う電子署名装置である。
【００１２】
上記第１の電子署名生成手段が、上記可視データ変換手段により得られた上記イメージデータの圧縮処理を行い、当該圧縮処理の後に、上記暗号化を行うとともに、上記第２の電子署名生成手段が、上記第２の結合手段により得られた上記ファイルの圧縮処理を行い、当該圧縮処理の後に、上記暗号化を行う。
【００１３】
また、上記第１の秘密鍵と上記第２の秘密鍵が同一である。
【００１４】
また、上記第１の秘密鍵と上記第２の秘密鍵が異なる。
【００１５】
また、上記表示手段により上記可視データ部分の内容が表示された後に、署名を実行するか否かの指令が入力される署名実行指令入力手段をさらに備えている。
【００１６】
また、この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名装置であって、上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加する可視データ変換手段と、上記可視データ部分の内容を上記所定の文言とともに表示する表示手段と、元の上記構造化文書と、可視データ変換手段により得られたイメージデータファイルとを結合して１つのファイルにする第１の結合手段と、上記第１の結合手段により得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成する電子署名生成手段と、上記第１の結合手段により得られた上記ファイルと、上記電子署名生成手段により得られた上記電子署名とを結合して１つのファイルを生成する第２の結合手段と、上記第２の結合手段により得られた上記ファイルを出力する出力手段とを備え、上記所定の文言により、署名対象範囲の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う電子署名装置である。
【００１７】
上記電子署名生成手段が、上記第１の結合手段により得られた上記ファイルの圧縮処理を行い、上記圧縮処理の後に、上記暗号化を行う。
【００１８】
また、上記可視データ変換手段が、上記可視データ部分を抽出して、当該可視データに上記所定の文言データを追加した後に、イメージデータに変換する。
【００１９】
また、上記可視データ変換手段が、上記可視データ部分を抽出してイメージデータに変換してイメージデータファイルを生成するとともに、上記所定の文言データから他の１つのイメージデータファイルを生成して、それらのイメージデータファイルを結合させて１つのイメージデータファイルを生成する。
【００２０】
また、上記表示手段により上記可視データ部分の内容および上記所定の文言が表示された後に、署名を実行するか否かの指令が入力される署名実行指令入力手段をさらに備えている。
【００２１】
また、この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名方法であって、上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換する可視データ変換ステップと、上記可視データ部分の内容を表示する表示ステップと、上記可視データ変換ステップにより得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成する第１の電子署名生成ステップと、上記可視データ変換ステップにより得られた上記イメージデータと、上記第１の電子署名生成ステップにより得られた第１の電子署名とを結合して１つのファイルを生成する第１の結合ステップと、元の上記構造化文書と、上記第１の結合ステップにより得られた上記ファイルとを結合して１つのファイルにする第２の結合ステップと、上記第２の結合ステップにより得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成する第２の電子署名生成ステップと、上記第２の結合ステップにより得られた上記ファイルと、第２の電子署名生成ステップにより得られた上記第２の電子署名とを結合して１つのファイルを生成する第３の結合ステップと、上記第３の結合ステップにより得られた上記ファイルを出力する出力ステップとを備え、上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う電子署名方法である。
【００２２】
この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名方法であって、上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージデータファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加する可視データ変換ステップと、上記可視データ部分の内容を上記所定の文言とともに表示する表示ステップと、元の上記構造化文書と、可視データ変換手段により得られたイメージデータファイルとを結合して１つのファイルにする第１の結合ステップと、上記第１の結合ステップにより得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成する電子署名生成ステップと、上記第１の結合ステップにより得られた上記ファイルと、上記電子署名生成ステップにより得られた上記電子署名とを結合して１つのファイルを生成する第２の結合ステップと、上記第２の結合ステップにより得られた上記ファイルを出力する出力ステップとを備え、上記所定の文言により、署名対象範囲の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う電子署名方法である。
【００２３】
また、この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名プログラムであって、上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換する可視データ変換ステップと、上記可視データ部分の内容を表示する表示ステップと、上記可視データ変換ステップにより得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成する第１の電子署名生成ステップと、上記可視データ変換ステップにより得られた上記イメージデータと、上記第１の電子署名生成ステップにより得られた第１の電子署名とを結合して１つのファイルを生成する第１の結合ステップと、元の上記構造化文書と、上記第１の結合ステップにより得られた上記ファイルとを結合して１つのファイルにする第２の結合ステップと、上記第２の結合ステップにより得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成する第２の電子署名生成ステップと、上記第２の結合ステップにより得られた上記ファイルと、第２の電子署名生成ステップにより得られた上記第２の電子署名とを結合して１つのファイルを生成する第３の結合ステップと、上記第３の結合ステップにより得られた上記ファイルを出力する出力ステップとをコンピュータに実行させるための電子署名プログラムであって、上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う電子署名プログラムである。
【００２４】
この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名プログラムであって、上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージデータファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加する可視データ変換ステップと、上記可視データ部分の内容を上記所定の文言とともに表示する表示ステップと、元の上記構造化文書と、可視データ変換手段により得られたイメージデータファイルとを結合して１つのファイルにする第１の結合ステップと、上記第１の結合ステップにより得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成する電子署名生成ステップと、上記第１の結合ステップにより得られた上記ファイルと、上記電子署名生成ステップにより得られた上記電子署名とを結合して１つのファイルを生成する第２の結合ステップと、上記第２の結合ステップにより得られた上記ファイルを出力する出力ステップとをコンピュータに実行させるための電子署名プログラムであって、上記所定の文言により、署名対象範囲の特定の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う電子署名プログラムである。
【００２５】
また、この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名プログラムを記録したコンピュータ読み取り可能な記録媒体であって、上記電子署名プログラムが、上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換する可視データ変換ステップと、上記可視データ部分の内容を表示する表示ステップと、上記可視データ変換ステップにより得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成する第１の電子署名生成ステップと、上記可視データ変換ステップにより得られた上記イメージデータと、上記第１の電子署名生成ステップにより得られた第１の電子署名とを結合して１つのファイルを生成する第１の結合ステップと、元の上記構造化文書と、上記第１の結合ステップにより得られた上記ファイルとを結合して１つのファイルにする第２の結合ステップと、上記第２の結合ステップにより得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成する第２の電子署名生成ステップと、上記第２の結合ステップにより得られた上記ファイルと、第２の電子署名生成ステップにより得られた上記第２の電子署名とを結合して１つのファイルを生成する第３の結合ステップと、上記第３の結合ステップにより得られた上記ファイルを出力する出力ステップとをコンピュータに実行させるための電子署名プログラムであって、上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う電子署名プログラムを記録した記録媒体。
【００２６】
この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名プログラムを記録したコンピュータ読み取り可能な記録媒体であって、上記電子署名プログラムが、上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージデータファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加する可視データ変換ステップと、上記可視データ部分の内容を上記所定の文言とともに表示する表示ステップと、元の上記構造化文書と、可視データ変換手段により得られたイメージデータファイルとを結合して１つのファイルにする第１の結合ステップと、上記第１の結合ステップにより得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成する電子署名生成ステップと、上記第１の結合ステップにより得られた上記ファイルと、上記電子署名生成ステップにより得られた上記電子署名とを結合して１つのファイルを生成する第２の結合ステップと、上記第２の結合ステップにより得られた上記ファイルを出力する出力ステップとをコンピュータに実行させるための電子署名プログラムであって、上記所定の文言により、署名対象範囲の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行う電子署名プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００２７】
【発明の実施の形態】
実施の形態１．
図１は、本発明の電子署名装置の構成を示したものである。図１においては、署名を行うための構成のみを記載しており、認証を行うための構成については、記載を省略している。図１において、１は電子署名を付与したい文書（構造化文書）を作成する文書作成手段であり、２は、当該文書をこの装置で作成せずに、外部から入力するための文書入力部、３は、文書作成部１または文書入力部２により得られた文書の可視データ部分を切り出して、イメージデータに変換する可視データ変換部、４は、可視データ変換部３により得られたイメージデータを所定のハッシュ関数を用いて圧縮処理を行う第１の圧縮部、５は圧縮されたイメージデータを署名者が所有する秘密鍵で暗号化する第１の電子署名生成部である。６は、可視データ変換部３により得られたイメージデータと、第１の電子署名生成部５により得られた電子署名とを結合して１つのファイルを生成する第１の結合部である。
【００２８】
また、７は、文書作成部１または文書入力部２により得られた元の文書と、第１の結合部６により得られたファイルとを結合して１つのファイルにする第２の結合部、８は、第２の結合部７により得られたファイルを、所定のハッシュ関数を用いて圧縮処理する第２の圧縮部である。なお、ここで、第１の圧縮部４で用いるハッシュ関数と第２の圧縮部８で用いるハッシュ関数とは同じであってもよいが、その場合に限らず、異なるものを用いるようにしてもよい。９は第２の圧縮部により圧縮されたファイルを、署名者が所有する秘密鍵を用いて暗号化する第２の電子署名生成部である。なお、ここで、第１の電子署名生成部５と第２の電子署名生成部９とで用いられる秘密鍵は同一のものでもよいが、異なるものを使用するようにしてもよい。異なるものを使用する場合には、例えば、第１の電子署名生成部５においては、署名者が署名した署名対象範囲を明確に示すためであるため、法的な効果のある秘密鍵を用いて、一方、第２の電子署名生成部９においては、単に改ざんが行われていないことを確認するためであるため、改ざんチェック用の比較的簡易な秘密鍵を用いるようにしてもよい。１０は、第２の結合部により得られたファイルと、第２の電子署名生成部９により得られた電子署名とを結合して１つのファイルを生成する第３の結合部である。１１は第３の結合部１０により得られたファイルを出力する出力部、１２は種々のファイルを表示するディスプレイ装置等から構成された表示部である。
【００２９】
次に、図１〜図３を用いて動作について説明する。図２は、本発明の電子署名装置の処理の流れを示した流れ図であり、図３は、図２の各ステップにおいて生成されるファイルをそれぞれ示した説明図である。不可視データ２０ａを持つデータ構造のファイルＡ２０に対して電子署名する際、図２および図３に示すように、まず、署名者が表示部１２にファイルＡ２０を表示するとともに、表示部１２の画面に表示されている電子署名ボタン（図示せず）を押下することにより電子署名を行うことの指令を入力する（ステップＳ１）。次に、ファイルＡ２０から可視データ部分のファイルＢ２０ｂを切り出し（ステップＳ２）、可視データ変換部３により、イメージデータファイルＣ２１に変換して（ステップＳ３）、表示部１２に設けられている署名範囲確認ウインドウ１２ａ（図７参照、後述する。）にイメージデータファイルＣ２１を表示して、署名対象範囲を確認する（ステップＳ４）。このとき、署名の可否の意思確認のための入力ボタン（Ｙｅｓ，Ｎｏ）が署名範囲確認ウインドウ１２ａに表示されるので、署名者は、署名対象範囲の内容を確認して、署名する場合にはＹｅｓ、署名しない場合にはＮｏをクリックする（ステップＳ５）。Ｎｏの場合には、そのまま処理が終了される。Ｙｅｓの場合には、第１の圧縮部４により、所定のハッシュ関数を用いて、イメージデータファイルＣ２１のハッシュ値を算出してダイジェスト２２を生成した後に、第１の電子署名生成部５により、署名者の秘密鍵で暗号化して署名データファイルＤを生成する（ステップＳ６）。次に、第１の結合部６により、イメージデータファイルＣ２１と署名データファイルＤとを結合して、署名済みファイルＥ２４を生成する（ステップＳ７）。
【００３０】
次に、第２の結合部７により、元のファイルＡ２０に署名済みファイルＥ２４を新たなオブジェクトとして埋め込み、ファイルＡ’２５を生成する（ステップＳ８）。第２の圧縮部８により、所定のハッシュ関数を用いて、ファイルＡ’２５のハッシュ値を算出してダイジェスト２６を生成した後に、第２の電子署名生成部５により、署名者の秘密鍵で暗号化して署名データファイルＦ２７を生成する（ステップＳ９）。次に、第３の結合部１０により、ファイルＡ’２５と署名データファイルＦ２７とを結合して、署名済みファイルＧ２８を生成する（ステップＳ１０）。このようにして得られた署名済みファイルＧ２８を出力部１１から出力する。
【００３１】
なお、上記の署名範囲確認ウインドウ１２ａについて説明すれば、これは、例えば、メニューで「署名」の項目を選んで表示させるようにする。図７は、署名範囲確認ウインドウ１２ａの一例を示した説明図である。図７に示すように、ウインドウ１２ａの上段部分には、「以下の内容について署名しますか？」というメッセージとともに、Ｙｅｓ、Ｎｏを入力するためのボタンが表示されている。また、ウインドウ１２ａの下段部分には、可視データ（ファイルＢ）２０ｂがイメージ表示されている。
【００３２】
以上のように、本実施の形態においては、署名対象範囲を、不可視データを保持することが絶対的にできないイメージデータファイルの形式に変換した後に、それに対して電子署名を行うようにしたので、署名者の署名対象範囲の明確な特定を可能にすることが出来、係争時等においても、署名対象範囲の特定が容易にでき、大きな混乱をもたらすことを未然に防止することができる。また、不可視データを持つ元のファイルＡ２０のデータをすべて保持するファイルＡ’２５に対する署名も併せて行うことにより、不可視データを含む元のファイルＡ２０の改ざんを防止することができ、万一、改ざんされた場合にも、認証の際にすぐに検知することができ、さらに、不可視データ等の２次利用を可能にする。
【００３３】
なお、本実施の形態において、電子署名装置の処理の最初に署名者に対して可視部分のみ署名するか、不可視部分も含めて署名するかを確認するように構成することもできる。このとき可視部分のみ署名するとしたときのみ図２に示した処理を行うようになる。
【００３４】
なお、本発明の電子署名装置における認証方法については、従来技術で説明したいずれかの方法に準じるものとし、ここでは、その説明は省略する。
【００３５】
実施の形態２．
上述の実施の形態においては、２度の署名処理が必要となる。このため、本実施の形態においては、ユーザ操作を簡単にするために、１度の署名行為により２つのファイルに署名を行う処理について説明する。図４は、本発明の電子署名装置の構成を示したものである。図４においては、署名を行うための構成のみを記載しており、認証を行うための構成については、記載を省略している。図４において、４１は電子署名を付与したい文書を作成する文書作成手段であり、４２は、当該文書をこの装置で作成せずに、外部から入力するための文書入力部、４３は、文書作成部１または文書入力部２により得られた文書の可視データ部分を切り出して、後述の所定の文言を追記した上で、イメージデータに変換する可視データ変換部、４４は、可視データ変換部４３により切り出された可視データ部分に追記するべき文言（例えば、「署名対象範囲は、この可視データ部分です。」など）を記憶している証明文言記憶部である。４５は、文書作成部１または文書入力部２により得られた元の文書と、可視データ変換部４３により得られたイメージデータファイルとを結合して１つのファイルにする第１の結合部、４６は、第１の結合部４５により得られたファイルを、所定のハッシュ関数を用いて圧縮処理する圧縮部、４７は圧縮部４６により圧縮されたファイルを、署名者が所有する秘密鍵を用いて暗号化する電子署名生成部である。４８は、第１の結合部４５により得られたファイルと、電子署名生成部４７により得られた電子署名とを結合して１つのファイルを生成する第２の結合部である。４９は第２の結合部４８により得られたファイルを出力する出力部、５０は種々のファイルを表示するディスプレイ装置等から構成された表示部である。
【００３６】
次に、図４〜図６を用いて動作について説明する。図５は、本実施の形態の電子署名装置の処理の流れを示した流れ図であり、図６は、図５の各ステップにおいて生成されるファイルをそれぞれ示した説明図である。不可視データ６０ａを持つデータ構造のファイルＡ６０に対して電子署名する際、図５および図６に示すように、まず、署名者が表示部５０にファイルＡ６０を表示するとともに、表示部５０の画面に表示されている電子署名ボタン（図示せず）を押下することにより電子署名を行うことの指令を入力する（ステップＳ２１）。次に、可視データ変換部４３により、ファイルＡ６０から可視データ部分のファイルＢ６０ｂを切り出し（ステップＳ２２）、証明文言記憶部４４に記憶されている、署名対象範囲が可視データ部分のみであることを証明する文言を追記した上で、イメージデータファイルＣ２１に変換して（ステップＳ２３）、表示部５０に設けられている署名範囲確認ウインドウ１２ａ（図７参照）にイメージデータファイルＣ６１を表示して、署名対象範囲を確認する（ステップＳ２４）。このとき、署名の可否の意思確認のための入力ボタン（Ｙｅｓ，Ｎｏ）が表示部５０の画面に表示されるので、署名者は、署名対象範囲の内容を確認して、署名する場合にはＹｅｓ、署名しない場合にはＮｏをクリックする（ステップＳ２５）。Ｎｏの場合には、そのまま処理が終了される。Ｙｅｓの場合には、第１の結合部４５により、元のファイルＡ６０に、上記の文言入りのイメージデータファイルＣ６１を新たなオブジェクトとして埋め込み、ファイルＡ’６２を生成する（ステップＳ２６）。次に、圧縮部４６により、所定のハッシュ関数を用いて、ファイルＡ’６２のハッシュ値を算出してダイジェスト６３を生成した後に、電子署名生成部４７により、署名者の秘密鍵で暗号化して署名データファイルＤ６４を生成する（ステップＳ２７）。次に、第２の結合部４８により、ファイルＡ’６２と署名データファイルＤ６４とを結合して、署名済みファイルＥ６５を生成する（ステップＳ２８）。このようにして得られた署名済みファイルＥ６５を出力部４９から出力する。
【００３７】
以上のように、本実施の形態においては、不可視データを保持できないイメージデータファイルＣに、署名対象範囲が可視データ部分のみであることを証明する文言をいれるとともに、イメージデータファイルＣを元のファイルＡに埋め込んだファイルＡ’に電子署名を行うことで、署名者の署名対象範囲の明確な特定を可能にする。また、不可視データを持つ元のファイルＡのデータをすべて保持するファイルＡ’に対する署名を行うことにより、不可視データを含む元のファイルＡの改ざんを防止することができるとともに、不可視データ等の２次利用を可能にする。
【００３８】
なお、本実施の形態において、電子署名装置の処理の最初に署名者に対して可視部分のみ署名するか、不可視部分も含めて署名するかを確認するように構成することもできる。このとき可視部分のみ署名するとしたときのみ図５に示した処理を行うようになる。
【００３９】
なお、本実施の形態２においては、文言をイメージデータとしてイメージデータファイルＣ中に追記する例について説明したが、この場合に限らず、文言の部分だけを１つのオブジェクトにして、ファイルＣに添付するようにしてもよい。この場合にも、同様の効果が得られる。
【００４０】
また、本実施の形態２においては、文言を証明文言記憶部４４に記憶しておく例について説明したが、この場合に限らず、文言入力手段を設けておいて、ユーザが外部から入力するようにしてもよい。さらに、ユーザにより証明文言記憶部４４内の文言の修正・削除・追加・更新および蓄積が行えるようにしてもよい。
【００４１】
また、上記実施の形態１及び２においては、電子署名を行う対象となる文書を外部から入力するか、もしくは、作成するかのいずれかにより得る例について説明したが、その場合に限らず、このような契約書のような文書は同一の様式のものを用いることが多いと想定されるため、過去に入力または作成した文書を所定の記憶手段に蓄積しておき、そこから読み出して、電子署名を行うようにしてもよい。
【００４２】
また、上記実施の形態１及び２においては、暗号化の前に圧縮処理を行う例について説明したが、この場合に限らず、圧縮処理を行わずに暗号化を行うようにしてもよい。
【００４３】
【発明の効果】
この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名装置、方法、プログラムおよびそれを記録した記録媒体であって、上記構造化文書の署名対象範囲となる可視データ部分を抽出して、イメージデータに変換して、上記可視データ部分の内容を表示して、変換により得られた上記イメージデータを所定の第１の秘密鍵で暗号化して第１の電子署名を生成し、変換により得られた上記イメージデータと、暗号化により得られた第１の電子署名とを結合して１つのファイルを生成し、元の上記構造化文書と当該ファイルとを結合して１つのファイルにし、結合により得られた上記ファイルを、所定の第２の秘密鍵を用いて暗号化して第２の電子署名を生成し、上記ファイルと上記第２の電子署名とを結合して１つのファイルを生成し、結合により得られた上記ファイルを出力するようにして、上記第１の電子署名により、署名者の本人確認と上記構造化文書における署名対象範囲の証明を行うとともに、上記第２の電子署名により、不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行うようにしたので、署名対象範囲の明確な特定が可能になる。
【００４４】
また、この発明は、不可視データを含み得る構造化文書に対して電子署名を行うための電子署名装置、方法、プログラムおよびそれを記録した記録媒体であって、上記構造化文書の署名対象範囲である可視データ部分を抽出して、イメージデータに変換してイメージデータファイルを生成するとともに、当該生成のときに、上記可視データ部分のみが署名対象範囲であることを示す所定の文言データを追加して、上記可視データ部分の内容を上記所定の文言とともに表示して、元の上記構造化文書と、可視データ変換手段により得られたイメージデータファイルとを結合して１つのファイルにし、当該結合により得られた上記ファイルを、所定の秘密鍵を用いて暗号化して電子署名を生成し、上記結合により得られた上記ファイルと上記電子署名とを結合して１つのファイルを生成し、当該結合により得られた上記ファイルを出力するようにしたので、上記所定の文言により、署名対象範囲の証明を行うとともに、上記電子署名により、署名者の本人確認と不可視データ部分を含む上記構造化文書全体の改ざんの有無の証明を行うようにしたので、署名対象範囲の明確な特定が可能になる。
【図面の簡単な説明】
【図１】  本発明の実施の形態１による電子署名装置の構成を示したブロック図である。
【図２】  本発明の実施の形態１による電子署名装置の処理の流れを示した流れ図である。
【図３】  図２の各ステップで生成される各ファイルを図示した説明図である。
【図４】  本発明の実施の形態２による電子署名装置の構成を示したブロック図である。
【図５】  本発明の実施の形態２による電子署名装置の処理の流れを示した流れ図である。
【図６】  図５の各ステップで生成される各ファイルを図示した説明図である。
【図７】  本発明の実施の形態１による電子署名装置の表示部に表示される署名範囲確認ウインドウの一例を示した説明図である。
【図８】  従来の電子署名装置の構成を示したブロック図である。
【図９】  従来の電子署名装置の処理の流れを示した説明図である。
【図１０】  従来の電子署名装置において、不可視データを含む文書に対して電子署名を行った例を示した説明図である。
【符号の説明】
１，４１，１００１  文書作成部、２，４２，１００２  文書入力部、３，４３  可視データ変換部、４  第１の圧縮部、５  第１の電子署名生成部、６，４５  第１の結合部、７，４８  第２の結合部、８  第２の圧縮部、９  第２の電子署名生成部、１０  第３の結合部、１１，４９，１００６  出力部、１２，５０，１００７  表示部、４４  証明文言記憶部、４６，１００３  圧縮部、４７，１００４  電子署名生成部、１００５  結合部、１００８  入力部、１００９復号部、１０１０  検証部。
【図１】
0003638910.tif 000002
【図２】
0003638910.tif 000003
【図３】
0003638910.tif 000004
【図４】
0003638910.tif 000005
【図５】
0003638910.tif 000006
【図６】
0003638910.tif 000007
【図７】
0003638910.tif 000008
【図８】
0003638910.tif 000009
【図９】
0003638910.tif 000010
【図１０】
0003638910.tif 000011