(57)【要約】【課題】データの電子署名で、記憶容量のオーバヘッドや計算量的な負荷を低減するとともに、データのセキュリティを確保する。【解決手段】電子署名システム１００は、データ送信装置１、データベース装置２および電子署名検証装置３が通信可能であるように構成される。データ送信装置１は、１以上の商品について、商品情報をハッシュしたデータと商品関連情報とを併せた情報に対して電子署名を生成し、商品情報、商品関連情報および電子署名をデータベース装置２に送信する。データベース装置２は、データ送信装置１から受信した情報を保存し、電子署名検証装置３からの問い合わせに対して、商品情報をハッシュしたデータ、商品関連情報および電子署名を提供する。電子署名検証装置３は、データベース装置２に商品情報に関する問い合わせを行い、データベース装置２から受信した商品情報をハッシュしたデータおよび商品関連情報と電子署名との検証を行う。【選択図】図１
2007148955.tif 000002
【特許請求の範囲】
【請求項１】
１以上のデータを送信するデータ送信装置であって、
前記データの集合の一部を暗号学的ｈａｓｈ関数によって演算するハッシュ生成機構と、
前記ハッシュ生成機構が演算したハッシュ結果および前記データの集合の一部以外に対して電子署名を生成する電子署名生成機構と、
前記データの集合および前記電子署名生成機構が生成した電子署名を送信する通信機構と、
を備えることを特徴とするデータ送信装置。
【請求項２】
請求項１に記載のデータ送信装置と通信可能であり、そのデータ送信装置からデータの集合および電子署名を受信し、それらを対応付けて保持するともに、他装置からのデータに関する問い合わせに応じてそれらを提供するデータ記憶装置であって、
前記データの集合および前記電子署名を受信するとともに、所定のデータを含む問い合わせメッセージを受信し、その問い合わせメッセージに対する応答情報を送信する通信機構と、
前記通信機構が受信したデータの集合および電子署名を対応付けて格納することを指示するデータ格納機構と、
前記データ格納機構からの指示を受けて、前記データの集合および前記電子署名を保存するデータ集合保持機構と、
前記通信機構が受信した問い合わせメッセージに含まれるデータをキーとして、前記データ集合保持機構に保存されたデータを検索するデータ検索機構と、
前記データ検索機構が検索した結果として、前記キーのデータを含むデータ集合を受け取り、そのデータ集合の一部のうち、前記問い合わせメッセージに含まれるデータ以外を暗号学的ｈａｓｈ関数によって演算し、前記問い合わせメッセージに含まれるデータおよび前記演算したハッシュ結果の位置関係を示す情報を生成し、前記ハッシュ結果、前記位置関係を示す情報、前記データ集合の一部以外および前記電子署名を前記応答情報として前記通信機構に渡すハッシュ生成機構と、
を備えることを特徴とするデータ記憶装置。
【請求項３】
電子署名検証機構をさらに備え、
前記ハッシュ生成機構は、前記通信機構が受信したデータの集合の一部を暗号学的ｈａｓｈ関数によって演算し、
前記電子署名検証機構は、前記ハッシュ生成機構が演算したハッシュ結果および前記通信機構が受信したデータの集合の一部以外と、前記通信機構が受信した電子署名とを検証し、
前記データ格納機構は、前記電子署名検証機構による検証が成立した場合に、前記通信機構が受信したデータの集合および電子署名を対応付けて格納することを指示する
ことを特徴とする請求項２に記載のデータ記憶装置。
【請求項４】
前記ハッシュ生成機構は、前記データ検索機構が検索した結果として、前記キーのデータを含むデータ集合を受け取った場合に、さらに前記問い合わせメッセージに含まれるデータを暗号学的ｈａｓｈ関数によって演算し、そのハッシュ結果を前記応答情報に含める
ことを特徴とする請求項２または請求項３に記載のデータ記憶装置。
【請求項５】
請求項２または請求項３に記載のデータ記憶装置と通信可能であり、そのデータ記憶装置にデータに関する問い合わせを行い、その問い合わせに対する応答を受けて、その受けた応答に関する電子署名の検証を行う電子署名検証装置であって、
前記データ記憶装置に所定のデータを含む問い合わせメッセージを送信するとともに、前記データ記憶装置からその問い合わせメッセージに対する応答情報として、前記ハッシュ結果、前記位置関係を示す情報、前記データ集合の一部以外および前記電子署名を受信する通信機構と、
前記通信機構が送信した問い合わせメッセージに含まれるデータを暗号学的ｈａｓｈ関数によって演算するハッシュ生成機構と、
前記通信機構が受信したハッシュ結果に対して、前記位置関係を示す情報に従って前記ハッシュ生成機構が演算したハッシュ結果を挿入し、そのハッシュ結果全体および前記受信したデータ集合の一部以外と、前記受信した電子署名とを検証する電子署名検証機構と、
を備えることを特徴とする電子署名検証装置。
【請求項６】
請求項４に記載のデータ記憶装置と通信可能であり、そのデータ記憶装置にデータに関する問い合わせを行い、その問い合わせに対する応答を受けて、その受けた応答に関する電子署名の検証を行う電子署名検証装置であって、
前記データ記憶装置に所定のデータを含む問い合わせメッセージを送信するとともに、前記データ記憶装置からその問い合わせメッセージに対する応答情報として、前記ハッシュ結果、前記位置関係を示す情報、前記データ集合の一部以外および前記電子署名を受信する通信機構と、
前記通信機構が送信した問い合わせメッセージに含まれるデータを暗号学的ｈａｓｈ関数によって演算するハッシュ生成機構と、
前記通信機構が受信したハッシュ結果およびデータ集合の一部以外と、前記通信機構が受信した電子署名とを検証する電子署名検証機構と、
を備え、
前記通信機構が受信したハッシュ結果において前記位置関係を示す情報によって特定されるハッシュ結果と、前記ハッシュ生成機構が演算したハッシュ結果とを比較する
ことを特徴とする電子署名検証装置。
【請求項７】
コンピュータを請求項１に記載のデータ送信装置として機能させることを特徴とするデータ送信プログラム。
【請求項８】
コンピュータを請求項２ないし請求項４のいずれか一項に記載のデータ記憶装置として機能させることを特徴とするデータ記憶プログラム。
【請求項９】
コンピュータを請求項５または請求項６に記載の電子署名検証装置として機能させることを特徴とする電子署名検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの電子署名技術に関する。
【背景技術】
【０００２】
物流などの現場においては、商品の在庫や配送の記録を保持し、後で必要に応じてそれらの記録を参照するといったことが行われている。従来は、各拠点で配送伝票などの紙に捺印するといった方法で物流全体を管理してきた。
【０００３】
ある商品がいつ、どこからどこへ誰によってどのように運搬されたかといった情報に関して、紙媒体を用いる場合には印鑑やサインによって責任者を特定するが、電子的な情報の場合は電子署名を用いる必要がある。この場合、商品個々のＩＤと、その商品に関連する情報との対に対して電子署名を施すのが普通の方法である。なお、非特許文献１には、商品ＩＤの例が記載されている。また、非特許文献２には、電子署名の例が記載されている。
【非特許文献１】David L. Brock, “WHITE PAPER / The Compact Electronic Product Code / A 64-bit Representation of the Electronic Product Code”, MIT AUTO-ID CENTER, 2001/11/1, p.5, 6, 8, 9
【非特許文献２】「暗号技術検討会  ２００２年度報告書」、総務省および経済産業省、２００３年３月、ｐ．１２
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、商品ＩＤのデータサイズが１００ｂｉｔ程度であるのに対し、電子署名は数千ｂｉｔの記憶容量を必要とする。すなわち、記憶容量のオーバヘッドが問題になる。また、電子署名の生成や検証は計算量的な負荷が大きいため、大量の商品が一度に運び込まれた場合などには長時間待たないと引渡しができなくなるという問題がある。
【０００５】
記憶容量のオーバヘッドや計算量的な負荷の問題に対処するには、個々の商品ごとに署名を生成するのではなく、いっしょに運搬した商品の集合と、その商品集合に関連する情報の対に対して電子署名を生成することができる。この場合、電子署名は商品集合に対して１つなので、電子署名に係る記憶容量および計算量を充分小さくできる。
【０００６】
ところが、このような場合、特定少数の商品の管理状況を検証する作業の一環として電子署名も検証する必要があるが、電子署名を検証するには電子署名対象のデータをすべて閲覧することが必要である。これは、個々の商品情報ではなく、商品情報の集合に対して電子署名を施しているためであり、商品情報の集合をすべて開示しなければ、署名検証ができないのである。この状況においては、例えば、消費者が、様々な商品を少しずつ購入し、該商品の管理状況を問い合わせる場合に、問い合わせ対象以外の大量の商品の管理状況に関する情報が流出することになる。これは、その消費者にとって必要のない商品情報を入手し、閲覧できることになるので、情報の漏洩やプライバシーの侵害などの問題（情報セキュリティ上の問題）が起こりうる。
【０００７】
そこで、本発明は、前記問題に鑑み、データの電子署名において、記憶容量のオーバヘッドや計算量的な負荷を低減するとともに、データのセキュリティを確保する手段を提供することを課題とする。
【課題を解決するための手段】
【０００８】
前記課題を解決する本発明は、１以上のデータを送信するデータ送信装置であって、データの集合の一部を暗号学的ｈａｓｈ関数によって演算するハッシュ生成機構と、ハッシュ生成機構が演算したハッシュ結果およびデータの集合の一部以外に対して電子署名を生成する電子署名生成機構と、データの集合および電子署名生成機構が生成した電子署名を送信する通信機構とを備えることを特徴とする。これによれば、個々のデータではなく、ひとまとまりのデータに対して電子署名を生成することができる。
【０００９】
また、本発明は、データ送信装置と通信可能であり、そのデータ送信装置からデータの集合および電子署名を受信し、それらを対応付けて保持するともに、他装置からのデータに関する問い合わせに応じてそれらを提供するデータ記憶装置であって、データの集合および電子署名を受信するとともに、所定のデータを含む問い合わせメッセージを受信し、その問い合わせメッセージに対する応答情報を送信する通信機構と、通信機構が受信したデータの集合および電子署名を対応付けて格納することを指示するデータ格納機構と、データ格納機構からの指示を受けて、データの集合および電子署名を保存するデータ集合保持機構と、通信機構が受信した問い合わせメッセージに含まれるデータをキーとして、データ集合保持機構に保存されたデータを検索するデータ検索機構と、データ検索機構が検索した結果として、キーのデータを含むデータ集合を受け取り、そのデータ集合の一部のうち、問い合わせメッセージに含まれるデータ以外を暗号学的ｈａｓｈ関数によって演算し、問い合わせメッセージに含まれるデータおよび演算したハッシュ結果の位置関係を示す情報を生成し、ハッシュ結果、位置関係を示す情報、データ集合の一部以外および電子署名を応答情報として通信機構に渡すハッシュ生成機構とを備えることを特徴とする。これによれば、他装置からの問い合わせに対して、データそのものではなく、そのハッシュ結果を提供することができる。
【００１０】
また、本発明は、データ記憶装置であって、電子署名検証機構をさらに備え、ハッシュ生成機構が、通信機構が受信したデータの集合の一部を暗号学的ｈａｓｈ関数によって演算し、電子署名検証機構が、ハッシュ生成機構が演算したハッシュ結果および通信機構が受信したデータの集合の一部以外と、通信機構が受信した電子署名とを検証し、データ格納機構が、電子署名検証機構による検証が成立した場合に、通信機構が受信したデータの集合および電子署名を対応付けて格納することを指示することを特徴とする。これによれば、データ送信装置から受信したデータの集合および電子署名を保存する前に、電子署名を検証することができる。
【００１１】
また、本発明は、データ記憶装置であって、ハッシュ生成機構が、データ検索機構が検索した結果として、キーのデータを含むデータ集合を受け取った場合に、さらに問い合わせメッセージに含まれるデータを暗号学的ｈａｓｈ関数によって演算し、そのハッシュ結果を応答情報に含めることを特徴とする。これによれば、検索結果であるデータ集合の一部に係るハッシュ結果全体を他装置に提供することができる。
【００１２】
また、本発明は、データ記憶装置と通信可能であり、そのデータ記憶装置にデータに関する問い合わせを行い、その問い合わせに対する応答を受けて、その受けた応答に関する電子署名の検証を行う電子署名検証装置であって、データ記憶装置に所定のデータを含む問い合わせメッセージを送信するとともに、データ記憶装置からその問い合わせメッセージに対する応答情報として、ハッシュ結果、位置関係を示す情報、データ集合の一部以外および電子署名を受信する通信機構と、通信機構が送信した問い合わせメッセージに含まれるデータを暗号学的ｈａｓｈ関数によって演算するハッシュ生成機構と、通信機構が受信したハッシュ結果に対して、位置関係を示す情報に従ってハッシュ生成機構が演算したハッシュ結果を挿入し、そのハッシュ結果全体および受信したデータ集合の一部以外と、受信した電子署名とを検証する電子署名検証機構とを備えることを特徴とする。これによれば、データ記憶装置から受信した応答情報に関する電子署名を検証することができる。
【００１３】
また、本発明は、データ記憶装置と通信可能であり、そのデータ記憶装置にデータに関する問い合わせを行い、その問い合わせに対する応答を受けて、その受けた応答に関する電子署名の検証を行う電子署名検証装置であって、データ記憶装置に所定のデータを含む問い合わせメッセージを送信するとともに、データ記憶装置からその問い合わせメッセージに対する応答情報として、ハッシュ結果、位置関係を示す情報、データ集合の一部以外および電子署名を受信する通信機構と、通信機構が送信した問い合わせメッセージに含まれるデータを暗号学的ｈａｓｈ関数によって演算するハッシュ生成機構と、通信機構が受信したハッシュ結果およびデータ集合の一部以外と、通信機構が受信した電子署名とを検証する電子署名検証機構とを備え、通信機構が受信したハッシュ結果において位置関係を示す情報によって特定されるハッシュ結果と、ハッシュ生成機構が演算したハッシュ結果とを比較することを特徴とする。これによれば、データ記憶装置から受信した各データをそのまま検証することができる。また、データ記憶装置から受信したハッシュ結果のうち、所定のデータに対応するハッシュ結果と、電子署名検証装置が保持している所定のデータのハッシュ結果と比較することができる。
【００１４】
また、本発明は、コンピュータをデータ送信装置として機能させることを特徴とするデータ送信プログラムである。
【００１５】
また、本発明は、コンピュータをデータ記憶装置として機能させることを特徴とするデータ記憶プログラムである。
【００１６】
また、本発明は、コンピュータを電子署名検証装置として機能させることを特徴とする電子署名検証プログラムである。
【発明の効果】
【００１７】
本発明に係るデータ送信装置およびデータ送信プログラムによれば、個々のデータではなく、ひとまとまりのデータに対して電子署名を生成するので、電子署名に係る記憶容量のオーバヘッドや計算量的な負荷を低減することができる。
【００１８】
本発明に係るデータ記憶装置およびデータ記憶プログラムによれば、データ送信装置で電子署名する場合に、各データのハッシュ結果を対象としており、他装置からの問い合わせに対して、データそのものではなく、そのハッシュ結果を提供するので、利用者がデータを知ることはできず、データのセキュリティを確保することができる。また、データ送信装置から受信したデータの集合および電子署名を保存する前に、電子署名を検証するので、正しいデータを保存することができる。
【００１９】
本発明に係る電子署名検証装置および電子署名検証プログラムによれば、データ記憶装置から受信した応答情報に関する電子署名を検証するので、正しいデータを利用者に閲覧させることができる。また、電子署名検証装置が保持している所定のデータが正しいか否かを検証することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００２１】
≪第１の実施の形態≫
図１は、本発明の第１の実施の形態に係る電子署名システムの構成を示す図である。電子署名システム１００は、データ送信装置１、データベース装置（データ記憶装置）２および電子署名検証装置３が通信可能であるように構成される。その通信は、有線無線を問わず、その通信方式も問わない。データ送信装置１は、搬入者による搬入対象である１以上の商品について、商品の情報（以下、商品情報という）をハッシュしたデータと、その商品の関連情報（以下、商品関連情報という）とを併せた情報に対して電子署名を生成し、商品情報、商品関連情報および電子署名をデータベース装置２に送信する。データベース装置２は、データ送信装置１から受信した情報を保存するとともに、電子署名検証装置３からの問い合わせに対して、商品情報に対応する情報を提供する。電子署名検証装置３は、小売業者や消費者からの問い合わせ要求を受けて、データベース装置２に商品情報に関する問い合わせを行うとともに、データベース装置２から提供された情報の検証を行う。
【００２２】
ここで、ハッシュとは、暗号学的ｈａｓｈ関数（以下、ｈａｓｈ関数という）によって演算することをいい、その演算結果をハッシュ結果という。商品情報とは、商品名称や商品番号などのことをいう。商品関連情報とは、商品搬入の日時や担当者、責任者などのことをいう。なお、各装置は、同じｈａｓｈ関数の論理および同じ電子署名の論理を持つものとする。
【００２３】
本発明の実施の形態では、商品情報の集合そのものではなく、各商品情報をそれぞれハッシュしたものに対して電子署名を施す。ｈａｓｈ関数は、入力が与えられるとその入力に対応する出力を容易に計算できるので、ハッシュ結果が提示された場合に、それが調査対象の商品情報に対応するものであるか否かを容易に確認することができる。また、ｈａｓｈ関数は、ハッシュ結果に合致する入力を逆生成することが困難であるという性質を持つため、個々の商品情報が具体的にどのようなものであったかを特定することは困難である。従って、開示する商品情報を最小限に絞ったまま、電子署名の検証を行うことができる。なお、例えば、搬入責任者のような、どの商品情報について調べる場合でも開示する必要がある情報（商品関連情報）は、ｈａｓｈ関数の適用を省くことができる。
【００２４】
データ送信装置１は、搬入者が商品情報や商品関連情報を入力する端末（図示せず）を備える装置であり、その搬入者によって入力された商品情報および商品関連情報、ならびにそれらの電子署名をデータベース装置２に送信する装置である。データ送信装置１は、ハッシュ生成機構１１、電子署名生成機構１２および通信機構１３を含んで構成される。そして、各機構は、ＣＰＵ（Central Processing Unit）が所定のメモリに格納されたプログラム（データ送信プログラム）を実行することによって実現される。また、各機構が取り扱うデータや情報も、所定のメモリに格納されているものとする。なお、通信機構１３は、ネットワークなどとの通信接続機器である。
【００２５】
図２は、データ送信装置１における電子署名生成手順を示す図である。図２に示すように、データ送信装置１では、まず、ハッシュ生成機構１１が、端末から入力された個々の商品情報Ａ、ＢおよびＣ（データの集合の一部）をｈａｓｈ関数によって演算する。次に、電子署名生成機構１２が、ハッシュ生成機構１１が演算したハッシュ結果ａ、ｂおよびｃと、端末から入力された商品関連情報（データの集合の一部以外）とを併せた情報に対して電子署名を生成する。そして、通信機構１３が、商品情報および商品関連情報、ならびに電子署名生成機構１２が生成した電子署名をデータベース装置２に送信する。
【００２６】
データベース装置２は、データ送信装置１から商品情報、商品関連情報および電子署名を受信し、保存する。また、電子署名検証装置３からの商品情報に関する問い合わせに応じて、その商品情報に対応する情報を提供する。図１に示すように、データベース装置２は、通信機構２１、データ格納機構２２、データ集合保持機構２３、電子署名提示機構２４、データ検索機構２５およびハッシュ生成機構２６を含んで構成される。そして、各機構は、ＣＰＵが所定のメモリに格納されたプログラムを実行することによって実現される。また、各機構が取り扱うデータや情報も、所定のメモリに格納されているものとする。なお、データ集合保持機構２３は、ハードディスク装置などの不揮発性記憶装置である。また、通信機構２１は、ネットワークなどとの通信接続機器である。
【００２７】
データベース装置２では、通信機構２１が、データ送信装置１から商品情報、商品関連情報および電子署名を受信する。次に、データ格納機構２２が、その受信した情報を対応付けて格納することをデータ集合保持機構２３に指示する。そして、データ集合保持機構２３が、その指示を受けて、商品情報、商品関連情報および電子署名を保存する。
【００２８】
電子署名提示機構２４は、通信機構２１、データ検索機構２５およびハッシュ生成機構２６を含んで構成される。図３は、電子署名提示機構２４が問い合わせに対する応答を返す手順を示す図である。図３に示すように、電子署名提示機構２４では、まず、通信機構２１が電子署名検証装置３から商品情報を含む問い合わせメッセージを受信する。次に、データ検索機構２５が、データ集合保持機構２３に保存されたデータに対して、その問い合わせメッセージに含まれる商品情報をキーとして検索する。そして、検索結果（データ集合）として、１以上の商品情報（データ集合の一部）および商品関連情報（データ集合の一部以外）を取得する。続いて、ハッシュ生成機構２６が、その検索結果のうち、問い合わせメッセージに含まれる商品情報以外の商品情報Ａ、Ｃをハッシュし、ハッシュ結果ａ、ｃを生成する。また、商品情報Ｂの位置関係情報を生成する。
【００２９】
そして、通信機構２１が、ハッシュ結果ａ、商品情報Ｂの位置関係情報およびハッシュ結果ｃ、これらの商品関連情報、これらの電子署名を電子署名検証装置３に送信する。ここで、商品情報Ｂの位置関係情報は、ハッシュ結果における商品情報Ｂの位置を示す情報であり、電子署名検証装置３において用いられる。この位置関係情報は、図３に示すようなダミーデータであってもよいし、ハッシュ結果における商品情報Ｂの挿入位置のオフセット値や順番などをハッシュ結果の後に設定するようにしてもよい。いずれにしても、電子署名検証装置３において、ハッシュ結果における商品情報Ｂの位置を特定できればよい。
【００３０】
電子署名検証装置３は、利用者（小売業者や消費者など）が商品情報に関する問い合わせの要求を行う端末（図示せず）を備える装置であり、データベース装置２に商品情報を含む問い合わせメッセージを送信するとともに、データベース装置２から受信した応答情報を検証し、商品関連情報を端末に表示する装置である。図１に示すように、電子署名検証装置３は、通信機構３１、ハッシュ生成機構３２および電子署名検証機構３３を含んで構成される。そして、各機構は、ＣＰＵが所定のメモリに格納されたプログラムを実行することによって実現される。また、各機構が取り扱うデータや情報も、所定のメモリに格納されているものとする。なお、通信機構３１は、ネットワークなどとの通信接続機器である。
【００３１】
図４は、電子署名検証装置３における検索結果生成手順を示す図である。図４に示すように、電子署名検証装置３では、まず、通信機構３１（図１参照）が、利用者によって端末に入力された、商品関連情報を知りたい商品を示す商品情報を受け取り、その商品情報（データ）を含む問い合わせメッセージをデータベース装置２に送信する。次に、通信機構３１が、その問い合わせメッセージに対するデータベース装置２からの応答情報として、ハッシュ結果ａ、商品情報Ｂの位置関係情報およびハッシュ結果ｃ、それらの商品関連情報、それらに対応する電子署名を受信する。続いて、ハッシュ生成機構３２が、データベース装置２に送信した商品情報Ｂをハッシュして、ハッシュ結果ｂを生成する。そして、データベース装置２から受け取ったハッシュ結果および商品情報Ｂの位置関係情報を用いて、データ送信装置１が生成したハッシュ結果を再現する。具体的には、ハッシュ結果ａおよびハッシュ結果ｃに対して、商品情報Ｂの位置関係情報に従ってハッシュ結果ｂを挿入する。ここでは、図４に示すように、ハッシュ結果ａとハッシュ結果ｃとの間にハッシュ結果ｂを挿入する。
【００３２】
さらに、電子署名検証機構３３が、その再現したハッシュ結果、商品情報に対応する商品関連情報および電子署名を検証する。具体的には、ＣＰＵが所定のメモリにロードされた電子署名検証のプログラムを実行することによって、所定のメモリに格納されたハッシュ結果、商品情報に対応する商品関連情報および電子署名の各データが入力され、電子署名検証のための計算処理が行われ、その検証結果が所定のメモリに出力される。そして、検証が成立した場合には、電子署名検証装置３が、商品関連情報を端末に表示する。また、必要に応じて署名者の情報も表示する。一方、検証が不成立だった場合には、電子署名検証装置３が、検証が不成立であり、利用者が問い合わせた商品情報に対応する商品関連情報を表示しない旨を端末に表示する。
【００３３】
以上説明した第１の実施の形態によれば、データ送信装置１において、搬入対象である１以上の商品につき、商品情報ごとに電子署名するのではなく、その各商品情報および商品関連情報に対して一括して電子署名を生成するので、電子署名に係る記憶容量のオーバヘッドや計算量的な負荷を低減することができる。また、電子署名する場合に、各商品情報のハッシュ結果および商品関連情報を対象としており、電子署名検証装置３において、電子署名を検証するときに、データベース装置２から商品情報そのものではなく、そのハッシュ結果を提供するので、利用者が商品情報を知ることはできず、商品情報のセキュリティを確保することができる。
【００３４】
≪第２の実施の形態≫
次に、本発明の第２の実施の形態を説明する。なお、第１の実施の形態と同一の部分は同一の符号を付して、重複する説明は省略する。第２の実施の形態では、第１の実施の形態における構成に対してデータベース装置２の電子署名検証装置２７が追加されている。
【００３５】
図５は、本発明の第２の実施の形態に係る電子署名システムの構成を示す図である。データベース装置２は、データ送信装置１から受信した情報を検証した後、保存するとともに、電子署名検証装置３からの商品情報に関する問い合わせに対して、その商品情報に対応する情報を提供する。データベース装置２は、通信機構２１、データ格納機構２２、データ集合保持機構２３、データ検索機構２５、ハッシュ生成機構２６および電子署名検証機構２７を含んで構成される。そして、各機構は、ＣＰＵが所定のメモリに格納されたプログラムを実行することによって実現される。また、各機構が取り扱うデータや情報も、所定のメモリに格納されているものとする。
【００３６】
データベース装置２では、通信機構２１が、データ送信装置１から商品情報、商品関連情報および電子署名を受信する。ここで、図６は、データベース装置２における電子署名検証手順を示す図である。図６に示すように、ハッシュ生成機構２６が、受信した商品情報Ａ、ＢおよびＣをハッシュする。続いて、電子署名検証機構２７が、ハッシュ生成機構２６によるハッシュ結果ａ、ｂおよびｃと、通信機構２１が受信した商品関連情報と、電子署名とを検証する。そして、検証が成立した場合には、データ格納機構２２が、データ送信装置１から受信した商品情報、商品関連情報および電子署名を対応付けて格納することをデータ集合保持機構２３に指示する。一方、検証が不成立だった場合には、受信した情報を保存することなく、データ送信装置２に情報保存を拒否する旨のメッセージを返信する。
【００３７】
以上説明した第２の実施の形態によれば、データベース装置２において、データ送信装置１から受信した商品情報、商品関連情報および電子署名をデータ集合保持機構２３に保存する前に、電子署名を検証するので、正しい情報だけを保存することができる。これによれば、電子署名検証装置３に正しい情報だけを提供することができる。
【００３８】
なお、本発明の実施の形態に係る各装置（データ送信装置１、データベース装置２および電子署名検証装置３）は、コンピュータおよびプログラム（データ送信プログラム、データ記憶プログラムおよび電子署名検証プログラム）によって実現することができ、そのプログラムをコンピュータによる読み取り可能な記録媒体に記録することでその記録媒体によって提供することが可能である。また、そのプログラムをネットワーク経由で提供することも可能である。
【００３９】
≪その他の実施の形態≫
以上本発明の好適な実施の形態について一例を示したが、本発明は前記実施の形態に限定されず、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。例えば、以下のような実施の形態が考えられる。
（１）前記実施の形態では、データの集合を１以上の商品情報および商品関連情報（商品搬入に関する情報）とし、データの集合の一部を各商品情報として記載したが、その他の情報に適用してもよい。例えば、商品の説明会を開催した場合に、データの集合を１以上の参加者情報（会社名、個人名など）および説明会情報（開催日時、場所、主催者、説明内容など）とし、データの集合の一部を各参加者情報としてもよい。いずれにしても、１以上のデータからなる集合であれば、本発明を適用することができる。
【００４０】
（２）前記実施の形態では、データベース装置２から電子署名検証装置３に応答情報を送信する場合に、その応答情報に問い合わせメッセージの商品情報（データ）のハッシュ結果を含めないように記載したが、検索した結果（データ集合）を受け取ったときに、その商品情報のハッシュ結果を含めるようにしてもよい。この場合、電子署名検証装置３では、応答情報の位置関係情報から格納位置が特定されるハッシュ結果と、ハッシュ生成機構３２によって問い合わせメッセージの商品情報から演算されるハッシュ結果とを比較することができる。これによれば、電子署名検証装置３が保持している商品情報（問い合わせメッセージの商品情報）が正しいか否かを検証することができる。
【図面の簡単な説明】
【００４１】
【図１】本発明の第１の実施の形態に係る電子署名システムの構成を示す図である。
【図２】データ送信装置における電子署名生成手順を示す図である。
【図３】データベース装置の電子署名提示機構が問い合わせに対する応答を返す手順を示す図である。
【図４】電子署名検証装置における検索結果生成手順を示す図である。
【図５】本発明の第２の実施の形態に係る電子署名システムの構成を示す図である。
【図６】データベース装置における電子署名検証手順を示す図である。
【符号の説明】
【００４２】
１      データ送信装置
１１    ハッシュ生成機構
１２    電子署名生成機構
１３    通信機構
２      データベース装置（データ記憶装置）
２１    通信機構
２２    データ格納機構
２３    データ集合保持機構
２５    データ検索機構
２６    ハッシュ生成機構
２７    電子署名検証機構
３      電子署名検証装置
３１    通信機構
３２    ハッシュ生成機構
３３    電子署名検証機構
【図１】
2007148955.tif 000003
【図２】
2007148955.tif 000004
【図３】
2007148955.tif 000005
【図４】
2007148955.tif 000006
【図５】
2007148955.tif 000007
【図６】
2007148955.tif 000008