(57)【要約】【課題】複数のデータ間の関連性を保証できる署名生成装置を提供する。【解決手段】署名生成装置は、相互に関連する第１のデータを含む複数のデータを取得するデータ取得部と、第１のデータ、複数のデータ間の相関関係を示す相関情報、及び署名鍵に基づいて、第１のデータ及び相関情報に対する第１の署名データを生成する署名生成部と、を備える。【選択図】図１
2020010399.tif 000002
【特許請求の範囲】
【請求項１】
相互に関連する第１のデータを含む複数のデータを取得するデータ取得部と、
前記第１のデータ、前記複数のデータ間の相関関係を示す相関情報、及び署名鍵に基づいて、前記第１のデータ及び前記相関情報に対する第１の署名データを生成する署名生成部と、
を備える署名生成装置。
【請求項２】
請求項１に記載の署名生成装置であって、
前記データ取得部は、時系列に連続する前記複数のデータを取得する、署名生成装置。
【請求項３】
請求項１または２に記載の署名生成装置であって、
前記データ取得部は、前記第１のデータと第２のデータとを取得し、
前記署名生成部は、前記第１のデータ、前記第１のデータと前記第２のデータとの相関関係を示す前記相関情報、及び前記署名鍵に基づいて、前記第１の署名データを生成する、署名生成装置。
【請求項４】
請求項３に記載の署名生成装置であって、更に、
前記データ取得部により取得されたデータのハッシュ値を導出する一方向性関数導出部を備え、
前記署名生成部は、前記相関情報としての前記第２のデータのハッシュ値に基づいて、前記第１の署名データを生成する、署名生成装置。
【請求項５】
請求項３または４のいずれか１項に記載の署名生成装置であって、更に、
前記データ取得部により取得されたデータの識別情報を生成する識別情報生成部を備え、
前記署名生成部は、前記相関情報としての前記第１のデータの識別情報に基づいて、前記第１の署名データを生成する、署名生成装置。
【請求項６】
請求項３ないし５のいずれか１項に記載の署名生成装置であって、
前記署名生成部は、前記相関情報としての前記第２のデータに対する第２の署名データに基づいて、前記第１の署名データを生成する、署名生成装置。
【請求項７】
請求項３ないし６のいずれか１項に記載の署名生成装置であって、
前記署名生成部は、前記相関情報としての前記第２のデータに基づいて、前記第１の署名データを生成する、署名生成装置。
【請求項８】
請求項５に記載の署名生成装置であって、
前記第１のデータの識別情報は、表示装置により前記第１のデータに付加された可視データとして表示される、署名生成装置。
【請求項９】
請求項１ないし８のいずれか１項に記載の署名生成装置であって、
前記データ取得部は、撮像部を含み、前記撮像部により撮像された画像データを取得する、署名生成装置。
【請求項１０】
請求項１ないし９のいずれか１項に記載の署名生成装置であって、
前記データ取得部は、収音部を含み、前記収音部により収音された音声データを取得する、署名生成装置。
【請求項１１】
請求項１ないし１０のいずれか１項に記載の署名生成装置であって、更に、
前記複数のデータと前記第１の署名データとを送信する送信部を備える、署名生成装置。
【請求項１２】
相互に関連する第１のデータを含む複数のデータと、前記第１のデータと前記複数のデータ間の相関関係を示す相関情報とに対して署名処理された第１の署名データと、を取得するデータ取得部と、
検証鍵を用いて、前記第１の署名データを復号する署名復号部と、
前記相関情報に基づいて、前記複数のデータ間の関連性の有無を判定する関連性判定部と、
を備える署名検証装置。
【請求項１３】
請求項１２に記載の署名検証装置であって、
前記データ取得部は、時系列に連続する前記複数のデータを取得する、署名検証装置。
【請求項１４】
請求項１２または１３に記載の署名検証装置であって、
前記データ取得部は、前記第１のデータと第２のデータとを取得し、
前記関連性判定部は、前記相関情報としての前記第２のデータのハッシュ値に基づいて、前記複数のデータ間の関連性の有無を判定する、署名検証装置。
【請求項１５】
請求項１４に記載の署名検証装置であって、更に、
前記第２のデータのハッシュ値である第１のハッシュ値を導出する一方向性関数導出部を備え、
前記署名復号部は、前記検証鍵を用いて前記第１の署名データを復号し、第２のハッシュ値を得て、
前記関連性判定部は、前記第１のハッシュ値と、前記第２のハッシュ値と、前記第１のデータに含まれる前記第２のデータのハッシュ値である第３のハッシュ値と、に基づいて、前記第１のデータと前記第２のデータとの関連性の有無を判定する、署名検証装置。
【請求項１６】
請求項１２ないし１５のいずれか１項に記載の署名検証装置であって、更に、
前記データ取得部は、前記複数のデータと前記第１の署名データとを受信する、署名検証装置。
【請求項１７】
署名生成装置における署名生成方法であって、
相互に関連する第１のデータを含む複数のデータを取得するステップと、
前記第１のデータ、前記複数のデータ間の相関関係を示す相関情報、及び署名鍵に基づいて、前記第１のデータ及び前記相関情報に対する第１の署名データを生成するステップと、
を備える署名生成方法。
【請求項１８】
署名検証装置における署名検証方法であって、
相互に関連する第１のデータを含む複数のデータと、前記第１のデータと前記複数のデータ間の相関関係を示す相関情報とに対して署名処理された第１の署名データと、を取得するステップと、
検証鍵を用いて、前記第１の署名データを復号するステップと、
前記相関情報に基づいて、前記複数のデータ間の関連性の有無を判定するステップと、
を備える署名検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルデータに署名する署名生成装置、署名されたデジタルデータを検証する署名検証装置、署名生成方法、及び署名検証方法に関する。
【背景技術】
【０００２】
従来、デジタルデータに署名データを添付することで、デジタルデータが改竄されていないことを保証するデジタル署名の技術が既に知られている（例えば、非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】岡本栄司著、「暗号理論入門」、共立出版、２００５年９月１５日、第２版４刷発行、ｐ．１５５−ｐ．１６０
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来のデジタル署名は、複数のデータ間の関連性を保証することが困難であった。
【０００５】
本発明は、上記事情に鑑みてなされたものであり、複数のデータ間の関連性を保証できる署名生成装置、署名検証装置、署名生成方法及び署名検証方法を提供する。
【課題を解決するための手段】
【０００６】
本発明の署名生成装置は、相互に関連する第１のデータを含む複数のデータを取得するデータ取得部と、前記データ取得部により取得された前記第１のデータ、前記複数のデータ間の相関関係を示す相関情報、及び署名鍵に基づいて、前記第１のデータ及び前記相関情報に対する第１の署名データを生成する署名生成部と、を備える。
【０００７】
本発明の署名検証装置は、相互に関連する第１のデータを含む複数のデータと、前記第１のデータと前記複数のデータ間の相関関係を示す相関情報とに対して署名処理された第１の署名データと、を取得するデータ取得部と、検証鍵を用いて、前記第１の署名データを復号する署名復号部と、前記相関情報に基づいて、前記複数のデータ間の関連性の有無を判定する関連性判定部と、を備える。
【０００８】
本発明の署名生成方法は、署名生成装置における署名生成方法であって、相互に関連する第１のデータを含む複数のデータを取得するステップと、前記取得された前記第１のデータ、前記複数のデータ間の相関関係を示す相関情報、及び署名鍵に基づいて、前記第１のデータ及び前記相関情報に対する第１の署名データを生成するステップと、を備える。
【０００９】
本発明の署名検証方法は、署名検証装置における署名検証方法であって、相互に関連する第１のデータを含む複数のデータと、前記第１のデータと前記複数のデータ間の相関関係を示す相関情報とに対して署名処理された第１の署名データと、を取得するステップと、検証鍵を用いて、前記第１の署名データを復号するステップと、前記相関情報に基づいて、前記複数のデータ間の関連性の有無を判定するステップと、を備える。
【発明の効果】
【００１０】
本発明によれば、複数のデータ間の関連性を保証できる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態における署名処理システムの概略構成例を示す模式図
【図２】第１の実施形態における合成データのファイル構造例を示す模式図
【図３】第１の実施形態におけるカメラのハードウェア構成を示すブロック図
【図４】第１の実施形態におけるカメラの機能的構成例を示すブロック図
【図５】第１の実施形態におけるＰＣのハードウェア構成例を示すブロック図
【図６】第１の実施形態におけるＰＣの機能的構成を示すブロック図
【図７】（Ａ），（Ｂ）第１の実施形態におけるカメラが生成する合成データのファイル構造例を示す模式図
【図８】（Ａ），（Ｂ），（Ｃ）は、第１の実施形態における様々なファイル構造を持つ合成データにおける画像データの関連性を説明するための模式図
【図９】第１の実施形態におけるカメラによる署名動作手順の一例を示すフローチャート
【図１０】第１の実施形態におけるＰＣによる事前準備動作手順の一例を示すフローチャート
【図１１】第１の実施形態におけるＰＣによる検証動作手順の一例を示すフローチャート
【図１２】変形例における画像データの関連性を説明するための模式図
【図１３】第２の実施形態におけるカメラの機能的構成例を示す模式図
【図１４】第２の実施形態におけるカメラによる署名動作手順の一例を示すフローチャート
【図１５】（Ａ），（Ｂ）第２の実施形態における様々なファイル構造を持つ合成データにおける画像データの関連性を説明する模式図
【図１６】第３の実施形態におけるカメラの機能的構成例を示す模式図
【図１７】第３の実施形態における画像データの関連性を説明するための模式図
【図１８】第４の実施形態におけるカメラの機能的構成例を示す模式図
【図１９】第４の実施形態における画像データの関連性を説明するための模式図
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について、図面を用いて説明する。
【００１３】
（本発明の一形態を得るに至った経緯）
例えば、デジタルスチルカメラにより撮像された現場写真が、裁判で証拠として採用されることがある。しかし、デジタルスチルカメラにより撮像された写真は、デジタル画像データであるので、意図的にデータを改竄し、又は連続的な複数枚の写真の中から１枚抜き取って消去される可能性がある。このため、デジタル画像データは、裁判では証拠能力に乏しいと指摘されている。
【００１４】
従来のデジタル署名技術では、例えば、複数のデジタル画像データに対して、１枚分のデジタル画像データ毎に署名データを生成する場合、個々のデジタル画像データが改竄されていないことを証明できる。しかし、連続して撮像された複数枚のデジタル画像データの中から、１枚あるいは複数枚の画像データが抜き取られた場合、この抜き取りを認識することは困難である。つまり、複数枚の画像データ間の関連性を保証することが困難である。
【００１５】
以下、複数のデータ間の関連性を保証できる署名生成装置、署名検証装置、署名生成方法及び署名検証方法について説明する。
【００１６】
以下の実施形態の署名生成装置は、例えば、デジタル画像データ（以下、画像データともいう）を生成するデジタルスチルカメラ（以下、単にカメラともいう）に適用される。また、以下の実施形態の署名検証装置は、例えば、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）に適用される。
【００１７】
以下の実施形態では、画像データが部分的に消されることは、例えば「改竄」と称し、画像データそのものが消されることは、例えば「消去」と称する。また、「画像」は、例えば、動画像（例えば映像）、静止画像（例えば写真）を含む。また、デジタル署名については単に「署名」とも称する。
【００１８】
（第１の実施形態）
図１は、第１の実施形態における署名処理システム１０の概略構成例を示す模式図である。署名処理システム１０は、カメラ２０及びＰＣ５０から構成される。カメラ２０とＰＣ５０とは、特に通信部を持たず、これらの間では、例えば記録媒体を介してデータの受け渡しが行われる。なお、カメラ２０及びＰＣ５０が、通信ケーブルを介して直接に又は通信ネットワークを介して接続される構成でもよい。
【００１９】
署名処理システム１０では、例えば、カメラ２０で撮像された画像データと、この画像データに対する署名データと、を含む合成データＦＧは、ＰＣ５０に読み込まれる。ＰＣ５０は、例えば、合成データＦＧに含まれる署名データを検証し、この検証の結果をモニタ部５３に表示する。
【００２０】
カメラ２０は、例えば、被写体を撮像し、撮像した画像データを生成する画像データ生成機能２０ｚと、カメラ２０の秘密鍵ＫＳＥで画像データを含むデータを暗号化し、署名データを生成する署名機能２０ｙと、を有する。カメラ２０は、例えば端末であり、署名生成装置の一例である。
【００２１】
ＰＣ５０は、例えば、カメラ２０の公開鍵ＫＰＥを取得する公開鍵取得機能５０ｚと、署名データを公開鍵ＫＰＥで復号する署名復号機能５０ｙと、署名検証機能５０ｘと、を有する。署名検証機能５０ｘは、復号されたデータに基づき、画像データの改竄の有無や複数の画像データ間の関連性（例えば連続性）の有無を判定する機能を有する。本実施形態や以下の実施形態では、関連性の有無として連続性の有無を主に例示する。
【００２２】
署名検証機能５０ｘによる判定の結果、モニタ部５３は、画像データに改竄無しかつ連続性が担保される場合に、「ＯＫ」を表示し、改竄有り又は連続性が担保されない場合に、「ＮＧ」を表示する。
【００２３】
図２は、合成データＦＧのファイル構造の一例を示す模式図である。図２では、合成データＦＧとして、連続する２枚の画像を含む合成データＦＧＡ、ＦＧＢが示される。
【００２４】
合成データＦＧＡは、画像データ部ＧＡ０、第１メタデータ部ＧＡ１、及び第２メタデータ部ＧＡ２を含む。画像データ部ＧＡ０には画像データＧＡが含まれる。第２メタデータ部ＧＡ２には、署名データＳＡが含まれる。
【００２５】
合成データＦＧＢは、画像データ部ＧＢ０、第１メタデータ部ＧＢ１、及び第２メタデータ部ＧＢ２を含む。画像データ部ＧＢ０には画像データＧＢが含まれる。第１メタデータ部ＧＢ１には、画像データ部ＧＡ０の画像データＧＡに対して算出されたハッシュ値ＨＡ´´´が含まれる。第２メタデータ部ＧＢ２には、署名データＳＢが含まれる。
【００２６】
尚、ハッシュ値ＨＡ´´´は、画像データ部ＧＡ０の画像データＧＡと第１メタデータ部ＧＡ１とに対して算出されたハッシュ値（画像データＧＡと第１メタデータ部ＧＡ１とのハッシュ値）であってもよい。
【００２７】
尚、「Ａ」に対して算出された又は算出されるハッシュ値を、「Ａ」のハッシュ値とも記載する。
【００２８】
第１メタデータ部ＧＢ１には、相関情報が格納される。この相関情報は、複数のデータ間（例えば画像データＧＡ，ＧＢ間）の相関関係（関連性）を示す。本実施形態では、相関情報として、画像データＧＡのハッシュ値が例示されている。
【００２９】
次に、カメラ２０の構成例について説明する。
図３は、カメラ２０のハードウェア構成例を示すブロック図である。
【００３０】
カメラ２０は、画像を撮像し、撮像された画像データに署名データを合成して合成データを生成する。カメラ２０は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ
Ｕｎｉｔ）／ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）部２１、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）部２２、及びＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）部２３を有する。
【００３１】
尚、カメラ２０は、通信ネットワークを介してＰＣ５０と通信し、合成データを送信する場合、通信ネットワークのデータ転送を制御するＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）／ＰＨＹ（Ｐｈｙｓｉｃａｌ  ｌａｙｅｒ）部（図示せず）を備えてもよい。
【００３２】
ＣＰＵ／ＲＡＭ部２１は、例えばＣＰＵやＲＡＭで構成され、ＩＤ（Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）生成部３１、署名処理部３２、及びデータ合成部３３を有する。
【００３３】
ＩＤ生成部３１は、画像データが生成される毎に、この画像データと紐付けられる通し番号（ＩＤ番号）を、その値が画像データ単位でカウントアップするように、生成する。なお、本実施形態では、ＩＤ生成部３１は使用されず、後述する変形例において使用される。ＩＤ生成部３１は、識別情報生成部の一例である。
【００３４】
署名処理部３２は、ハッシュ計算部３４及び暗号処理部３９を有し、データのハッシュ値を暗号化することで、署名データを生成する。
【００３５】
ハッシュ計算部３４は、一方向性関数としてハッシュ関数（例えば、ＳＨＡ（Ｓｅｃｕｒｅ  Ｈａｓｈ  Ａｌｇｏｒｉｔｈｍ）、ＭＤ５（Ｍｅｓｓａｇｅ  Ｄｉｇｅｓｔ  ５））を用いて、ハッシュ値を導出（例えば算出）する。暗号処理部３９は、秘密鍵ＫＳＥで画像データを含むデータを暗号化する。ハッシュ計算部３４は、一方向性関数導出部の一例である。
【００３６】
データ合成部３３は、画像データ生成部４２で生成された画像データと、署名処理部３２で生成された署名データと、を合成し、合成データを生成する。
【００３７】
ＨＤＤ部２２は、例えば、ＩＤ記憶部３５、署名鍵記憶部３６、合成データ記憶部３７、及びハッシュデータ記憶部３８を有する。ここではＨＤＤを例示するが、ＨＤＤ以外の記憶媒体（例えばＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、フラッシュメモリ）でもよい。
【００３８】
ＩＤ記憶部３５は、例えば、フレームの識別情報である、前回撮像された画像データと紐付けられたＩＤ番号（前回のＩＤ番号）を記憶し、新たにＩＤ番号が生成されると、ＩＤ番号を更新する。尚、ＩＤ生成部３１と同様、本実施形態では、ＩＤ記憶部３５は、使用されず、後述する変形例において使用される。
【００３９】
署名鍵記憶部３６は、例えば、公開鍵暗号方式（例えばＲＳＡ(Ｒｉｖｅｓｔ  Ｓｈａｍｉｒ  Ａｄｌｅｍａｎ)）で用いられる秘密鍵（署名鍵の一例）を記憶する。尚、暗号化処理は、例えば共通鍵暗号方式により行われても良く、この場合、署名鍵記憶部３６は、共通鍵（署名鍵の一例）を記憶する。
【００４０】
合成データ記憶部３７は、例えば、画像データ生成部４２で生成された画像データと、署名処理部３２で生成された署名データと、を合成した合成データを記憶する。
【００４１】
ハッシュデータ記憶部３８は、例えば、ハッシュ計算部３４によって計算されたハッシュ値を記憶する。
【００４２】
ＡＳＩＣ部２３は、例えば、撮像部４１及び画像データ生成部４２を有する。画像データ生成部４２は、データ取得部の一例である。
【００４３】
撮像部４１は、撮像指示を受け付けると、被写体を撮像して、その画像信号を出力する。撮像部４１は、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）を含んで構成される。
【００４４】
画像データ生成部４２は、撮像部４１から画像信号を入力すると、画像データを生成し、画像データに付加データを添付する。付加データには、例えば、ＧＰＳ（Ｇｌｏｂａｌ
Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）による位置情報やタイムスタンプ（日時情報）が含まれる。尚、付加データは添付されなくてもよい。
【００４５】
図４は、カメラ２０の機能的構成例を示すブロック図である。ここでは、画像データに付加データが付加されたデータについても、画像データとして取り扱うことにする。
【００４６】
カメラ２０は、署名処理部３２、データ合成部３３、署名鍵記憶部３６、合成データ記憶部３７、ハッシュデータ記憶部３８、撮像部４１、及び画像データ生成部４２備える。
【００４７】
ハッシュデータ記憶部３８は、例えば、ハッシュ計算部３４で計算された画像データのハッシュ値を時系列に記憶する。ハッシュデータ記憶部３８に時系列に記憶される画像データのハッシュ値の数は任意の値でよい。画像データのハッシュ値の数が２つ以上である場合、後述する図８に示すように、画像データの関連性が得られる。
【００４８】
署名処理部３２は、前述したように、ハッシュ計算部３４及び暗号処理部３９を有する。署名処理部３２は、署名生成部の一例である。
【００４９】
ハッシュ計算部３４は、画像データ生成部４２によって生成された画像データと、ハッシュデータ記憶部３８に記憶された前回のハッシュ値とに対し、ハッシュ関数を用いてハッシュ値を計算する。ハッシュ計算部３４は、この計算されたハッシュ値を今回のハッシュ値として、ハッシュデータ記憶部３８に記憶させる。
【００５０】
暗号処理部３９は、今回のハッシュ値を、署名鍵記憶部３６に記憶された秘密鍵ＫＳＥで暗号化し、署名データを生成する。
【００５１】
データ合成部３３は、生成された署名データと、画像データ生成部４２によって生成された画像データと、を合成して合成データとし、合成データ記憶部３７に記憶させる。
【００５２】
次に、ＰＣ５０の構成例について説明する。
図５は、ＰＣ５０のハードウェア構成例を示すブロック図である。
【００５３】
ＰＣ５０は、署名データが合成された画像データを検証する。ＰＣ５０は、例えば、ＣＰＵ／ＲＡＭ部５１、ＨＤＤ部５２、及びモニタ部５３を有する。尚、ＰＣ５０は、通信ネットワークを介してカメラ２０と通信し、合成データを受信する場合、通信ネットワークのデータ転送を制御するＭＡＣ／ＰＨＹ部（図示せず）を備えてもよい。
【００５４】
ＣＰＵ／ＲＡＭ部５１は、例えばＣＰＵやＲＡＭで構成され、データ読取部６１、ハッシュ計算部６２、署名復号部６３、署名データ検証部６４、判定部６５、及び結果出力部６６を有する。
【００５５】
データ読取部６１は、例えば、カメラ２０から、記憶媒体やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等のインタフェースや通信ネットワークを介して、合成データやカメラ２０の公開鍵ＫＰＥを取得する。データ読取部６１は、データ取得部の一例である。
【００５６】
ハッシュ計算部６２は、例えば、一方向性関数としてのハッシュ関数（例えばＳＨＡ、ＭＤ５）を用いて、ハッシュ値を導出（例えば算出）する。
【００５７】
署名復号部６３は、例えば、署名データを公開鍵（検証鍵の一例）で復号し、画像データを含むデータのハッシュ値を得る。
【００５８】
署名データ検証部６４は、例えば、後述するように、ハッシュ計算部６２によって計算されたハッシュ値と、署名復号部６３によって復号されたハッシュ値と、を比較し、署名データを検証する。
【００５９】
判定部６５は、例えば、ハッシュ計算部６２によって計算されたハッシュ値と、署名復号部６３によって復号されたハッシュ値とが等しい場合、第２メタデータ部のハッシュ値を用いて、合成データに含まれる画像データの連続性の有無を判定する。判定部６５は、関連性判定部の一例である。
【００６０】
結果出力部６６は、例えば、判定部６５による判定結果をモニタ部５３に出力する。
【００６１】
モニタ部５３は、この判定結果を表示する表示部７３を有する。尚、モニタ部５３は、ＰＣ５０に含まれてもよいし、ＰＣ５０とは別体に設けられてもよい。
【００６２】
ＨＤＤ部５２は、例えば、検証鍵記憶部７１を有する。ここではＨＤＤを例示するが、ＨＤＤ以外の記憶媒体（例えばＳＳＤ、フラッシュメモリ）でもよい。
【００６３】
検証鍵記憶部７１は、例えば、公開鍵暗号方式で用いられる公開鍵ＫＰＥ（検証鍵の一例）を記憶する。尚、暗号化処理は、例えば共通鍵暗号方式により行われてもよく、この場合、検証鍵記憶部７１は、共通鍵（検証鍵の一例）を記憶する。
【００６４】
検証鍵記憶部７１に記憶される公開鍵ＫＰＥは、カメラ２０から取得されてもよいし、画像データに埋め込まれている画像から取得されてもよいし、予めＰＣ５０に登録されてもよい。尚、復号処理は、例えば共通鍵暗号方式に対応する復号方式により行われても良く、この場合には、共通鍵が記憶される。
【００６５】
図６は、ＰＣ５０の機能的構成例を示すブロック図である。
ＰＣ５０は、データ読取部６１、ハッシュ計算部６２、署名復号部６３、検証鍵記憶部７１、署名データ検証部６４、判定部６５、及び結果出力部６６を有する。ＰＣ５０は、表示部７３を含んでも良い。
【００６６】
データ読取部６１は、例えば、カメラ２０から連続した合成データＦＧＡ，ＦＧＢを読み取る。また、データ読取部６１は、カメラ２０の公開鍵を取得し、検証鍵記憶部７１に記憶させる。
【００６７】
ここでは、合成データＦＧＡは、例えば、図２に示すように、画像データ部ＧＡ０、第１メタデータ部ＧＡ１、及び第２メタデータ部ＧＡ２を含んで構成される。同様に、合成データＦＧＢは、例えば、画像データ部ＧＢ０、第１メタデータ部ＧＢ１、及び第２メタデータ部ＧＢ２を含んで構成される。
【００６８】
第１メタデータ部ＧＢ１には、図２に示すように、例えば、画像データ部ＧＡ０の画像データＧＡと第１メタデータ部ＧＡ１のハッシュ値ＨＡ´´´が記憶される。
【００６９】
同様に、第１メタデータ部ＧＡ１には、例えば、前回の画像データ部の画像データと第１メタデータ部のデータのハッシュ値が記憶される。このハッシュ計算は、例えば、カメラ２０により行われている。
【００７０】
ハッシュ計算部６２は、データ読取部６１で読み取られた画像データ部ＧＡ０の画像データＧＡと第１メタデータ部ＧＡ１に対し、ハッシュ関数を用いてハッシュ値ＨＡ´を計算する。
【００７１】
同様に、ハッシュ計算部６２は、データ読取部６１で読み取られた画像データ部ＧＢ０の画像データＧＢと第１メタデータ部ＧＢ１に対し、ハッシュ関数を用いてハッシュ値ＨＢ´を計算する。
【００７２】
署名復号部６３は、データ読取部６１で読み取られた合成データＦＧＡの第２メタデータ部ＧＡ２に記憶された署名データＳＡを復号し、画像データ部ＧＡ０の画像データＧＡと第１メタデータ部ＧＡ１のハッシュ値ＨＡ´´を得る。
【００７３】
同様に、署名復号部６３は、データ読取部６１で読み取られた合成データＦＧＢの第２メタデータ部ＧＢ２に記憶された署名データＳＢを復号し、画像データ部ＧＢ０の画像データＧＢと第１メタデータ部ＧＢ１のハッシュ値ＨＢ´´を得る。
【００７４】
署名データ検証部６４は、ハッシュ計算部６２で計算されたハッシュ値ＨＡ´，ＨＢ´と、署名復号部６３で得られたハッシュ値ＨＡ´´，ＨＢ´´とをそれぞれ比較する。ＨＡ´≠ＨＡ´´又はＨＢ´≠ＨＢ´´である場合、署名データ検証部６４は、画像データＧＡ，ＧＢの検証に失敗したと判断し、この判断結果を結果出力部６６に出力する。結果出力部６６は、検証結果が失敗したことを表す「ＮＧ」（ＮＧ表示）をモニタ部５３の表示部７３に表示させる。
【００７５】
ここでの画像データの検証に失敗したとは、署名生成装置としてのカメラ２０により生成された画像データと、署名検証装置としてのＰＣ５０により取得された画像データと、が異なると判断されたことを意味する。よって、署名データ検証部６４は、カメラ２０での画像データとＰＣ５０での画像データとが一致しておらず、画像データが改竄されていると判断できる。
【００７６】
一方、ＨＡ´＝ＨＡ´´且つＨＢ´＝ＨＢ´´である場合、署名データ検証部６４は、この比較結果を判定部６５に出力する。
【００７７】
判定部６５は、データ読取部６１で読み取られた合成データＦＧＢの第１メタデータ部ＧＢ１に含まれる画像データＧＡのハッシュ値ＨＡ´´´を得る。判定部６５は、このハッシュ値ＨＡ´´´と、前述したハッシュ値ＨＡ´（＝ＨＡ´´）とを比較する。
【００７８】
ＨＡ´≠ＨＡ´´´である場合、判定部６５は、画像データＧＡ，ＧＢの連続性が得られず、画像データの検証に失敗したと判断し、この判断結果を結果出力部６６に出力する。結果出力部６６は、検証結果が失敗したことを表す「ＮＧ」（ＮＧ表示）をモニタ部５３の表示部７３に表示させる。
【００７９】
一方、ＨＡ´＝ＨＡ´´´である場合、判定部６５は、画像データＧＡ，ＧＢの連続性が担保され、画像データの検証に成功したと判断し、この判断結果を結果出力部６６に出力する。結果出力部６６は、検証結果が成功したことを表す「ＯＫ」（ＯＫ表示）をモニタ部５３の表示部７３に表示させる。
【００８０】
このように、ＰＣ５０は、ＨＡ´＝ＨＡ´´且つＨＢ´＝ＨＢ´´であることで、画像データＧＡ，ＧＢの正当性、即ち画像データ毎に改竄されていないことを検証できる。更に、ＰＣ５０は、ＨＡ´＝ＨＡ´´´であることで、画像データＧＢを含む合成データＦＧＢに含まれる画像データＧＡに関する相関情報を用いて、画像データＧＡ，ＧＢの連続性を保証できる。
【００８１】
次に、合成データのファイル構造例について説明する。
図２に示した合成データのファイル構造の他、例えば以下の合成データのファイル構造が挙げられる。
【００８２】
図７（Ａ），（Ｂ）は、カメラ２０が生成する合成データのファイル構造例を示す模式図である。
【００８３】
図７（Ａ）は、画像データ部とメタデータ部とが１つのファイルで構成されたＥｘｉｆ（Ｅｘｃｈａｎｇｅａｂｌｅ  ｉｍａｇｅ  ｆｉｌｅ  ｆｏｒｍａｔ）フォーマットを示す。Ｅｘｉｆフォーマットでは、例えば、メタデータ部には署名データが含まれ、画像データ部には画像データが含まれる。署名データには、付加データが結合されてもよい。画像データには、付加データが結合されてもよい。付加データは、例えば、画像データの撮像場所や日付の情報を含む。Ｅｘｉｆフォーマットを用いると、データ管理を容易化できる。
【００８４】
図７（Ｂ）は、画像データと署名データとが別々のファイルで構成された例である。この場合も、画像データ又は署名データに付加データが結合されてもよい。
【００８５】
図８（Ａ）〜（Ｃ）は、様々なファイル構造を持つ合成データにおける画像データの関連性を説明するための模式図である。
【００８６】
図８（Ａ）では、合成データＦＧＢの署名データＳＢは、画像データＧＢと前回の画像データＧＡのハッシュ値ＨＡとに対し、ハッシュ関数を用いてハッシュ値を計算し、このハッシュ値を、署名鍵記憶部３６に記憶された秘密鍵（署名鍵）を使って暗号化することで生成される。
【００８７】
即ち、過去の画像データに基づく相関情報（ここでは、画像データのハッシュ値）を用いて署名データが生成されるので、署名検証により画像データの連続性（関連性）を判定できる。尚、図８（Ａ）に示したファイル構造は、図２に示したファイル構造と同様である。
【００８８】
図８（Ｂ）では、合成データが時系列で３つ連続し、過去（前回以前）の各画像データのハッシュ値を相関情報として用いる場合を例示する。３枚目の合成データＦＧＣに含まれる署名データＳＣは、今回の合成データＦＧＣに含まれる画像データＧＣと、前々回の画像データＧＡのハッシュ値ＨＡと、前回の画像データＧＢのハッシュ値ＨＢと、に基づいて生成される。
【００８９】
具体的には、署名処理部３２は、画像データＧＣ、ハッシュ値ＨＡ、及びハッシュ値ＨＢに対し、ハッシュ関数を用いてハッシュ値を計算し、署名鍵を使ってこのハッシュ値を暗号化することで、署名データＳＣを生成する。図８（Ｂ）では、署名生成は、今回のデータ取得時に行われる。
【００９０】
従って、検証しようとしている画像データの過去の複数の画像データを用いて署名データが生成されるので、過去の複数の画像データとの連続性を保証できる。また、関連付けされた画像データの枚数が増加することで、関連付けされた範囲での画像データの抜け等を確認でき、連続性の保証能力を向上できる。
【００９１】
図８（Ｃ）では、図８（Ｂ）と同様に、合成データが時系列で３つ連続し、前回及び次回に取得される各画像データのハッシュ値を相関情報として用いる場合を例示する。合成データＦＧＢの署名データＳＢは、画像データＧＢと、前回の画像データＧＡのハッシュ値ＨＡと、次回の画像データＧＣのハッシュ値ＨＣと、に基づいて生成される。
【００９２】
具体的には、署名処理部３２は、画像データＧＢ、ハッシュ値ＨＡ、及びハッシュ値ＨＣに対し、ハッシュ関数を用いてハッシュ値を計算し、署名鍵を使ってこのハッシュ値を暗号化することで、署名データＳＢを生成する。図８（Ｃ）では、署名生成は、次回のデータ取得時に行われる。
【００９３】
従って、検証しようとしている画像データの前後の画像データを用いて署名データが生成されるので、前後の画像データとの連続性を保証できる。また、関連付けされた画像データの枚数が増加することで、関連付けされた範囲での画像データの抜け等を確認でき、連続性の保証能力を向上できる。
【００９４】
次に、署名処理システム１０の動作例について説明する。
図９は、カメラ２０による署名動作手順の一例を示すフローチャートである。
【００９５】
撮像部４１は、撮像指示を受け付けるまで待ち、撮像指示を受け付けると、被写体を撮像してその画像信号を出力する（Ｓ１）。撮像指示は、例えば図示しない操作部（ボタン等）により受け付けられる。
【００９６】
画像データ生成部４２は、撮像部４１から画像信号を入力すると、付加データを添付した画像データを生成する（Ｓ２）。
【００９７】
署名処理部３２は、前回のハッシュ値をハッシュデータ記憶部３８から読み込む（Ｓ３）。
【００９８】
ハッシュ計算部３４は、今回の画像データと、ステップＳ３でハッシュデータ記憶部３８から読み込まれた前回のハッシュ値と、に対し、ハッシュ関数を用いて今回のハッシュ値を計算する（Ｓ４）。
【００９９】
署名処理部３２は、今回のハッシュ値をハッシュデータ記憶部３８に記憶させる。また、署名処理部３２は、このハッシュ値を署名鍵記憶部３６に記憶された秘密鍵で暗号化して、署名データを生成する（Ｓ５）。
【０１００】
データ合成部３３は、画像データ生成部４２で生成された画像データと、署名処理部３２で生成された署名データと、を合成して合成データを生成し、合成データ記憶部３７に記憶させる（Ｓ６）。この後、カメラ２０は本動作を終了する。
【０１０１】
次に、ＰＣ５０の動作例について説明する。ＰＣ５０の事前準備として、画像データを復号するための公開鍵を取得する場合、前述したように、種々の方法がある。
【０１０２】
例えば、画像データに公開鍵が埋め込まれている場合、ＰＣ５０が画像データに対し画像処理を行うことで、公開鍵が抽出されてもよい。また、ＰＣ５０の例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）に公開鍵が予め記憶されている場合、ＰＣ５０がこの公開鍵を読み出すことで、公開鍵が取得されてもよい。また、ＰＣ５０がカメラ２０と通信可能に接続されている場合、ＰＣ５０がカメラ２０から公開鍵を受信してもよい。また、ＰＣ５０が特定のサーバ装置と通信ネットワークを介して接続され、このサーバ装置から公開鍵を取得してもよい。
【０１０３】
図１０は、ＰＣ５０による事前準備動作手順の一例を示すフローチャートである。図１０では、通信ネットワークを介して公開鍵を取得することを例示する。
【０１０４】
通信ネットワークを介してサーバ装置から公開鍵を取得する場合、例えば、公開鍵暗号基盤（ＰＫＩ：Ｐｕｂｌｉｃ  Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）を使った暗号通信プロトコルが広く利用される。この暗号通信プロトコルは、例えば、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）／ＴＬＳ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ Ｓｅｃｕｒｉｔｙ）を含む。ＰＫＩでは、ネットワークに繋がった互いの装置が、それぞれ信頼した認証局によって発行されるデジタル証明書を使って認証が行われる。
【０１０５】
ＰＣ５０の通信部（図示せず）は、通信ネットワーク４０を介して公開鍵ＫＰＥを登録しているサーバ装置（図示せず）に接続されるまで待つ（Ｓ１１）。
【０１０６】
データ読取部６１は、通信部を介してサーバ装置と接続されると、カメラ２０が保持する秘密鍵ＫＳに対応する公開鍵ＫＰＥを読み取る（Ｓ１２）。ここでは、カメラ毎に公開鍵が設定されているが、各々の画像データ毎に公開鍵が異なる場合、データ読取部６１は、画像データに対応する公開鍵を読み取ってもよい。
【０１０７】
検証鍵記憶部７１は、データ読取部６１によって読み取られた公開鍵を記憶する（Ｓ１３）。この後、ＰＣ５０は公開鍵取得動作を終了する。
【０１０８】
図１１は、ＰＣ５０による検証動作手順の一例を示すフローチャートである。
【０１０９】
データ読取部６１は、カメラ２０で撮像された合成データを入力するまで待つ（Ｓ２１）。ここでは、連続する２枚の画像を含む合成データＦＧＡ，ＦＧＢが入力されることを想定する。
【０１１０】
データ読取部６１によって合成データＦＧＡ，ＦＧＢが読み取られると、ハッシュ計算部６２は、合成データＦＧＡの画像データ部ＧＡ０の画像データＧＡと第１メタデータ部ＧＡ１のハッシュ値ＨＡ´を計算する（Ｓ２２）。同様に、ハッシュ計算部６２は、合成データＦＧＢの画像データ部ＧＢ０と第１メタデータ部ＧＢ１の画像データＧＢのハッシュ値ＨＢ´を計算する（Ｓ２２）。
【０１１１】
署名復号部６３は、合成データＦＧＡの第２メタデータ部ＧＡ２の署名データＳＡを公開鍵ＫＰＥで復号し、ハッシュ値ＨＡ´´を得る（Ｓ２３）。同様に、署名復号部６３は、合成データＦＧＢの第２メタデータ部ＧＢ２の署名データＳＢを公開鍵ＫＰＥで復号し、ハッシュ値ＨＡ´´を得る（Ｓ２３）。
【０１１２】
署名データ検証部６４は、ハッシュ値ＨＡ´とハッシュ値ＨＡ´´とが等しく、且つ、ハッシュ値ＨＢ´とハッシュ値ＨＢ´´とが等しいか否かを判別する（Ｓ２４）。
【０１１３】
ハッシュ値ＨＡ´とハッシュ値ＨＡ´´とが等しく、かつハッシュ値ＨＢ´とハッシュ値ＨＢ´´とが等しい場合、署名データ検証部６４は、合成データＦＧＡ，ＦＧＢそれぞれの正当性の検証に成功したと判断する。この場合、判定部６５は、データ読取部６１で読み取られた第１メタデータ部ＧＢ１のハッシュ値ＨＡ´´´を取得する（Ｓ２５）。
【０１１４】
判定部６５は、ハッシュ値ＨＡ´（＝ＨＡ´´）とハッシュ値ＨＡ´´´とを比較する（Ｓ２６）。
【０１１５】
ハッシュ値ＨＡ´とハッシュ値ＨＡ´´´とが等しい場合、判定部６５は、画像データＧＡ，ＧＢそれぞれが正当であり、且つ、画像データＧＡ，ＧＢの連続性が担保されたと判断する。この場合、結果出力部６６は、表示部７３に検証成功を表す「ＯＫ」を表示させる（Ｓ２７）。この後、ＰＣ５０は本動作を終了する。
【０１１６】
一方、Ｓ２４でハッシュ値ＨＡ´とハッシュ値ＨＡ´´とが異なる、又は、ハッシュ値ＨＢ´とハッシュ値ＨＡ´´とが異なる場合、判定部６５は、画像データＧＡ，ＧＢの正当性の検証に失敗した（改竄された）と判断する。
【０１１７】
また、Ｓ２６でハッシュ値ＨＡ´（＝ＨＡ´´）とハッシュ値ＨＡ´´´とが異なる場合、判定部６５は、画像データＧＡ，ＧＢの連続性が担保されなかったと判断する。
【０１１８】
結果出力部６６は、画像データＧＡ，ＧＢが正当でなかった場合、又は、画像データＧＡ，ＧＢの連続性が担保されなかった場合、表示部７３に検証失敗を表す「ＮＧ」を表示させる（Ｓ２８）。この後、ＰＣ５０は本動作を終了する。
【０１１９】
このように、署名処理システム１０は、複数の画像データの各々を検証できるとともに、連続性を有する画像データの信頼性を向上できる。これにより、データの改竄や消去が行われていないことを担保でき、複数の画像データの相関関係を保証できる。従って、画像データの証拠性を向上できる。
【０１２０】
（変形例）
図１２は、変形例における画像データの関連性を説明するための模式図である。合成データＦＧＢの第１メタデータ部ＧＢ１には、前回の画像データＧＡのハッシュ値ＨＡと今回のＩＤ番号（ＩＤ２）とが記憶される。今回のＩＤ番号（ＩＤ２）は、例えば、前回のＩＤ番号（ＩＤ１）から値１カウントアップした値であるが、今回データと前回データとの関係性（例えば連続性）を識別できれば、他の値でもよい。ＩＤ番号は、ＩＤ生成部３１により、画像データ毎に生成される。
【０１２１】
第２メタデータ部ＧＢ２に記憶される署名データＳＢは、今回の画像データＧＢと、前回の画像データＧＡのハッシュ値ＨＢと、今回のＩＤ番号（ＩＤ２）と、に基づいて生成される。具体的には、署名処理部３２は、画像データＧＢ、ハッシュ値ＨＢ、及び今回のＩＤ番号に対し、ハッシュ関数を用いてハッシュ値を計算し、署名鍵を使ってこのハッシュ値を暗号化することで、署名データＳＢを生成する。
【０１２２】
このように、変形例では、第１メタデータ部にＩＤ番号が含まれるので、ＩＤ番号を確認することで、撮像された順番を迅速に確認できる。また、ＩＤ番号を画像データに電子透かし等により視認可能に埋め込んだ場合、ＩＤ番号の視認性が向上し、画像データの連続性をユーザが容易に認識できる。また、前回の画像データのハッシュ値とＩＤ番号とを用いて署名データが生成されるので、証拠性が向上し、連続性を容易かつ高精度に確認できる。
【０１２３】
また、相関情報として、ＩＤ番号とハッシュ値とを連携させることで、複数の画像データ間の連続性の証拠能力を向上させることができる。これにより、異なるカメラ２０により撮像されたが偶然に画像データが連結されている場合、ＩＤ及びハッシュ値の双方を加味することで、証拠性を一層向上できる。
【０１２４】
尚、図１２の変形例では、ＩＤ番号を用いた場合を示したが、ＩＤ番号を用いる代わりに、前回の署名データ、前回の画像データ、又はこれらの組み合わせを用いてもよい。つまり、第２メタデータ部ＧＢ２に記憶される署名データＳＢは、画像データＧＢと、前回の画像データＧＡのハッシュ値ＨＡと、今回のＩＤ番号、前回の署名データ及び前回の画像データのいずれか１つ又は組み合わせと、に基づいて生成されてもよい。
【０１２５】
具体的には、署名処理部３２は、画像データＧＢと、ハッシュ値ＨＡと、今回のＩＤ番号、前回の署名データ、及び前回の画像データのいずれか１つ又は組み合わせと、に対し、ハッシュ関数を用いてハッシュ値を計算してもよい。署名処理部３２は、署名鍵を使ってこのハッシュ値を暗号化することで、署名データＳＢを生成してもよい。
【０１２６】
このように、今回のＩＤ番号、前回の署名データ及び前回の画像データのいずれか１つ又は組み合わせを用いて署名データが生成されることで、ＰＣ５０は、複数の相関情報を用いて署名検証できる。従って、ＰＣ５０、署名処理システム１０は、複数の画像データの連続性の高精度に判定でき、複数の画像データ間の関連性を担保できる。
【０１２７】
（第２の実施形態）
第１の実施形態では、第１メタデータ部に、画像データのハッシュ値を記憶し、相関情報としてハッシュ値を用いることで、画像データの連続性が担保されることを例示した。第２の実施形態では、ハッシュ値を用いることなく、ＩＤ番号を用いることで、画像データの連続性を担保することを例示する。
【０１２８】
図１３は第２の実施形態におけるカメラ２０Ａの機能的構成例を示すブロック図である。第２の実施形態の署名処理システムにおいて、第１の実施形態の署名処理システムと同一の構成要素については、同一の符号を用いることで、その説明を省略又は簡略化する。
【０１２９】
カメラ２０Ａは、ＩＤ生成部３１、ＩＤ記憶部３５、撮像部４１、画像データ生成部４２、署名鍵記憶部３６、署名処理部３２Ａ、データ合成部３３、及び合成データ記憶部３７を備える。
【０１３０】
カメラ２０Ａは、撮像部４１によって撮像される画像データと通し番号（ＩＤ番号）とを紐付けて、デジタル署名を行う。カメラ２０Ａは、第１の実施形態と比較すると、ハッシュ計算部３４及びハッシュデータ記憶部３８を省き、署名処理部３２Ａを有する。また、第１の実施形態では使用されなかった、ＩＤ生成部３１及びＩＤ記憶部３５を使用する。
【０１３１】
ＩＤ生成部３１は、今回の画像データに対し、通し番号となるように、ＩＤ記憶部３５に記憶された前回のＩＤ番号に値１カウントアップされたＩＤ番号を生成し、署名処理部３２Ａに送る。また、ＩＤ生成部３１は、更新されたＩＤ番号をＩＤ記憶部３５に記憶させる。
【０１３２】
署名処理部３２Ａは、画像データ生成部４２から送られた画像データと、ＩＤ生成部３１で生成されたＩＤ番号と、に対し、署名鍵記憶部３６に記憶された秘密鍵を用いて、暗号処理部３９で暗号化することで署名し、署名データを生成する。
【０１３３】
データ合成部３３は、画像データ生成部４２で生成された画像データ及び署名処理部３２Ａで生成された署名データを合成し、合成データを生成する。データ合成部３３は、合成データを合成データ記憶部３７に記憶させる。
【０１３４】
図１４は、カメラ２０Ａによる署名動作手順の一例を示すフローチャートである。図１４において、第１の実施形態における図９のステップと同一のステップについては、同一のステップ番号を付すことで、その説明を省略又は簡略化する。
【０１３５】
Ｓ２において、画像データ生成部４２が、画像データ又は付加データが付された画像データを生成すると、ＩＤ生成部３１は、ＩＤ記憶部３５から前回のＩＤ番号を読み込む（Ｓ３Ａ）。
【０１３６】
ＩＤ生成部３１は、例えば、画像データ単位での通し番号となるように、前回のＩＤ番号に値１をカウントアップして、今回のＩＤ番号を生成する（Ｓ４Ａ）。
【０１３７】
ＩＤ記憶部３５は、ＩＤ生成部３１で生成されたＩＤ番号を、例えば上書きするように更新して記憶する（Ｓ４Ｂ）。
【０１３８】
署名処理部３２Ａは、画像データ生成部４２で生成された画像データと、ＩＤ生成部３１で生成されたＩＤ番号と、に対し、署名鍵記憶部３６に記憶された秘密鍵で暗号化して、署名データを生成する（Ｓ５Ａ）。データ合成部３３が画像データと署名データとを合成して合成データを生成する動作は、第１の実施形態と同様である。
【０１３９】
一方、ＰＣは、図示はしていないが、第１の実施形態のＰＣ５０と同様、データ読取部６１、署名復号部６３、検証鍵記憶部７１、及び判定部６５を有する。署名復号部６３は、公開鍵を用いて署名データを復号して署名データに含まれるＩＤ番号を読み出す。判定部６５は、このＩＤ番号と前後の画像データのＩＤ番号とを比較することで、連続性の有無を判定する。また、署名データの正当性についても検証できる。
【０１４０】
つまり、本実施形態のＰＣは、今回の画像データと相関のある前回の画像データのハッシュ値に代わり、前回の画像データに付されるＩＤ番号と相関がある今回のＩＤ番号を用いて、画像データの正当性及び連続性を検証する。
【０１４１】
このように、第２の実施形態では、例えば、相関情報として連番となるＩＤ番号を用いて署名データを生成することで、画像データの連続性（関連性）を検証できる。
【０１４２】
図１５（Ａ），（Ｂ）は、様々なファイル構造を持つ合成データにおける画像データの関連性の一例を説明するための模式図である。
【０１４３】
図１５（Ａ）は、画像データ部ＧＡ０（ＧＢ０）の画像データＧＡ（ＧＢ）と、第１メタデータ部ＧＡ１（ＧＢ１）のＩＤ番号と、に対し、秘密鍵で暗号化して署名データＳＡ（ＳＢ）を得る場合を示す。ＩＤ番号は、前述したように、例えば通し番号となる連番である。
【０１４４】
図１５（Ｂ）は、画像データ部ＧＡ０（ＧＢ０）の画像データＧＡ（ＧＢ）に、ＩＤ番号が透かしや画像として挿入され、画像データＧＡ（ＧＢ）を公開鍵で暗号化して署名データＳＡ（ＳＢ）を得る場合を示す。このように、例えば、連番となるＩＤ番号を用いて署名データが生成されることで、画像データの関連性が得られる。
【０１４５】
尚、第２の実施形態では、相関情報として、ハッシュ値を用いることなく、ＩＤ番号（識別番号）を用いて、画像データの連続性を担保する場合を示した。これ以外でも、相関情報として、署名データや前後の画像データそのものを用いてもよい。この場合、ＰＣは、ＩＤ番号と同様、署名データや画像データを用いて、合成データの正当性や連続性の有無を判定してもよい。
【０１４６】
このように、相関情報としてのＩＤ番号を用いて、複数の画像データ間の関連性を容易に保証できる。
【０１４７】
（第３の実施形態）
第３の実施形態では、相関情報として、ハッシュ値を用いることなく、署名データを用いることを想定する。
【０１４８】
図１６は、第３の実施形態におけるカメラ２０Ｂの構成例を示すブロック図である。カメラ２０Ｂは、撮像部４１、画像データ生成部４２、署名処理部３２Ｂ、署名鍵記憶部３６、署名データ記憶部３８Ｂ、データ合成部３３、及び合成データ記憶部３７を備える。
【０１４９】
カメラ２０Ｂにおいて、カメラ２０，２０Ａと同一の構成要素については、同一の符号を用いることで、その説明を省略又は簡略化する。
【０１５０】
署名処理部３２Ｂは、画像データ生成部４２から送られた画像データと、署名データ記憶部３８Ｂに記憶された署名データ（前回の署名データ）と、に対し、署名鍵記憶部３６に記憶された秘密鍵を用いて、暗号処理部３９で暗号化することで署名し、署名データを生成する。生成された署名データ（今回の署名データ）は、署名データ記憶部３８Ｂに送られる。
【０１５１】
署名データ記憶部３８Ｂは、例えば、署名処理部３２Ｃにより生成された署名データ（今回の署名データ）を記憶する。
【０１５２】
図１７は、本実施形態におけるファイル構造を持つ合成データにおける画像データの関連性の一例を説明するための模式図である。
【０１５３】
図１７は、図８（Ａ）、図１２、図１５（Ａ）等に対応する。図１７では、合成データＦＧＢの第１メタデータ部ＧＢ１に、署名データＳＡが格納されること以外は、図８（Ａ）等と同様である。つまり、相関情報が、署名データとされている。相関情報が、合成データ３つ以上のデータから生成される場合も、同様である。
【０１５４】
このように、相関情報としての署名データを用いて、複数の画像データ間の関連性を保証できる。
【０１５５】
（第４の実施形態）
第４の実施形態では、相関情報として、ハッシュ値を用いることなく、画像データそのものを用いることを想定する。
【０１５６】
図１８は、第３の実施形態におけるカメラ２０Ｂの構成例を示すブロック図である。カメラ２０Ｃは、撮像部４１、画像データ生成部４２、署名処理部３２Ｃ、署名鍵記憶部３６、画像データ記憶部３８Ｃ、データ合成部３３、及び合成データ記憶部３７を備える。
【０１５７】
カメラ２０Ｃにおいて、カメラ２０，２０Ａ，２０Ｂと同一の構成要素については、同一の符号を用いることで、その説明を省略又は簡略化する。
【０１５８】
署名処理部３２Ｃは、画像データ生成部４２から送られた画像データと、画像データ記憶部３８Ｃに記憶された画像データ（前回の署名データ）と、に対し、署名鍵記憶部３６に記憶された秘密鍵を用いて、暗号処理部３９で暗号化することで署名し、署名データを生成する。
【０１５９】
画像データ記憶部３８Ｃは、例えば、画像データ生成部４２により生成された画像データ（今回の画像データ）を記憶する。
【０１６０】
図１９は、本実施形態におけるファイル構造例を示す模式図である。図１９は、図８（Ａ）、図１２、図１５（Ａ）、図１８等に対応する。図１９では、合成データＦＧＢの第１メタデータ部ＧＢ１に、画像データＧＡが格納されること以外は、図８（Ａ）等と同様である。つまり、相関情報が、画像データそのものとされている。相関情報が、合成データ３つ以上のデータから生成される場合も、同様である。
【０１６１】
このように、相関情報としての画像データそのものを用いて、複数の画像データ間の関連性を保証できる。
【０１６２】
以上のように、上記実施形態の署名処理システム１０のカメラ２０，２０Ａ〜２０Ｃは、撮像部４１及び署名処理部３２，３２Ａ〜３２Ｃを備える。撮像部４１は、相互に関連する第１の画像データを含む複数の画像データを取得する。署名処理部３２，３２Ａ〜３２Ｃは、第１の画像データ、複数の画像データ間の相関関係を示す相関情報、及び署名鍵に基づいて、第１のデータ及び相関情報に対する第１の署名データを生成する。
【０１６３】
これにより、カメラ２０，２０Ａ〜２０Ｃは、相関情報で関連付けされた複数の画像データに対する改竄や消去（抜け等）をＰＣ５０が確認できるように、署名データを生成できる。従って、カメラ２０，２０Ａ、ＰＣ５０、署名処理システムは、画像データに対する関連性（例えば連続性）の保証能力を向上させることができる。
【０１６４】
よって、カメラ２０，２０Ａ〜２０Ｃ、ＰＣ５０、署名処理システム１０は、例えば、１度だけ書き込み可能なワンタイムの高価な記憶媒体を用いなくても、証拠能力を向上させることができる。また、カメラ２０，２０Ａ〜２０Ｃは、署名処理して生成された合成データを書き込む記憶媒体の種類によらずに、ＰＣ５０により合成データを検証可能な状態にできる。
【０１６５】
よって、ＰＣ５０は、例えば、ワンタイム記憶媒体から読み出しして画像データが改竄された場合でも、ハッシュ値等を用いて画像データの改竄を確認でき、更に画像データの関連性の有無も確認できる。
【０１６６】
従って、ＰＣ５０は、２０，２０Ａ〜２０Ｃの所有者や管理者が、例えば、意図的に改竄や消去していない、連続写真（連続する複数の画像データ）の中から不都合な写真を１枚又は一部消去していない、ことを容易に保証できる。
【０１６７】
また、撮像部４１は、時系列に連続する複数のデータを取得してもよい。これにより、カメラ２０，２０Ａ〜２０Ｃ、署名処理システムは、画像データに対する関連性の保証能力を向上させることができる。
【０１６８】
また、撮像部４１は、第１の画像データと第２の画像データとを撮像してもよい。署名処理部３２，３２Ａは、第１の画像データ、第１の画像データと第２の画像データとの相関関係を示す相関情報、及び署名鍵に基づいて、第１の署名データを生成してもよい。
【０１６９】
これにより、ＰＣ５０は、例えば２つの画像データが連続する場合に、相関情報を参照することで、２つの画像データの関連性の有無を確認できる。
【０１７０】
また、署名処理部３２，３２Ａは、相関情報としての第２の画像データのハッシュ値に基づいて、第１の署名データを生成してもよい。
【０１７１】
これにより、カメラ２０、署名処理システムは、画像データに関する一方向性の固有の値を用いて、第１の画像データと第２の画像データとの関連性の有無を判別できる。また、カメラ２０は、ハッシュ値を用いることで、相関情報を容易に生成できる。
【０１７２】
また、カメラ２０，２０Ａは、画像データのＩＤを生成するＩＤ生成部３１を備えてもよい。署名処理部３２，３２Ａは、相関情報としての第１の画像データのＩＤに基づいて、第１の署名データを生成してもよい。
【０１７３】
これにより、カメラ２０，２０Ａ、署名処理システムは、画像データ毎に付されるＩＤを用いて、第１の画像データと第２の画像データとの関連性の有無を判別できる。また、カメラ２０，２０Ａは、ＩＤを例えば連番で生成すればよいので、相関情報を容易に生成できる。
【０１７４】
また、署名処理部３２Ｂは、相関情報としての第２の画像データに対する第２の署名データに基づいて、第１の署名データを生成してもよい。
【０１７５】
これにより、例えば、第１の画像データに連続する第２の画像データに基づいて生成された第２の署名データが相関情報となるので、ＰＣ５０は、第１の画像データと第２の画像データとの関連性の有無を判断できる。
【０１７６】
また、署名処理部３２Ｃは、相関情報としての第２の画像データに基づいて、第１の署名データを生成してもよい。
【０１７７】
これにより、カメラ２０Ｃ、署名処理システムは、相関情報として例えば連続する画像データそのものを用いることができるので、相関情報を簡単に得ることができ、容易に署名生成できる。
【０１７８】
また、第１の画像データのＩＤは、表示部７３により第１のデータに付加された可視データとして表示されてもよい。
【０１７９】
これにより、カメラ２０，２０Ａ、署名処理システムは、例えば、改竄や前後の画像データとの関連性を調査すべき第１の画像データにおいて、電子透かし等によりＩＤの視認性を向上できる。また、カメラ２０，２０Ａ、署名処理システムは、可視データとするこことで、相関情報の扱いを容易化できる。ＩＤは、例えば、第１の画像データの空きフォーマットの部分に書き込まれてもよい。
【０１８０】
また、カメラ２０，２０Ａ〜２０Ｃは、複数の画像データと第１の署名データとを送信する送信部（不図示）を備えてもよい。
【０１８１】
これにより、カメラ２０，２０Ａ〜２０Ｃは、関連性の探査対象としての画像データと署名データとを簡単にＰＣ５０へ送信できる。
【０１８２】
また、ＰＣ５０は、データ読取部６１、署名復号部６３と、署名データ検証部６４、及び判定部６５を備える。データ読取部６１、相互に関連する第１の画像データを含む複数の画像データと、第１の署名データと、を取得する。第１の署名データは、第１の画像データと複数の画像データ間の相関関係を示す相関情報とに対して署名処理されたデータである。署名復号部６３は、検証鍵を用いて、第１の署名データを復号する。判定部６５は、相関情報に基づいて、複数のデータ間の関連性の有無を判定する。
【０１８３】
これにより、ＰＣ５０は、相関情報で関連付けされた複数の画像データに対する改竄や消去（抜け等）を確認できる。従って、カメラ２０，２０Ａ〜２０Ｃ、ＰＣ５０、及び署名処理システムは、画像データに対する関連性（例えば連続性）の保証能力を向上させることができる。
【０１８４】
よって、カメラ２０，２０Ａ〜２０Ｃ、ＰＣ５０、署名処理システム１０は、例えば、１度だけ書き込み可能なワンタイムの高価な記憶媒体を用いなくても、証拠能力を向上させることができる。また、ＰＣ５０は、署名処理して生成された合成データを書き込む記憶媒体の種類によらずに、画像データを検証できる。
【０１８５】
また、ＰＣ５０は、例えば、ワンタイム記憶媒体から読み出しして画像データが改竄された場合でも、ハッシュ値等を用いて画像データの改竄を確認でき、更に画像データの関連性の有無も確認できる。
【０１８６】
従って、ＰＣ５０は、カメラ２０，２０Ａの所有者や管理者が、例えば、意図的に改竄や消去していない、連続写真（連続する複数の画像データ）の中から不都合な写真を１枚又は一部消去していない、ことを容易に保証できる。
【０１８７】
また、データ読取部６１は、時系列に連続する複数のデータを取得してもよい。これにより、カメラ２０，２０Ａ〜２０Ｃ、ＰＣ５０、及び署名処理システムは、画像データに対する関連性の保証能力を向上させることができる。
【０１８８】
また、データ読取部６１は、第１の画像データと第２の画像データとを取得してもよい。判定部６５は、相関情報としての第２の画像データのハッシュ値に基づいて、複数の画像データ間の関連性の有無を判定してもよい。
【０１８９】
これにより、画像データから容易に導出可能であり、一方向性の特性により安全性の高いハッシュ値を、相関情報として用いる。従って、ＰＣ５０は、署名検証に係る負荷を低減して、複数の画像データ間の改竄の有無や関連性の有無を判定できる。
【０１９０】
また、ＰＣ５０は、第２の画像データのハッシュ値である第１のハッシュ値（例えばＨＡ´）を導出するハッシュ計算部６２を備えてもよい。署名復号部６３は、検証鍵を用いて第１の署名データを復号し、第２のハッシュ値（例えばＨＡ´´）を得てもよい。判定部６５は、第１のハッシュ値と、第２のハッシュ値と、第１の画像データに含まれる第２の画像データのハッシュ値である第３のハッシュ値（例えばＨＡ´´´）と、に基づいて、第１の画像データと第２の画像データとの関連性の有無を判定してもよい。
【０１９１】
これにより、ＰＣ５０は、例えば第１のハッシュ値と第２のハッシュ値とが一致することで、署名生成装置としてのカメラ２０，２０Ａでの第２の画像データと、署名検証装置としてのＰＣ５０での第２の画像データと、が一致することを確認できる。つまり、ＰＣ５０は、第２の画像データが改竄されていないことを確認できる。
【０１９２】
更に、ＰＣ５０は、第１のハッシュ値又は第２のハッシュ値と第３のハッシュ値とが一致することで、例えば、第１の画像データを含む合成データに含まれる第２の画像データのハッシュ値と、第２の画像データから算出されたハッシュ値と、が一致することを確認できる。従って、相互に関連する２つの画像データから、同じ画像データ（第２の画像データ）の一致が確認できるので、ＰＣ５０は、例えば、カメラ２０，２０Ａの所有者により２つの画像データの間から画像データが消去されていないことを保証できる。
【０１９３】
以上、図面を参照しながら各種の実施形態について説明したが、本発明はかかる例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【０１９４】
上記実施形態では、署名生成装置が、静止画像を撮像可能なデジタルスチルカメラに適用されることを例示したが、これに限らず、例えば、動画像を撮像可能な監視カメラ等のビデオカメラに適用されてもよい。
【０１９５】
また、署名生成装置は、例えば、収音装置（マイクロホン）により音声を収音して音声データを記録するレコーダ（録音装置）や、音声を録音可能なＰＢＸ（Ｐｒｉｖａｔｅ  Ｂｒａｎｃｈ  ｅＸｃｈａｎｇｅ）（構内交換機）、に適用されてもよい。この場合、音声データの正当性や連続性や証拠性を向上できる。また、音声データと画像データとの双方を含むデータに対して、上記実施形態の署名生成や署名検証が適用されてもよい。
【０１９６】
上記実施形態では、関連する複数のデータとして、カメラ２０，２０Ａにより連続して撮像された複数の画像データ等、時系列に並ぶデータを例示した。これに限られず、関連する複数のデータとして、種々のデータ（例えば、数珠つなぎのように前後のデータとの関連が決まっているデータ、一群のデータの中で他のデータと一部に共通する値を持つデータ）、が挙げられる。
【０１９７】
また、関連する複数のデータのうち、１つ前又は１つ後のデータのように全データを関連するデータの対象とするのではなく、例えば時系列に並ぶ２つおき、３つおき、に連続するデータの相関情報を用いてもよい。この場合、署名処理システムは、例えば複数のデータにおいてある程度の間隔を空けて、関連性があるか否かを判断できる。
【０１９８】
また、連続した複数のデータでない場合でも、任意の複数のデータの関連性を知りたい場合、カメラは、例えば、関連性を検査したい複数のデータのうちの１つのデータに、複数のデータのうちの他のデータに基づく相関情報を埋め込んでもよい。これにより、ＰＣ５０は、任意の複数のデータの関連性の有無を判定できる。
【産業上の利用可能性】
【０１９９】
本発明は、複数のデータ間の関連性を保証できる署名生成装置、署名検証装置、署名生成方法及び署名検証方法等に有用である。
【符号の説明】
【０２００】
１０  署名処理システム
２０，２０Ａ，２０Ｂ，２０Ｃ  カメラ
２０ｙ  署名機能
２０ｚ  画像データ生成機能
２１、５１  ＣＰＵ／ＲＡＭ部
２２、５２  ＨＤＤ部
２３  ＡＳＩＣ部
３１  ＩＤ生成部
３２、３２Ａ，３２Ｂ，３２Ｃ  署名処理部
３３  データ合成部
３４，６２  ハッシュ計算部
３５  ＩＤ記憶部
３６  署名鍵記憶部
３７  合成データ記憶部
３８  ハッシュデータ記憶部
３８Ｂ  署名データ記憶部
３８Ｃ  画像データ記憶部
３９  暗号処理部
４１  撮像部
４２  画像データ生成部
５０  ＰＣ
５０ｘ  署名検証機能
５０ｙ  署名復号機能
５０ｚ  公開鍵取得機能
５３  モニタ部
６１  データ読取部
６３  署名復号部
６４  署名データ検証部
６５  判定部
６６  結果出力部
７１  検証鍵記憶部
７３  表示部
【図１】
2020010399.tif 000003
【図２】
2020010399.tif 000004
【図３】
2020010399.tif 000005
【図４】
2020010399.tif 000006
【図５】
2020010399.tif 000007
【図６】
2020010399.tif 000008
【図７】
2020010399.tif 000009
【図８】
2020010399.tif 000010
【図９】
2020010399.tif 000011
【図１０】
2020010399.tif 000012
【図１１】
2020010399.tif 000013
【図１２】
2020010399.tif 000014
【図１３】
2020010399.tif 000015
【図１４】
2020010399.tif 000016
【図１５】
2020010399.tif 000017
【図１６】
2020010399.tif 000018
【図１７】
2020010399.tif 000019
【図１８】
2020010399.tif 000020
【図１９】
2020010399.tif 000021
【手続補正書】
【提出日】令和1年11月1日(2019.11.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
相互に関連する第１のデータ及び第２のデータを含む複数のデータを取得するデータ取得部と、
少なくとも第１のデータを含むデータから導出された第１の値を記憶する記憶部と、
少なくとも前記第１の値と前記第２のデータとを含むデータから第２の値を導出する導出部と、
前記第１の値及び署名鍵を用いて第１の署名データを生成し、前記第２の値及び署名鍵を用いて第２の署名データを生成する署名生成部と、
前記第１のデータ、前記第１の署名データ、及び、第１のデータの識別情報を含む第１の合成データと、前記第２のデータ、前記第１の値及び前記第２の署名データ、及び、前記第１のデータの識別情報に連続する第２のデータの識別情報を含む第２の合成データと、を送信する送信部と、
を備える署名生成装置。
【請求項２】
請求項１に記載の署名生成装置であって、
前記データ取得部は、時系列に連続する前記複数のデータを取得する、署名生成装置。
【請求項３】
請求項１または２に記載の署名生成装置であって、
前記第２の合成データは、前記第２のデータのメタデータとして前記第１の値を含む、署名生成装置。
【請求項４】
請求項１ないし３のいずれか１項に記載の署名生成装置であって、更に、
前記導出部は、前記データ取得部により取得されたデータのハッシュ値を導出する一方向性関数導出部を含み、
前記第１の値及び前記第２の値は、前記一方向性関数導出部から導出されたハッシュ値である、署名生成装置。
【請求項５】
請求項１ないし４のいずれか１項に記載の署名生成装置であって、更に、
前記データ取得部により取得されたデータの識別情報を生成する識別情報生成部を備え、
前記署名生成部は、前記第１のデータの識別情報に基づいて、前記第１の署名データを生成する、署名生成装置。
【請求項６】
請求項５に記載の署名生成装置であって、
前記第１のデータの識別情報は、表示装置により前記第１のデータに付加された可視データとして表示される、署名生成装置。
【請求項７】
請求項１ないし６のいずれか１項に記載の署名生成装置であって、
前記データ取得部は、撮像部を含み、前記撮像部により撮像された画像データを取得する、署名生成装置。
【請求項８】
請求項１ないし７のいずれか１項に記載の署名生成装置であって、
前記データ取得部は、収音部を含み、前記収音部により収音された音声データを取得する、署名生成装置。
【請求項９】
請求項１ないし８のいずれか１項に記載の署名生成装置であって、
前記記憶部は、前記導出部が導出した前記第２の値を記憶し、
前記複数のデータは、更に第３のデータを含み、
前記導出部は、少なくとも前記第２の値と前記第３のデータとを含むデータから第３の値を導出し、
前記署名生成部は、前記第３の値及び署名鍵を用いて第３の署名データを生成し、
前記送信部は、前記第３のデータ、前記第２の値及び前記第３の署名データを含む第３の合成データを送信する、
署名生成装置。
【請求項１０】
第１のデータと、少なくとも前記第１のデータを含むデータから導出された第１の値及び署名鍵を用いて生成された第１の署名データと、前記第１のデータの識別情報と、を含む第１の合成データと、
前記第１のデータと相互に関連する第２のデータと、前記第１の値と、少なくとも前記第１の値及び前記第２のデータを含むデータから導出された第２の値及び署名鍵を用いて生成された第２の署名データと、前記第１のデータの識別情報に連続する前記第２のデータの識別情報と、を含む第２の合成データと、を取得するデータ取得部と、
前記第１のデータを含むデータから前記第１の値を導出し、前記第１の値及び第２のデータを含むデータから前記第２の値を導出する導出部と、
検証鍵を用いて、前記第１の署名データを復号し前記第１の値を取得し、前記第２の署名データを復号し前記第２の値を取得する署名復号部と、
を備える署名検証装置。
【請求項１１】
請求項１０に記載の署名検証装置であって、
前記データ取得部は、時系列に連続する前記複数の合成データを取得する、署名検証装置。
【請求項１２】
請求項１０または１１に記載の署名検証装置であって、
前記第２の合成データは、前記第２のデータのメタデータとして前記第１の値を含む、
署名検証装置。
【請求項１３】
請求項１０ないし１２のいずれか１項に記載の署名検証装置であって、更に、
前記導出部は、前記データ取得部により取得されたデータのハッシュ値を導出する一方向性関数導出部を含み、前記第１の値及び前記第２の値は前記一方向性関数導出部から導出されたハッシュ値である、署名検証装置。
【請求項１４】
署名生成装置における署名生成方法であって、
相互に関連する第１のデータ及び第２のデータを含む複数のデータを取得するステップと、
少なくとも第１のデータを含むデータから導出された第１の値を記憶部に記憶するステップと、
少なくとも前記第１の値と前記第２のデータとを含むデータから第２の値をプロセッサによって導出するステップと、
前記第１の値及び署名鍵を用いて、第１の署名データを生成するステップと、
前記第２の値及び署名鍵を用いて第２の署名データを生成するステップと、
前記第１のデータと、前記第１の署名データと、前記第１のデータの識別情報と、を含む第１の合成データを送信するステップと、
前記第２のデータと、前記第１の値と、前記第２の署名データと、前記第１のデータの識別情報に連続する前記第２のデータの識別情報と、を含む第２の合成データを送信するステップと、
を備える署名生成方法。
【請求項１５】
署名検証装置における署名検証方法であって、
第１のデータと、少なくとも前記第１のデータを含むデータから導出された第１の値及び署名鍵を用いて生成された第１の署名データと、前記第１のデータの識別情報と、を含む第１の合成データを取得するステップと、
前記第１のデータと相互に関連する第２のデータと、前記第１の値と、少なくとも前記第１の値及び前記第２のデータを含むデータから第２の値から導出された第２の値及び署名鍵を用いて生成された第２の署名データと、前記第１のデータの識別情報に連続する前記第２のデータの識別情報と、を含む第２の合成データを取得するステップと、
前記第１のデータを含むデータから前記第１の値をプロセッサによって導出するステップと、
前記第１の値及び第２のデータを含むデータから前記第２の値をプロセッサによって導出するステップと、
検証鍵を用いて、前記第１の署名データを復号し前記第１の値を取得するステップと、
検証鍵を用いて、前記第２の署名データを復号し前記第２の値を取得するステップと、
を備える署名検証方法。 
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
本発明の署名生成装置は、相互に関連する第１のデータ及び第２のデータを含む複数のデータを取得するデータ取得部と、少なくとも第１のデータを含むデータから導出された第１の値を記憶する記憶部と、少なくとも前記第１の値と前記第２のデータとを含むデータから第２の値を導出する導出部と、前記第１の値及び署名鍵を用いて第１の署名データを生成し、前記第２の値及び署名鍵を用いて第２の署名データを生成する署名生成部と、前記第１のデータ、前記第１の署名データ、及び、第１のデータの識別情報を含む第１の合成データと、前記第２のデータ、前記第１の値及び前記第２の署名データ、及び、前記第１のデータの識別情報に連続する第２のデータの識別情報を含む第２の合成データと、を送信する送信部と、を備える。 
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の署名検証装置は、第１のデータと、少なくとも前記第１のデータを含むデータから導出された第１の値及び署名鍵を用いて生成された第１の署名データと、前記第１のデータの識別情報と、を含む第１の合成データと、前記第１のデータと相互に関連する第２のデータと、前記第１の値と、少なくとも前記第１の値及び前記第２のデータを含むデータから導出された第２の値及び署名鍵を用いて生成された第２の署名データと、前記第１のデータの識別情報に連続する前記第２のデータの識別情報と、を含む第２の合成データと、を取得するデータ取得部と、前記第１のデータを含むデータから前記第１の値を導出し、前記第１の値及び第２のデータを含むデータから前記第２の値を導出する導出部と、検証鍵を用いて、前記第１の署名データを復号し前記第１の値を取得し、前記第２の署名データを復号し前記第２の値を取得する署名復号部と、を備える。 
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
本発明の署名生成方法は、署名生成装置における署名生成方法であって、相互に関連する第１のデータ及び第２のデータを含む複数のデータを取得するステップと、少なくとも第１のデータを含むデータから導出された第１の値を記憶部に記憶するステップと、少なくとも前記第１の値と前記第２のデータとを含むデータから第２の値をプロセッサによって導出するステップと、前記第１の値及び署名鍵を用いて、第１の署名データを生成するステップと、前記第２の値及び署名鍵を用いて第２の署名データを生成するステップと、前記第１のデータと、前記第１の署名データと、前記第１のデータの識別情報と、を含む第１の合成データを送信するステップと、前記第２のデータと、前記第１の値と、前記第２の署名データと、前記第１のデータの識別情報に連続する前記第２のデータの識別情報と、を含む第２の合成データを送信するステップと、を備える。 
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
本発明の署名検証方法は、署名検証装置における署名検証方法であって、第１のデータと、少なくとも前記第１のデータを含むデータから導出された第１の値及び署名鍵を用いて生成された第１の署名データと、前記第１のデータの識別情報と、を含む第１の合成データを取得するステップと、前記第１のデータと相互に関連する第２のデータと、前記第１の値と、少なくとも前記第１の値及び前記第２のデータを含むデータから第２の値から導出された第２の値及び署名鍵を用いて生成された第２の署名データと、前記第１のデータの識別情報に連続する前記第２のデータの識別情報と、を含む第２の合成データを取得するステップと、前記第１のデータを含むデータから前記第１の値をプロセッサによって導出するステップと、前記第１の値及び第２のデータを含むデータから前記第２の値をプロセッサによって導出するステップと、検証鍵を用いて、前記第１の署名データを復号し前記第１の値を取得するステップと、検証鍵を用いて、前記第２の署名データを復号し前記第２の値を取得するステップと、を備える。