(57)【要約】【課題】署名者が意図した文書に正しく署名されたことを署名者自身で確認することができるディジタル署名方法を提供すること。【解決手段】第１の装置で作成した署名対象文書のハッシュ値を算出するステップと、第１の装置で署名対象文書に対する付加情報を取得し、付加情報と署名対象文書のハッシュ値とを第２の装置に送信するステップと、第２の装置において受信した付加情報を出力し、署名者に確認させ、署名者の確認応答指示に基づき署名対象文書のハッシュ値と付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データを第１の装置に送信するのステップと、第１の装置において付加情報と第２の装置から受信したディジタル署名データとの対を署名対象文書に付加した署名付き文書として保管するステップとを備える。【選択図】　　　　図２
2004023649.tif 000002
【特許請求の範囲】
【請求項１】
第１の装置で作成または保管している文書のディジタル署名を生成する方法であって、
第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、
第１の装置で署名対象文書に対する付加情報を取得し、取得した付加情報と前記署名対象文書のハッシュ値とを第２の装置に送信する第２のステップと、
第２の装置において第１の装置から受信した付加情報を出力し、第２の装置を所有する署名者に確認させ、署名者の確認応答指示に基づき署名対象文書のハッシュ値と付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データを第１の装置に送信する第３のステップと、
第１の装置において前記付加情報と前記第２の装置から受信したディジタル署名データとの対を署名対象文書に付加した署名付き文書として保管する第４のステップと
を備えることを特徴とするディジタル署名方法。
【請求項２】
第１の装置で作成または保管している文書のディジタル署名を生成する方法であって、
第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、
生成したハッシュ値を第２の装置に送信する第２のステップと、
第２の装置において第１の装置から受信したハッシュ値に対する付加情報を取得し、取得した付加情報と前記第１の装置から受信した署名対象文書のハッシュ値の対に対するディジタル署名データを生成し、生成したディジタル署名データと前記付加情報の対を第１の装置に送信する第３のステップと、
第１の装置において第２の装置から受信したディジタル署名データと付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップと
を備えることを特徴とするディジタル署名方法。
【請求項３】
第１の装置で作成または保管している文書のディジタル署名を生成する方法であって、
第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、
第１の装置で署名対象文書に対する第１の付加情報を取得し、取得した付加情報と前記署名対象文書のハッシュ値とを第２の装置に送信する第２のステップと、
第２の装置において第１の装置から受信した第１の付加情報を出力し、第２の装置を所有する署名者に確認させた後、第２の付加情報を取得し、署名対象文書のハッシュ値と第１および第２の付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データと第２の付加情報を第１の装置に送信する第３のステップと、
第１の装置において第２の装置から受信したディジタル署名データと第２の付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップと
を備えることを特徴とするディジタル署名方法。
【請求項４】
前記付加情報として、署名対象文書の文書名、タイトル、文書内容の特定事項、現在日時、ハッシュ値の送信先情報の少なくとも１つを用いることを特徴とする請求項１に記載のディジタル署名方法。
【請求項５】
前記付加情報として、署名対象文書の文書名、タイトル、文書内容の特定事項、現在日時の少なくとも１つを用いることを特徴とする請求項２に記載のディジタル署名方法。
【請求項６】
前記第１の付加情報として、署名対象文書の文書名、タイトル、文書内容の特定事項、現在日時、ハッシュ値の送信先情報の少なくとも１つを用い、前記第２の付加情報として、署名対象文書の文書名、タイトル、文書内容の特定事項、現在日時の少なくとも１つを用いることを特徴とする請求項３に記載のディジタル署名方法。
【請求項７】
前記第４のステップにおいて、第２の装置から受信したディジタル署名データと第２の付加情報の対のディジタル署名データを生成し、生成したディジタル署名データと第２の付加情報の対を署名対象文書に付加した署名付き文書として保管する第５のステップと
をさらに備えることを特徴とする請求項３に記載のディジタル署名方法。
【請求項８】
前記第３のステップおよび第４のステップでディジタル署名の生成に用いる鍵を１つの署名鍵を２つに分割した鍵で構成したことを特徴とする請求項７に記載のディジタル署名方法。
【請求項９】
（Ｗｅｂサーバから携帯機器等の第３の装置で付加情報を確認させる）
第１の装置で作成または保管している文書のディジタル署名を生成する方法であって、
第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、
第１の装置で署名対象文書に対する付加情報を取得し、取得した付加情報と前記署名対象文書のハッシュ値とを第２の装置に送信する第２のステップと、
第２の装置において第１の受信したハッシュ値と付加情報のうち付加情報を第３の装置に送信し、第３の装置を所有する署名者に付加情報を確認させ、確認結果の応答指示に基づき署名対象文書のハッシュ値と付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データを第１の装置に送信する第３のステップと、
第１の装置において第２の装置から受信したディジタル署名データと前記付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップと
を備えることを特徴とするディジタル署名方法。
【請求項１０】
第１の装置で作成または保管している文書のディジタル署名を生成する方法であって、
第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、
生成したハッシュ値を第２の装置に送信する第２のステップと、
第２の装置において受信したハッシュ値に対する付加情報の転送要求を第３の装置に送信し、第３の装置から付加情報を取得し、取得した付加情報と前記第１の装置から受信した署名対象文書ハッシュ値の対に対するディジタル署名データを生成し、生成したディジタル署名データと前記付加情報の対を第１の装置に送信する第３のステップと、
第１の装置において第２の装置から受信したディジタル署名データと付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップと
を備えることを特徴とするディジタル署名方法。
【請求項１１】
第１の装置で作成または保管している文書のディジタル署名を生成する方法であって、
第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、
第１の装置で署名対象文書に対する第１の付加情報を取得し、取得した第１の付加情報と前記ハッシュ値とを第２の装置に送信する第２のステップと、
第２の装置において第１の装置から受信したハッシュ値と第１の付加情報のうち第１の付加情報を第３の装置に送信し、第３の装置を所有する署名者に確認させる第３のステップと、
第３の装置において第２の装置から受信した第１の付加情報を出力し、第３の装置を所有する署名者から第１の付加情報に確認応答指示を受けた後、第２の付加情報を取得し、第２の装置に送信する第４のステップと、
第２の装置において署名対象文書のハッシュ値と第１および第２の付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データと第２の付加情報を第１の装置に送信する第５のステップと、
第１の装置において第２の装置から受信したディジタル署名データと第２の付加情報の対を署名対象文書に付加した署名付き文書として保管する第６のステップと
を備えることを特徴とするディジタル署名方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パーソナルコンピュータ等の第１の装置で作成または保管している文書のディジタル署名を第２の装置と共同して生成するディジタル署名方法に関するものである。
【０００２】
【従来の技術】
周知のように、ディジタル署名は判子（印鑑）と同じ効力を持ち、ディジタル署名に使う鍵の保管は非常に重要である。このため、従来から、暗号化して鍵を保存したり、署名者自身が所持するスマートカードに保存し、ディジタル署名自体も該スマートカード内で行うなど、鍵の保存や利用にはさまざまな工夫がなされている。
ディジタル署名を生成するには複雑な計算が必要であり、ディジタル署名の生成はコンピュータやスマートカードが行っている。これは、署名者は自分が使っているコンピュータを信頼しており、署名者が意図した文書にコンピュータが署名したものと、署名者が信用していることを前提にしている。
【０００３】
しかし、従来においては、署名者が意図した文書にコンピュータが署名しているか否かを署名者が直接確認できるように構成されていない。例えば、コンピュータにウィルスが仕掛けられ、意図した文書とは異なる文書や全く知らない文書に知らない間に署名されていたとしても、このことを署名者が直接確認できるように構成されていない。これはスマートカードを使っていても同じである。すなわち、スマートカードに送られるデータが知らない間にすりかえられ、結果的に本人が知らない間にディジタル署名が偽造されたとしても、このことを署名者が直接確認できるように構成されていない。
【０００４】
情報技術の進歩に伴い、企業間取引等で使用される契約書や請求書などの文書が電子化されて送受されるようになれば、ディジタル署名の偽造による被害は甚大なものとなり、偽造に対する対策は非常に重要になる。また、このようなことが起きる可能性が存在するということはディジタル署名の利用、ひいては電子文書の扱いに大きな障害となる。
【０００５】
本発明の目的は、署名者が意図した文書に正しく署名されたことを署名者自身で確認することができるディジタル署名方法を提供することにある。
【０００６】
【課題を達成するための手段】
上記目的を達成するために、本発明に係るディジタル署名方法は、第１の装置で作成または保管している文書のディジタル署名を生成する方法であって、
第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、第１の装置で署名対象文書に対する付加情報を取得し、取得した付加情報と前記署名対象文書のハッシュ値とを第２の装置に送信する第２のステップと、第２の装置において第１の装置から受信した付加情報を出力し、第２の装置を所有する署名者に確認させ、署名者の確認応答指示に基づき署名対象文書のハッシュ値と付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データを第１の装置に送信する第３のステップと、第１の装置において前記付加情報と前記第２の装置から受信したディジタル署名データとの対を署名対象文書に付加した署名付き文書として保管する第４のステップとを備えることを特徴とする。
【０００７】
また、第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、生成したハッシュ値を第２の装置に送信する第２のステップと、第２の装置において第１の装置から受信したハッシュ値に対する付加情報を取得し、取得した付加情報と前記第１の装置から受信した署名対象文書のハッシュ値の対に対するディジタル署名データを生成し、生成したディジタル署名データと前記付加情報の対を第１の装置に送信する第３のステップと、第１の装置において第２の装置から受信したディジタル署名データと付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップとを備えることを特徴とする。
【０００８】
また、第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、第１の装置で署名対象文書に対する第１の付加情報を取得し、取得した付加情報と前記署名対象文書のハッシュ値とを第２の装置に送信する第２のステップと、第２の装置において第１の装置から受信した第１の付加情報を出力し、第２の装置を所有する署名者に確認させた後、第２の付加情報を取得し、署名対象文書のハッシュ値と第１および第２の付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データと第２の付加情報を第１の装置に送信する第３のステップと、第１の装置において第２の装置から受信したディジタル署名データと第２の付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップとを備えることを特徴とする。
【０００９】
また、前記付加情報として、署名対象文書の文書名、タイトル、文書内容の特定事項、現在日時、ハッシュ値の送信先情報の少なくとも１つを用いることを特徴とする。
また、前記付加情報として、署名対象文書の文書名、タイトル、文書内容の特定事項、現在日時の少なくとも１つを用いることを特徴とする。
また、前記第１の付加情報として、署名対象文書の文書名、タイトル、文書内容の特定事項、現在日時、ハッシュ値の送信先情報の少なくとも１つを用い、前記第２の付加情報として、署名対象文書の文書名、タイトル、文書内容の特定事項、現在日時の少なくとも１つを用いることを特徴とする。
また、前記第４のステップにおいて、第２の装置から受信したディジタル署名データと第２の付加情報の対のディジタル署名データを生成し、生成したディジタル署名データと第２の付加情報の対を署名対象文書に付加した署名付き文書として保管する第５のステップとをさらに備えることを特徴とする。
また、前記第３のステップおよび第４のステップでディジタル署名の生成に用いる鍵を１つの署名鍵を２つに分割した鍵で構成したことを特徴とする。
【００１０】
また、第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、第１の装置で署名対象文書に対する付加情報を取得し、取得した付加情報と前記署名対象文書のハッシュ値とを第２の装置に送信する第２のステップと、第２の装置において第１の受信したハッシュ値と付加情報のうち付加情報を第３の装置に送信し、第３の装置を所有する署名者に付加情報を確認させ、確認結果の応答指示に基づき署名対象文書のハッシュ値と付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データを第１の装置に送信する第３のステップと、第１の装置において第２の装置から受信したディジタル署名データと前記付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップとを備えることを特徴とする。
【００１１】
また、第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、生成したハッシュ値を第２の装置に送信する第２のステップと、第２の装置において受信したハッシュ値に対する付加情報の転送要求を第３の装置に送信し、第３の装置から付加情報を取得し、取得した付加情報と前記第１の装置から受信した署名対象文書ハッシュ値の対に対するディジタル署名データを生成し、生成したディジタル署名データと前記付加情報の対を第１の装置に送信する第３のステップと、第１の装置において第２の装置から受信したディジタル署名データと付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップとを備えることを特徴とする。
【００１２】
また、第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、第１の装置で署名対象文書に対する第１の付加情報を取得し、取得した第１の付加情報と前記ハッシュ値とを第２の装置に送信する第２のステップと、第２の装置において第１の装置から受信したハッシュ値と第１の付加情報のうち第１の付加情報を第３の装置に送信し、第３の装置を所有する署名者に確認させる第３のステップと、第３の装置において第２の装置から受信した第１の付加情報を出力し、第３の装置を所有する署名者から第１の付加情報に確認応答指示を受けた後、第２の付加情報を取得し、第２の装置に送信する第４のステップと、第２の装置において署名対象文書のハッシュ値と第１および第２の付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データと第２の付加情報を第１の装置に送信する第５のステップと、第１の装置において第２の装置から受信したディジタル署名データと第２の付加情報の対を署名対象文書に付加した署名付き文書として保管する第６のステップとを備えることを特徴とする。
【００１３】
【発明の実施の形態】
以下、本発明に係るディジタル署名方法の実施の形態について図面を参照して詳細に説明する。
（第１の実施の形態）
図１は、本発明に係る第１の実施の形態を示すシステム構成図である。
図１に示すシステムは、署名者が署名対象文書を作成するコンピュータ１００（第１の装置）と、同じく署名者が所有するＰＤＡや携帯電話機で構成される署名機器１１０（第２の装置）とで構成され、コンピュータ１００上で稼動する文書作成プログラム１０１を使って署名者が作成した署名対象文書１０２のディジタル署名を、コンピュータ１００と署名機器１１０と共同して生成し、コンピュータ１００内の記憶装置（図示せず）に保管する。
コンピュータ１００は、署名対象文書１０２を作成するための署名生成プログラム１０３を備え、署名機器１１０の機器上署名生成プログラム１１１と協力して、付加情報のついた署名対象文書１０２の署名を生成する。１０４は署名付き文書であり、署名対象文書１０２に署名生成プログラム１０３を通じて付加情報やディジタル署名データを計算して生成される。
署名機器１１０は、携帯電話機やＰＤＡのように、所定の計算処理能力と表示能力と入力能力を持つ情報機器で構成され、コンピュータ１００に比べてウィルスの被害にかかりにくいものが望ましい。
【００１４】
１１１は機器上署名生成プログラムであり、コンピュータ１００の署名生成プログラム１０３から送られてきた署名対象文書のハッシュ値と付加情報の対１２１に対して、署名機器１１０内に予め安全に格納されている署名鍵１１２を使い、ディジタル署名を生成する。１２２は文書１０２と付加情報の対に対するディジタル署名データそれ自体である。
署名対象文書のハッシュ値と付加情報の対１２１における付加情報は、署名生成プログラム１０３がコンピュータ１００の入力装置（図示せず）から署名者が入力したものを用いる場合と、署名対象文書１０２の文書名、タイトル、文書内容の特定事項、現在日時、ハッシュ値の送信先情報の少なくとも１つを署名生成プログラム１０３が自動的に取得して用いる場合がある。
【００１５】
文書内容の特定事項としては、文書の要約や重要部分の抜粋などがある。金銭が絡む場合には、その金額や関係者の氏名などを付加情報とする。すなわち、万が一にも文書が署名者の知らない間にすりかえられて署名されてしまっても、付加情報を元に自分が意図した文書に署名したのではないと主張できるような情報を付加して署名する。
【００１６】
ここで、コンピュータ１００と署名機器１１０の接続方法は特に限定はしないが、以下の方法などを用いる。
Ｂｌｕｅｔｏｏｔｈをはじめとする無線技術を使って、コンピュータと署名機器が結ばれる。
（１）ケーブルを介して接続する。
（２）インターネットや公衆回線網のような双方が接続しているネットワークを介して接続する。この場合、通信は暗号技術などを用いて、盗聴やなりすましなどの攻撃から防御する機能を備えたものが望ましい。
【００１７】
図２は、文書作成プログラム１０１で生成した署名対象文書１０２の署名処理を行う手順を示したフローチャートである。
まず、ステップ２０１において、署名生成プログラム１０３が起動され、文書作成プログラム１０１を用いて署名者が予め作成し、記憶装置（図示せず）に格納しておいた署名対象文書１０２が指定される。なお、署名対象文書１０２は、署名者が別のコンピュータで作成したものをコンピュータ１００に転送して保管しておいたものであってもよい。
署名対象文書１０２が指定されると、署名生成プログラム１０３は当該署名対象文書１０２のハッシュ値を計算する。さらに文書名などの付加情報の入力を指示し、コンピュータ１００に付属する入力装置（図示せず）を用いて署名者が入力した文書名などの付加情報を取得する。
ここで、入力を指示した後、所定時間経過しても署名者から付加情報が入力されない場合には、例えば文書のタイトルを付加情報として取得する。また、文書種類に応じて自動的に付加情報を決める場合もある。例えば、お金の借用書の場合には借用金額と貸出者、見積書の場合は物件と見積り額、電子メール文書の場合は送信先などである。付加情報の指定の有無に関わらず、現在時刻を含めても良い。
そして、ハッシュ値と付加情報の対１２１を署名機器１１０の機器上署名生成プログラム１１１に送信する。
【００１８】
ステップ２０２では、まず機器上署名生成プログラム１１１がハッシュ値と付加情報１２１を受信する。次に付加情報を署名機器１１０の表示部（図示せず）に出力し、署名者に確認させる。付加情報を表示し、署名して良いか否かを署名者に問い合わせて確認する。確認応答の指示が得られなかった場合には、エラーを署名生成プログラム１０３に通知する。確認応答指示が署名者から得られた場合には、署名鍵１１２を使って、文書１０２のハッシュ値と付加情報の対に対するディジタル署名データ１２２を生成し、その生成したディジタル署名データ１２２を署名生成プログラム１０３に送信する。
【００１９】
ステップ２０３において、署名生成プログラム１０３はディジタル署名データ１２２を受信したならば、署名対象文書１０２にディジタル署名データ１２２を付加したものを最終的な署名付き文書１０４として生成し、コンピュータ１００内の記憶装置（図示せず）に保管する。
【００２０】
このように本実施形態においては、署名対象文書１０２の付加情報を文書作成元のコンピュータとは異なる署名機器１１０で表示して署名者自身に確認させてディジタル署名データ１２２を生成することにより、署名者が意図した署名対象文書に正しく署名したことを保証するができ、コンピュータウィルス等によるディジタルで署名の偽造を防止することができる。
また、文書名やタイトルなどの短い付加情報を署名機器１１０に表示させる構成であるため、表示文字数が限定されているＰＤＡや携帯電話機を署名機器１１０として使用することができ、ディジタル署名の安全性を安価な構成で保証することが可能になる。
【００２１】
（第２の実施の形態）
図３は、本発明のディジタル署名方法に係る第２の実施形態を示すシステム構成図であり、図１に示した実施の形態とは、付加情報を署名機器１１０から署名者が入力するようにした点が異なる。
図３において、図１の構成と異なるのは、署名生成プログラム１０３と機器上署名生成プログラム１１１とでやり取りされる情報である。
図３において、３２１は署名対象文書１０２のハッシュ値であり、３２２は付加情報、付加情報と文書１０２の対に対するディジタル署名データそれ自体である。
【００２２】
図４は、第２の実施形態における署名処理の手順を示すフローチャートである。
まず、ステップ４０１において、署名生成プログラム１０３が起動され、文書作成プログラム１０１を用いて署名者が予め作成し、記憶装置（図示せず）に格納しておいた署名対象文書１０２が指定される。なお、署名対象文書１０２は、署名者が別のコンピュータで作成したものをコンピュータ１００に転送して保管しておいたものであってもよい。
署名対象文書１０２が指定されると、署名生成プログラム１０３は署名対象文書１０２の文書ハッシュ値３２１を計算し、機器上署名生成プログラム１１１に送信する。
【００２３】
ステップ４０２では、機器上署名生成プログラム１１１が文書ハッシュ値３２１を受信し、次にキー入力などを通じて文書名などの付加情報を署名者から受付け、署名鍵１１２を使って文書ハッシュ値３２１と付加情報の対に対するディジタル署名データを生成する。この場合、キー入力された文書名などのデータだけを付加情報とするだけでなく、現在時刻を自動的に含めて付加情報としても良い。
そして、生成したディジタル署名データと付加情報との対３２２を署名生成プログラム１０３に送信する。
【００２４】
ステップ４０３では、署名生成プログラム１０３は、ディジタル署名データと付加情報の対３２２を受信し、署名対象文書１０２に対し、付加情報およびディジタル署名データを付加し、最終的な署名付き文書１０４を生成し、コンピュータ１００内の記憶装置に保管する。
この第２の実施形態においても上記第１の実施形態と同様の効果が得られる。
【００２５】
（第３の実施の形態）
上記第１の実施形態および第２の実施形態においては、コンピュータ１００および署名機器１１０のいずれか一方で付加情報を入力するように構成したが、付加情報をコンピュータ１００と署名機器１１０の双方で署名者が入力するように構成することができる。
この場合には、署名生成プログラム１０３から機器上署名生成プログラム１１１には、文書ハッシュ値とコンピュータ１００で得られた付加情報を送信する。また、機器上署名生成プログラム１１１は本付加情報を表示して署名者に署名して良いか確認する。署名しても良い旨の確認応答があったならば、次に付加情報を署名者から取得するか、現在時刻を自動的に取得し、受信した文書ハッシュ値とコンピュータ１００上で入力された付加情報と署名機器１１０で署名者が入力した付加情報の対に対するディジタル署名を生成する。
最後に、署名機器１１０上で入力された付加情報とディジタル署名データとの対を署名生成プログラム１０３に送信する。
署名生成プログラム１０３は、コンピュータ１００上で入力された付加情報と署名機器１１０上で入力された付加情報とディジタル署名データの３つの対を署名対象文書１０２に付加し、最終的な署名付き文書１０４を生成する。
【００２６】
（第４の実施の形態）
図５は、本発明のディジタル署名方法に係る第４の実施形態を示すシステム構成図であり、上記の実施形態とは異なり、コンピュータ１００と署名機器１１０に、１つの署名鍵を分割した署名鍵Ａと署名鍵Ｂと保持させ、これらの２つの署名鍵Ａ，Ｂを用いてディジタル署名データを生成するように構成したものである。
なお、鍵の分割方法については、特願２００１−２６７１８１号で既に提案している技術を用いることができるので、ここではその詳細な説明は省略する。
図５において、５０１はコンピュータ１００上に安全に保管され、署名生成プログラム１０３が利用する署名鍵である。５１２は署名機器１１０に安全に保管され、機器上署名生成プログラム１１１が利用する署名鍵である。
この２つは通常の署名鍵が２つに分割された署名鍵であり、それぞれの鍵を使って署名した結果を合わせて始めて有効なディジタル署名データとなる。
【００２７】
図６は第４の実施形態における署名処理の手順を示すフローチャートである。ステップ６０１において、署名生成プログラム１０３が起動され、署名対象文書１０２が指定される。署名対象文書が指定されると、署名生成プログラム１０３は署名対象文書１０２のハッシュ値を計算する。また、コンピュータ１００に付属する入力装置から文書名などの付加情報Ａを署名者に入力させる。付加情報が入力されたならば、署名対象文書のハッシュ値と署名者が入力した付加情報Ａの対５２１を署名機器１１０の機器上署名生成プログラム１１１に送信する。
【００２８】
ステップ６０２では、まず機器上署名生成プログラム１１１が署名生成プログラム１０３から受信したハッシュ値と付加情報Ａの対５２１を受信し、次に本付加情報Ａを表示して署名者に署名して良いか確認する。
確認応答指示が入力されたならば、付加情報Ａとは別の付加情報Ｂを署名者に入力させるか、現在時刻を自動的に取得し、受信した文書ハッシュ値と付加情報Ａと署名機器１１０内で取得した付加情報Ｂに対するディジタル署名データを署名鍵Ａ５１２を使って生成する。
このディジタル署名データは最終的なディジタル署名データではなく、署名者の公開鍵では検証できない。
最後に、署名機器１１０上で取得した加情報Ｂとディジタル署名データの対５２２を署名生成プログラム１０３に送信する。
【００２９】
ステップ６０３では、署名生成プログラム１０３は、付加情報Ｂとディジタル署名データの対５２２を受信したならば、署名鍵Ｂ５０１を使って最終のディジタル署名データを生成する。本ディジタル署名データは署名者の公開鍵を使って検証することができる。そして、署名対象文書１０２、付加情報Ａや付加情報Ｂとを対にして最終的な署名付き文書１０４を生成する。
なお、分割した署名鍵Ａ，Ｂを用いる場合、コンピュータ１００で署名鍵Ｂによりディジタル署名データを生成し、次に、署名機器１１０において署名鍵Ａを用いてディジタル署名データを生成する順番であってもよい。
【００３０】
以上のように、上記第１〜第４の実施形態においては、署名者が意図していない文書のハッシュ値が署名機器１１０に送られたとして、少なくとも付加情報は署名者確認の上で安全な署名機器１１０で署名される。よって、仮に署名者のコンピュータ１００にウィルスが侵入するか、不正にアクセスされ、偽のハッシュ値が署名機器１１０に送られ、署名してしまったとしても、署名者が直接確認した付加情報と突き合わせることにより、署名者が意図して偽の文書に署名したのではないことがわかる。これにより、署名者が意図した署名処理を実現でき、安全で安心できるディジタル署名が実現できる。
【００３１】
（第５の実施の形態）
上記実施形態では、コンピュータ１００と署名機器１１０を用いてディジタル署名を実施する場合を説明したが、図７に示すように、コンピュータ１００と署名機器１１０との間にＷｅｂサーバ１２０を配置し、署名機器１１０におけるディジタル署名データの生成処理はＷｅｂサーバ１２０で行い、署名機器１１０では付加情報を確認したり、入力するだけの構成にすることも可能である。
【００３２】
図７の構成において、コンピュータ１００を第１の装置、Ｗｅｂサーバ１２０を第２の装置、署名機器１１０を第３の装置とし、上記第１の実施形態で説明した署名方法を行う場合の手順は、以下のステップを備えることになる。
すなわち、第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、第１の装置で署名対象文書に対する付加情報を取得し、取得した付加情報と前記署名対象文書のハッシュ値とを第２の装置に送信する第２のステップと、第２の装置において第１の受信したハッシュ値と付加情報のうち付加情報を第３の装置に送信し、第３の装置を所有する署名者に付加情報を確認させ、確認結果の応答指示に基づき署名対象文書のハッシュ値と付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データを第１の装置に送信する第３のステップと、第１の装置において第２の装置から受信したディジタル署名データと前記付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップとを備える。
【００３３】
また、上記第２の実施形態で説明した署名方法を行う場合の手順は、以下のステップを備えることになる。
すなわち、第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、生成したハッシュ値を第２の装置に送信する第２のステップと、第２の装置において受信したハッシュ値に対する付加情報の転送要求を第３の装置に送信し、第３の装置から付加情報を取得し、取得した付加情報と前記第１の装置から受信した署名対象文書ハッシュ値の対に対するディジタル署名データを生成し、生成したディジタル署名データと前記付加情報の対を第１の装置に送信する第３のステップと、第１の装置において第２の装置から受信したディジタル署名データと付加情報の対を署名対象文書に付加した署名付き文書として保管する第４のステップとを備える。
【００３４】
また、上記第２の実施形態で説明した署名方法を行う場合の手順は、以下のステップを備えることになる。
すなわち、第１の装置で作成または保管している署名対象文書のハッシュ値を当該第１の装置で算出する第１のステップと、第１の装置で署名対象文書に対する第１の付加情報を取得し、取得した第１の付加情報と前記ハッシュ値とを第２の装置に送信する第２のステップと、第２の装置において第１の装置から受信したハッシュ値と第１の付加情報のうち第１の付加情報を第３の装置に送信し、第３の装置を所有する署名者に確認させる第３のステップと、第３の装置において第２の装置から受信した第１の付加情報を出力し、第３の装置を所有する署名者から第１の付加情報に確認応答指示を受けた後、第２の付加情報を取得し、第２の装置に送信する第４のステップと、第２の装置において署名対象文書のハッシュ値と第１および第２の付加情報の対に対するディジタル署名データを生成し、生成したディジタル署名データと第２の付加情報を第１の装置に送信する第５のステップと、第１の装置において第２の装置から受信したディジタル署名データと第２の付加情報の対を署名対象文書に付加した署名付き文書として保管する第６のステップとを備える。
【００３５】
このように署名機器１１０の代わりにディジタル署名処理を行うＷｅｂサーバ等の専用の装置を介在させることにより、署名機器１１０にはディジタル署名生成プログラムを搭載する必要がなくなり、処理能力の小さい情報機器で構成することもできる。
【００３６】
また、図８に示すように、Ｗｅｂサーバ１２０からテスト用文書をコンピュータ１００に送信し、このテスト用文書に対するディジタル署名をコンピュータ１００と署名機器１１０、Ｗｅｂサーバ１２０の３者共同で生成し、生成したディジタル署名データが正しい署名か公開鍵を使用して検証し、正しくない場合はコンピュータ１００における署名生成プログラムが不良、またはウィルスに犯されているものとして判定することも可能になり、その判定サービスをコンピュータ１００のユーザに提供することができる。
なお、付加情報については署名者が入力する代わりに、現在日時等のデータを自動的に取得するように構成する。
【００３７】
【発明の効果】
以上のように、本発明によれば、署名者が意図した文書に正しく署名されたことを署名者自身で確認することができ、ディジタル署名の偽造防止に貢献することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態を示すシステム構成図である。
【図２】本発明の第１の実施形態におけるディジタル署名処理の手順を示すフローチャートである。
【図３】本発明の第２の実施形態を示すシステム構成図である。
【図４】本発明の第２の実施形態におけるディジタル署名処理の手順を示すフローチャートである。
【図５】本発明の第４の実施形態を示すシステム構成図である。
【図６】本発明の４の実施形態におけるディジタル署名処理の手順を示すフローチャートである。
【図７】本発明の第５の実施形態を示すシステム構成図である。
【図８】本発明の第５の実施形態を利用してディジタル署名生成機能の不具合を判定するサービスの説明図である。
【符号の説明】
１００…コンピュータ、１０１…文書生成プログラム、１０２…署名対象文書、１０３…署名生成プログラム、１０４…署名付き文書、１１０…署名機器、１１１…機器上署名生成プログラム、１１２…署名鍵、１２０…Ｗｅｂサーバ。
【図１】
2004023649.tif 000003
【図２】
2004023649.tif 000004
【図３】
2004023649.tif 000005
【図４】
2004023649.tif 000006
【図５】
2004023649.tif 000007
【図６】
2004023649.tif 000008
【図７】
2004023649.tif 000009
【図８】
2004023649.tif 000010