(57)【特許請求の範囲】
【請求項１】
連続する一連のデータを順次受信する受信手段と、
前記受信手段によって受信されたデータを受信するごとに当該データを要約した要約情報を順次生成する要約情報生成手段と、
前記要約情報生成手段によって生成された一連の要約情報が所定数になった場合、前記一連の要約情報をブロック単位で順次取得する取得手段と、
前記取得手段によって取得された一連の要約情報となる現ブロックの次のブロックに含まれることになる要約情報が前記要約情報生成手段によって生成されたことに応じて、前記現ブロックと前記次のブロックに含まれることになる要約情報とを、署名対象に設定する設定手段と、
前記設定手段によって前記署名対象に設定された現ブロックの要約元となるデータ群に関する電子署名を生成する電子署名生成手段と、
前記電子署名生成手段によって生成された電子署名と前記電子署名が関連付けられた署名対象と前記署名対象に設定された現ブロックの要約元となるデータ群とを記憶装置に送信する送信手段と、
を備えることを特徴とする署名生成装置。
【請求項２】
前記設定手段は、
前記現ブロックの前のブロックと前記次のブロックに含まれることになる要約情報とがある場合、前記現ブロックと前記前のブロックの中から選ばれた要約情報と前記次のブロックに含まれることになる要約情報とを前記署名対象に設定することを特徴とする請求項１に記載の署名生成装置。
【請求項３】
前記次のブロックに含まれることになる要約情報は、前記次のブロックに含まれることになる一連の要約情報のうちの先頭の要約情報であることを特徴とする請求項１または２に記載の署名生成装置。
【請求項４】
前記受信手段は、
映像データから一定時間ごとに切り出したフレームを前記データとすることを特徴とする請求項１〜３のいずれか一つに記載の署名生成装置。
【請求項５】
前記設定手段は、
前記現ブロックが前記一連のデータの先頭のデータを含む先頭ブロックであれば、前記現ブロックと、前記先頭ブロックを示す識別情報と、前記次のブロックに含まれることになる要約情報とを、署名対象に設定し、前記現ブロックが前記一連のデータの末尾のデータを含む末尾ブロックであれば、前記現ブロックと、前記末尾ブロックを示す識別情報と、前記現ブロックの前のブロックの中から選ばれた要約情報とを、署名対象に設定することを特徴とする請求項１〜４のいずれか一つに記載の署名生成装置。
【請求項６】
コンピュータを、
連続する一連のデータを順次受信する受信手段、
前記受信手段によって受信されたデータを受信するごとに当該データを要約した要約情報を順次生成する要約情報生成手段、
前記要約情報生成手段によって生成された一連の要約情報が所定数になった場合、前記一連の要約情報をブロック単位で順次取得する取得手段、
前記取得手段によって取得された一連の要約情報となる現ブロックの次のブロックに含まれることになる要約情報が前記要約情報生成手段によって生成されたことに応じて、前記現ブロックと前記次のブロックに含まれることになる要約情報とを、署名対象に設定する設定手段、
前記設定手段によって前記署名対象に設定された現ブロックの要約元となるデータ群に関する電子署名を生成する電子署名生成手段、
前記電子署名生成手段によって生成された電子署名と前記電子署名が関連付けられた署名対象と前記署名対象に設定された現ブロックの要約元となるデータ群とを記憶装置に送信する送信手段、
として機能させることを特徴とする署名生成プログラム。
【請求項７】
前記設定手段は、
前記現ブロックが前記一連のデータの先頭のデータを含む先頭ブロックであれば、前記現ブロックと、前記先頭ブロックを示す識別情報と、前記次のブロックに含まれることになる要約情報とを、署名対象に設定し、前記現ブロックが前記一連のデータの末尾のデータを含む末尾ブロックであれば、前記現ブロックと、前記末尾ブロックを示す識別情報と、前記現ブロックの前のブロックの中から選ばれた要約情報とを、署名対象に設定することを特徴とする請求項６に記載の署名生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストリーミングデータに対する署名生成装置、署名検証装置、署名生成方法、署名検証方法、署名検証プログラム、および署名生成プログラムに関する。
【背景技術】
【０００２】
近年、店舗や繁華街、集合住宅等での監視カメラ設置や、業務車両へのドライブレコーダ設置等が一般化し、動画像を証拠物件として取り扱う事例が増加している。また、電話による取引やサポート業務のトラブル対策として、店舗が顧客とオペレータとの会話を録音し証拠として保持することも常識となりつつある。
【０００３】
現在、動画像や音声を証拠とする場合、ビデオテープや画像・音声ファイルをそのまま提供している。しかし、画像・音声保存のデジタル化が進めば、それらの改ざんや編集は容易になり、証拠として取り扱う場合は署名やタイムスタンプといった第三者証明が必要となる。現に電話オペレータの音声をタイムスタンプ付きで録音・記録するサービスや製品が販売されており、今後このような技術のニーズが高まることが予想される。
【０００４】
一方で、増加する監視カメラ等に対して、撮影された映像の利用に対するプライバシの保護が問題となり、総務省等で議論が行われている。また、個人情報保護法の施行等により、個人のプライバシ情報の利用が厳しく制限され、本人の要求があれば、開示や部分的な削除等が必要である。
【０００５】
前述した、証拠性とプライバシ保護の両立という課題に対して、電子文書の一部に対する部分的な原本性の保証や、秘匿することを目的とした墨塗り署名技術の研究が進んでいる。特に、ある文書に対して施された署名が、文書の一部を秘匿することによって検証できなくなる問題を解決する電子文書の墨塗り署名技術が開示されている（たとえば、下記特許文献１を参照。）。具体的には、電子文書の内容を項目分割し、各項目の要約情報を算出、各項目の要約情報の集まりに対して電子署名を付加する方式である。ここで、要約情報とは、メッセージダイジェストという、暗号学的一方向性ハッシュ関数を用いて算出されたハッシュ情報に相当する。
【０００６】
この技術を適用することにより、署名付き電子文書に対して墨塗りを施した状態でも署名検証が可能、かつ、秘匿のための墨塗り、変更、追加した箇所以外は改変がないことを第三者証明することが可能となる。さらに、この技術を動画像・音声データに適用することが可能で、動画像データの原本性の保証、署名対象からのプライバシ保護可能なデータ抽出を目的とした技術が開示されている（たとえば、下記特許文献２を参照。）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特願２００６−５２８３４２号公報
【特許文献２】特開２００９−１５２７１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来技術において、長時間かつリアルタイムで記録される映像データに適用した状態で、記録中に異常が発生し記録が停止する事象が発生した場合、それまで記録した映像データの原本性の証明が行えないという問題があった。異常となるケースとしては、映像記録装置の強制電源断等である。
【０００９】
監視カメラを設置する利用者側からすれば、それまで記録された映像内に重要な証拠が存在する可能性があるため、記録データは逐一証明付きで保存できた方がよい。証明するための電子署名を付けるタイミングは、録画停止ボタンを押下する等の正式な手続きをもって、電子署名が付されることになり、付された電子署名によってその映像データが原本であることの第三者証明がはじめて可能になる。しかし、異常時には、電子署名処理を行うことができないため、改ざんされていないことの第三者証明を行うことができない。
【００１０】
したがって、記録された映像とその改ざん検知情報となる、メッセージダイジェストの集まりだけでは、改ざんされていないことの証明にはならない。特に２４時間３６５日連続して記録される監視カメラ等では、停電等による強制停止の事象発生は完全には防げず、いつ記録が強制停止されるか判断できないため、なんらかの対策が必要である。
【００１１】
上述した課題に対して、たとえば、映像記録が３０ｆｐｓ（ｆｒａｍｅ  ｐｅｒ  ｓｅｃｏｎｄ）として、１秒間に３０フレームを記録している場合、１０秒間で３００フレームが記録されることとなり、これを一つの保証単位として取り扱うことにする。この場合、異常等により映像記録が停止した場合でも、それまで記録された映像データの非改ざん証明は可能になる。
【００１２】
しかしながら、この場合、３００フレーム単位での非改ざん証明は可能になるが、各ブロックにまたがるフレーム間が時系列に連続していることを保証できないという問題があった。連続していることの保証とは、故意・過失による不正な差し替えや中抜きがされていないことの保証を示す。
【００１３】
本発明は、上述した従来技術による問題点を解消するため、長時間、かつリアルタイムで記録される映像データが改ざんされていないことを証明することを目的とする。また、時系列に連続記録され、中抜きや差し替え等がないことを第三者に保証できる署名生成装置、署名生成方法、および署名生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するため、開示の署名生成装置は、連続する一連のデータを受信するごとに、データを要約した要約情報を生成する。生成した要約情報が所定数になったらブロック単位で順次取得し、取得されたブロックとそのブロックに前後する少なくとも一方のブロックから選ばれた要約情報とを署名対象に設定する。署名対象に対して電子署名を生成し、受信されたデータと署名対象と電子署名を記憶装置に送信することを要件とする。
【発明の効果】
【００１５】
本署名生成装置、署名生成方法、および署名生成プログラムによれば、中抜きや差し替え等がないことを第三者に保証できる電子署名を生成するという効果を奏する。また、本署名検証装置、署名検証方法、および署名検証プログラムによれば、中抜きや差し替え等がないことを第三者に保証できる電子署名を検証できるという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態にかかるシステムの構成図である。
【図２】認証機関装置１０２の機能的構成を示すブロック図である。
【図３】署名生成装置１０３の機能的構成を示すブロック図である。
【図４】映像抽出装置１０５の機能的構成を示すブロック図である。
【図５】署名検証装置１０７の機能的構成を示すブロック図である。
【図６】署名生成装置１０３のハードウェア構成を示すブロック図である。
【図７】署名生成装置１０３内の署名生成部３０３の機能的構成を示すブロック図である。
【図８】署名検証装置１０７内の署名検証部５０３の機能的構成を示すブロック図である。
【図９】署名アルゴリズムの概要を示す図である。
【図１０】原動画情報の署名生成処理の概要を示す図である。
【図１１】原動画情報の署名生成処理を示す図である。
【図１２】原動画情報の署名検証処理を示す図である。
【図１３】切り出し動画情報の署名生成処理を示す図である。
【図１４】切り出し動画情報の署名検証処理を示す図である。
【図１５】原動画情報の抽出操作を示す図である。
【図１６】検証対象の動画情報、および検証情報の選択画面を示す図である。
【図１７】切り出し動画情報の署名検証結果を示す図である。
【図１８】電子署名の公開鍵登録処理を示すフローチャートである。
【図１９】電子署名付き情報の送受信処理、および受信装置の検証処理を示すフローチャートである。
【図２０−１】原動画情報の生成処理、および署名生成処理を示すフローチャート（その１）である。
【図２０−２】原動画情報の生成処理、および署名生成処理を示すフローチャート（その２）である。
【図２１】フレームダイジェスト情報の集合に対する電子署名生成処理を示すフローチャートである。
【図２２−１】切り出し動画情報の生成処理、および署名生成処理を示すフローチャート（その１）である。
【図２２−２】切り出し動画情報の生成処理、および署名生成処理を示すフローチャート（その２）である。
【図２３】原動画情報の署名検証処理を示すフローチャートである。
【図２４】切り出し動画情報の取り出し処理を示すフローチャートである。
【図２５】切り出し動画情報の署名検証処理を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下に添付図面を参照して、本発明にかかる署名生成装置、署名検証装置、署名生成方法、署名検証方法、署名生成プログラム、および署名検証プログラムの好適な実施の形態を詳細に説明する。
【００１８】
図１は、本発明の実施の形態にかかるシステムの構成図である。本システムは認証機関装置１０２と、署名生成装置１０３と、映像抽出装置１０５と、署名検証装置１０７とで構成される。本システムはネットワーク１０１に接続可能である。署名生成装置１０３は、複数の映像記録端末１０４と接続されている。映像抽出装置１０５は、抽出者端末１０６と接続されている。署名検証装置１０７は、検証者端末１０８と接続されている。
【００１９】
ネットワーク１０１は、インターネット、イントラネット、ワイドエリアネットワーク等のすべての通信回線網に相当する。認証機関装置１０２は、電子署名情報を管理する認証機関のサーバである。電子署名とは、署名対象を要約した要約情報を送信装置が保持する秘密鍵で暗号化した情報のことである。そして、送信装置は電子署名、署名対象、および公開鍵証明書を受信装置へ送信する。受信装置は、公開鍵証明書の有効性確認を行った上で、暗号化された電子署名を公開鍵証明書に含まれる公開鍵で復号し、署名対象から得た要約情報と比較を行う。この比較結果が同一か否かによって、正当な相手からの送信か否かを判断する。詳細は図１９にて後述する。
【００２０】
また、前述した要約情報とは、署名対象に対して暗号学的一方向性ハッシュ関数を用いて算出されたハッシュ情報であり、署名対象のサイズを圧縮できるという意味で、メッセージダイジェストとも言われる。また、暗号学的一方向性ハッシュ関数で生成されたハッシュ情報は、その署名対象からしか生成することができない唯一の情報となり、生成されたハッシュ情報から元の情報を復元することができないという特徴を持っている。
【００２１】
このため、情報の暗号化や電子署名生成にはよく使われている。この暗号学的一方向性ハッシュ関数には、ＭＤ５、ＳＨＡ−１、ＳＨＡ−２５６のようなアルゴリズムがある。情報に対してどのアルゴリズムを用いて要約情報を生成しているかについての情報（ハッシュ情報生成アルゴリズム）は公開鍵証明書に記載されている。
【００２２】
署名生成装置１０３は、後述する映像記録端末１０４から送信された情報を保存・蓄積し、署名生成処理を行うサーバである。映像記録端末１０４は、電子署名の対象となる情報、ここでは原本ストリーミングデータ（以降、原動画情報と説明）の撮影・記録を行うための端末である。たとえば、業務用監視カメラ等に相当する。映像記録端末１０４は署名生成装置１０３と通信可能である。
【００２３】
映像抽出装置１０５は、署名生成装置１０３から送られてきた情報を蓄積し、後述する署名検証装置１０７へ送信された情報を蓄積するサーバである。映像抽出装置１０５は後述する抽出者端末１０６にて操作するが、映像抽出装置１０５にマウスやキーボード、ディスプレイ等を接続することで直接操作できるようにしてもよい。抽出者端末１０６は、映像抽出装置１０５の操作を行うための端末である。抽出者装置１０６は映像抽出装置１０５と通信可能である。
【００２４】
署名検証装置１０７は、映像抽出装置１０５から送られてきた情報を蓄積し、送られてきた情報に付される電子署名の検証を行うサーバである。署名検証装置１０７は後述する検証者端末１０８にて操作するが、署名検証装置１０７にマウスやキーボード、ディスプレイ等を接続することで直接操作できるようにしてもよい。検証者端末１０８は、署名検証装置１０７の操作を行うための端末である。検証者端末１０８は署名検証装置１０７と通信可能である。
【００２５】
図２は、認証機関装置１０２の機能的構成を示すブロック図である。認証機関装置１０２は、公開鍵ＤＢ（ＤａｔａＢａｓｅ）２０１と、証明書発行部２０２と、証明書検証部２０３と、通信手段２０４で構成する。公開鍵ＤＢ２０１は、映像記録端末１０４、抽出者端末１０６の公開鍵を蓄積する。証明書発行部２０２は、要求に応じて公開鍵証明書を発行する。証明書検証部２０３は、公開鍵証明書の検証を行う。通信手段２０４は、ネットワーク１０１に接続しており、ネットワーク１０１経由で通信を行う。
【００２６】
図３は、署名生成装置１０３の機能的構成を示すブロック図である。署名生成装置１０３は、映像管理ＤＢ３０１と、映像管理ＴＢ（Ｔａｂｌｅ）３０２と、署名生成部３０３と、通信手段３０４で構成する。映像管理ＤＢ３０１は、映像記録端末１０４から送信された情報と、映像抽出装置１０５へ送信された情報を蓄積する。映像管理ＴＢ３０２は、映像管理ＤＢ３０１へのアクセス制御を管理するテーブルである。署名生成部３０３は、映像データに対して電子署名とその署名対象を付加する。署名生成部３０３の機能は、図７にて後述する。通信手段３０４は、ネットワーク１０１に接続しており、ネットワーク１０１経由で通信を行う。
【００２７】
図４は、映像抽出装置１０５の機能的構成を示すブロック図である。映像抽出装置１０５は、映像管理ＤＢ４０１と、映像管理ＴＢ４０２と、署名生成部４０３と、署名検証部４０４と、通信手段４０５で構成する。映像管理ＤＢ４０１は、署名生成装置１０３から送られてきた情報を蓄積する。映像管理ＴＢ４０２は、映像管理ＤＢ４０１へのアクセス制御を管理するテーブルである。署名生成部４０３は、映像に対して署名情報を付加する。署名検証部４０４は、署名生成装置１０３から送られてきた情報に付される署名情報の検証を行う。通信手段４０５は、ネットワーク１０１に接続しており、ネットワーク１０１経由で通信を行う。
【００２８】
図５は、署名検証装置１０７の機能的構成を示すブロック図である。署名検証装置１０７は、映像管理ＤＢ５０１と、映像管理ＴＢ５０２と、署名検証部５０３と、通信手段５０４で構成する。映像管理ＤＢ５０１は、映像抽出装置１０５から送られてきた情報を蓄積する。映像管理ＴＢ５０２は、映像管理ＤＢ５０１へのアクセス制御を管理するテーブルである。署名検証部５０３は、映像抽出装置１０５から送られてきた情報に付される署名情報の検証を行う。通信手段５０４は、ネットワーク１０１に接続しており、ネットワーク１０１経由で通信を行う。
【００２９】
前述したように、署名生成装置１０３はネットワーク１０１に接続しているが、オフラインでの運用も可能である。具体的には、たとえば、認証機関装置１０２が生成した公開鍵証明書を、フレキシブルディスクやＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）等のリムーバブルメディアに書き込む。後に、署名生成装置１０３は、後述する図６の磁気ディスクドライブ６０４や光ディスクドライブ６０６を通じて、公開鍵証明書を読み込む。また、映像データに関しても同様に、電子署名を行った段階で署名生成装置１０３内の記憶領域に格納し、定期的に、映像データや電子署名をリムーバブルメディアに書き込む。その後、映像抽出装置１０５は映像データや電子署名をリムーバブルメディアに読み込む。
【００３０】
（署名生成装置１０３のハードウェア構成）
図６は、署名生成装置１０３のハードウェア構成を示すブロック図である。図６において、署名生成装置１０３は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）６０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）６０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）６０３を備えている。さらに、磁気ディスクドライブ６０４と、磁気ディスク６０５と、光ディスクドライブ６０６と、光ディスク６０７を備えている。さらに、ディスプレイ６０８と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）６０９と、キーボード６１０と、マウス６１１と、スキャナ６１２と、プリンタ６１３を備えている。また、各構成部はバス６００によってそれぞれ接続されている。
【００３１】
ここで、ＣＰＵ６０１は、署名生成装置１０３の全体の制御を司る。ＲＯＭ６０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ６０３は、ＣＰＵ６０１のワークエリアとして使用される。磁気ディスクドライブ６０４は、ＣＰＵ６０１の制御にしたがって磁気ディスク６０５に対するデータのリード／ライトを制御する。磁気ディスク６０５は、磁気ディスクドライブ６０４の制御で書き込まれたデータを記憶する。
【００３２】
光ディスクドライブ６０６は、ＣＰＵ６０１の制御にしたがって光ディスク６０７に対するデータのリード／ライトを制御する。光ディスク６０７は、光ディスクドライブ６０６の制御で書き込まれたデータを記憶したり、光ディスク６０７に記憶されたデータをコンピュータに読み取らせたりする。
【００３３】
ディスプレイ６０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ６０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００３４】
Ｉ／Ｆ６０９は、ネットワーク１０１に接続され、このネットワーク１０１を介して他の装置に接続される。そして、Ｉ／Ｆ６０９は、ネットワーク１０１と内部のインターフェイスを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ６０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００３５】
キーボード６１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス６１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００３６】
スキャナ６１２は、画像を光学的に読み取り、署名生成装置１０３内に画像データを取り込む。なお、スキャナ６１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ６１３は、画像データや文書データを印刷する。プリンタ６１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００３７】
署名検証装置１０７においても、署名生成装置１０３と同様のハードウェア構成である。すなわち、署名検証装置１０７は、ＣＰＵと、ＲＯＭと、ＲＡＭと、磁気ディスクドライブと、磁気ディスクと、光ディスクドライブと、光ディスクと、ディスプレイと、Ｉ／Ｆと、キーボードと、マウスと、スキャナと、プリンタと、を備えている。
【００３８】
（署名生成装置１０３の機能的構成）
次に、署名生成装置１０３の機能的構成について説明する。図７は、署名生成装置１０３内の署名生成部３０３の機能的構成を示すブロック図である。署名生成部３０３は、受信部７０１と、要約情報生成部７０２と、取得部７０３と、設定部７０４と、電子署名生成部７０５と、送信部７０６で構成する。この制御部となる機能（受信部７０１〜送信部７０６）は、具体的には、たとえば、図６に示したＲＯＭ６０２、ＲＡＭ６０３、磁気ディスク６０５、光ディスク６０７などの記憶装置に記憶されたプログラムをＣＰＵ６０１が実行することにより、その機能を実現する。または、Ｉ／Ｆ６０９を経由して他のＣＰＵが実行することにより、その機能を実現してもよい。
【００３９】
受信部７０１は、映像記録端末１０４からの映像データを連続して受信する機能を有する。具体的には、たとえば、映像記録が３０ｆｐｓである場合は、１秒間に３０フレームを映像記録端末１０４から受信する。なお、抽出されたデータは、ＲＡＭ６０３、磁気ディスク６０５、光ディスク６０７などの記憶領域に記憶される。
【００４０】
要約情報生成部７０２は、受信部７０１によって受信されたフレームに対して、フレームのデータを要約した要約情報、たとえばフレームに対するダイジェストを順次生成する機能を有する。具体的には、たとえば、フレームを引数としてハッシュ関数に代入し、結果をフレームに対するダイジェストとする。以下、フレームに対するダイジェストをフレームダイジェスト情報とする。フレームの内容が改ざんされると、ハッシュ関数の結果が変化するため、検証者は、フレームが改ざんされたことを発見することが容易になる。なお、生成結果は、ＲＡＭ６０３、磁気ディスク６０５、光ディスク６０７などの記憶領域に記憶される。
【００４１】
取得部７０３は、要約情報生成部７０２によって生成されたフレームダイジェスト情報の総数が所定数に達した場合、一連のフレームダイジェスト情報を１つのブロック単位として取得する機能を有する。
【００４２】
具体的には、たとえば、署名生成装置１０３が映像データを３００フレーム分順次受信し、フレームダイジェスト情報を生成した状態で、フレーム１〜３００のフレームダイジェスト情報を１つのブロック単位として扱うようにする。続けて、フレーム３０１〜６００を順次受信し、フレームダイジェスト情報を生成した状態で、フレーム３０１〜６００の３００フレーム分のフレームダイジェスト情報を１つのブロックとして扱うようにする。また、フレーム７５６の受信後、録画が終了した場合には、フレーム６０１〜７５６の１５６フレームを１つのブロックとする。なお、取得したブロックは、ＲＡＭ６０３、磁気ディスク６０５、光ディスク６０７などの記憶領域に記憶される。
【００４３】
設定部７０４は、取得部７０３によって取得されたブロックに対して、ブロックのフレームダイジェスト情報と取得されたブロックに前後する少なくともいずれか一方のブロック内の任意のフレームダイジェスト情報を電子署名の署名対象に設定する機能を有する。前後のブロックに関して、前のブロック１つでもよいし、次のブロック１つでもよいし、前のブロックと次のブロックとの２つのブロックを、取得されたブロックのフレームダイジェスト情報とあわせて電子署名の署名対象に設定してもよい。また、次のブロック内のフレームダイジェスト情報を取得する際に、次のブロック内で最初に生成されたフレームダイジェスト情報を取得してもよい。
【００４４】
また、取得されたブロックがすべてのブロックの中で先頭に位置する場合は、映像データの先頭を示す識別情報を署名対象に含めてもよい。同様に、取得されたブロックが、すべてのブロックの中で末尾に位置する場合は、映像データの末尾に位置する識別情報を署名対象に含めてもよい。
【００４５】
具体的には、たとえば、フレーム３０１〜６００のフレームダイジェスト情報を扱うブロックに対し、前のブロックからはフレーム３００を、次のブロックからはフレーム６０１を含めて署名対象とする。また、フレーム１〜３００のブロックの場合は、先頭を示す識別情報として、“ＳＴＡＲＴ”といった文字列を識別情報にする。また、フレーム６０１〜７５６のブロックで、フレーム７５６の受信後、録画が終了した場合に、末尾を示す識別情報として、“ＮＵＬＬ”といった文字列を識別情報にする。なお、取得したブロックは、ＲＡＭ６０３、磁気ディスク６０５、光ディスク６０７などの記憶領域に記憶される。
【００４６】
電子署名生成部７０５は、設定部７０４によって設定された署名対象に対して、署名対象に設定されたブロックの要約元となる映像データの電子署名を生成する機能を有する。具体的には、たとえば、取得部７０３によって取得された、フレーム３０１〜６００のブロックは、フレーム３００とフレーム６０１のフレームダイジェスト情報を含んだ署名対象が設定部７０４によって設定されている。そして、設定部７０４によって設定された署名対象に対して、署名生成装置１０３は電子署名を生成する。
【００４７】
電子署名の生成例として、署名生成装置１０３は、署名対象に対してハッシュ関数を使用してハッシュ情報を生成し、ハッシュ情報に対して事前に生成した秘密鍵を用いて電子署名を生成する。秘密鍵で暗号化された電子署名は、公開鍵を用いることでハッシュ情報に戻る。したがって、第三者は、取得した署名対象と電子署名を、署名対象に対してハッシュ関数を使用してハッシュ情報にし、電子署名に対して公開鍵を用いて復号し、値が一致することで、検証することができる。なお、生成された電子署名は、ＲＡＭ６０３、磁気ディスク６０５、光ディスク６０７などの記憶領域に記憶される。
【００４８】
送信部７０６は、受信部７０１によって受信された映像データと、設定部７０４によって設定された署名対象と、電子署名生成部７０５によって生成された電子署名と、を関連付けて記憶装置に送信する機能を有する。署名対象と電子署名をあわせて署名情報とする。具体的には、たとえば、フレーム３０１〜６００の映像データと、フレーム３００〜６０１のフレームダイジェスト情報と、フレームダイジェスト情報に対する電子署名とを送信する。また、算出結果は、ＲＡＭ６０３、磁気ディスク６０５、光ディスク６０７などの記憶領域に記憶させてもよい。
【００４９】
映像抽出装置１０５内の署名生成部４０３に関しても、前述した署名生成部３０３と同様の機能を持つ。また、署名生成部４０３は、受信した映像データ、たとえば、フレーム１〜７５６の映像データに対し、一部分を切り出して電子署名を行ってもよい。具体的には、フレーム２００〜５５０に対して電子署名を生成する。具体的な処理については、図１３にて後述する。
【００５０】
図８は、署名検証装置１０７内の署名検証部５０３の機能的構成を示すブロック図である。署名検証部５０３は、受信部８０１と、要約情報生成部８０２と、署名対象検証部８０３と、データ検証部８０４と、連続検証部８０５と、電子署名検証部８０６とで構成する。この制御部となる機能（受信部８０１〜電子署名検証部８０６）は、具体的には、たとえば、署名検証装置１０７のＲＯＭ、ＲＡＭ、磁気ディスク、光ディスクなどの記憶装置に記憶される。そして、記憶されたプログラムを署名検証装置１０７のＣＰＵが実行することにより、その機能を実現する。または、Ｉ／Ｆを経由して他のＣＰＵが実行することにより、その機能を実現してもよい。
【００５１】
受信部８０１は、映像データと、映像データのフレームを要約した要約情報、たとえば、フレームダイジェスト情報を所定数の単位でブロックにした署名対象と、署名対象に対する電子署名と、を受信する機能を有する。署名対象には、該当のブロックを構成するフレームのフレームダイジェスト情報と、その前後する少なくともいずれか一方のブロックの中から選ばれたフレームダイジェスト情報で構成する。前後のブロックに関して、次のブロック１つでもよいし、前のブロック１つでもよいし、前のブロックと次のブロックとの２つのブロックでもよい。
【００５２】
また、署名対象には、該当のブロックのフレームダイジェスト情報と一連のデータの先頭を示す識別情報とが含まれてもよいし、もしくは、該当のブロックのフレームダイジェスト情報と一連のデータの末尾を示す識別情報とが含まれてもよい。なお、受信されたデータは、署名検証装置１０７のＲＡＭ、磁気ディスク、光ディスクなどの記憶領域に記憶される。
【００５３】
具体的には、たとえば、映像データは、フレーム１〜７５６の映像データになる。署名対象に関して、前のブロックと次のブロックとの２つのブロックが含まれ、データの先頭を示す識別情報、データの末尾を示す識別情報も含まれる場合を例に挙げる。
【００５４】
前述の例では、署名対象と電子署名の組が３つ存在し、１つ目の署名対象は、“ＳＴＡＲＴ”といった文字列によって先頭を示す識別情報とフレーム１〜３０１のフレームダイジェスト情報とで構成され、電子署名は前述した署名対象に対する署名となる。２つ目の署名対象は、フレーム３００〜６０１のフレームダイジェスト情報とで構成され、電子署名は前述した署名対象に対する署名となる。３つ目の署名対象は、フレーム６０１〜７５６のフレームダイジェスト情報と“ＮＵＬＬ”といった文字列によって末尾を示す識別情報とで構成され、電子署名は前述した署名対象に対する署名となる。詳細は後述する図１２にて説明する。
【００５５】
要約情報生成部８０２は、受信部８０１によって受信されたフレームに対して、フレームのデータを要約した要約情報、たとえばフレームダイジェスト情報を生成する機能を有する。要約情報生成部８０２は、要約情報生成部７０２と同様の機能である。なお、受信されたデータは、署名検証装置１０７のＲＡＭ、磁気ディスク、光ディスクなどの記憶領域に記憶される。
【００５６】
署名対象検証部８０３は、受信部８０１によって受信された署名対象の正当性を、受信された電子署名に基づいて検証する機能を有する。具体的な例として、前述した２つ目の署名対象と電子署名について説明する。署名検証装置１０７は、初めに、署名対象に対して要約した要約情報、たとえば、ハッシュ値を求める。次に、電子署名を公開鍵にて復号し、前述したハッシュ値と復号した値が一致することで、署名対象の正当性を保証できる。なお、検証結果は、署名検証装置１０７のＲＡＭ、磁気ディスク、光ディスクなどの記憶領域に記憶される。
【００５７】
データ検証部８０４は、受信部８０１によって受信された一連のデータの正当性を、要約情報生成部８０２によって生成されたフレームダイジェスト情報と署名対象検証部８０３によって検証された署名対象とに基づいて検証する機能を有する。具体的な例として、前述した２つ目の署名対象と電子署名について説明する。一連のデータをフレーム３０１〜６００のフレームダイジェスト情報を算出した算出結果と、署名対象に含まれるフレーム３０１〜６００の値とをそれぞれ比較する。比較した結果、一致することで、各フレームの正当性を保証できる。なお、検証結果は、署名検証装置１０７のＲＡＭ、磁気ディスク、光ディスクなどの記憶領域に記憶される。
【００５８】
連続検証部８０５は、受信部８０１によって受信された複数のブロックが連続することに関する正当性を、要約情報生成部８０２によって生成されたフレームダイジェスト情報と署名対象検証部８０３によって検証された署名対象に基づいて検証する機能を有する。なお、検証結果は、署名検証装置１０７のＲＡＭ、磁気ディスク、光ディスクなどの記憶領域に記憶される。具体的な例として、前述した２つ目の署名対象と電子署名について説明する。
【００５９】
２つ目の署名対象には、１つ目のブロックに含まれる、フレーム３００のフレームダイジェスト情報が含まれている。２つ目の署名対象に含まれているフレーム３００のフレームダイジェスト情報と、受信部８０１によって受信されたフレーム３００を要約情報生成部８０２によって生成されたフレームダイジェスト情報と、を比較する。比較した結果、一致することで、２つ目の署名対象は、１つ目の署名対象の次に位置することを保証できる。同様に、２つ目の署名対象には、３つ目のブロックに含まれる、フレーム６０１のフレームダイジェスト情報が含まれている。同様の動作により、２つ目の署名対象は、３つ目の署名対象の前に位置することを保証できる。
【００６０】
また、１つ目の署名対象には、“ＳＴＡＲＴ”といった文字列によって先頭を示す識別情報が含まれているため、１つ目の署名対象のブロックがデータの先頭であることを保証できる。また、３つ目の署名対象には、“ＮＵＬＬ”といった文字列によって末尾を示す識別情報が含まれているため、３つ目の署名対象のブロックがデータの末尾であることを保証できる。
【００６１】
電子署名検証部８０６は、受信部８０１によって受信された映像データ、署名対象、および電子証明の正当性に関して、署名対象検証部８０３とデータ検証部８０４と連続検証部８０５とによって検証された検証結果に基づいて検証する。具体的には、たとえば、署名対象検証部８０３とデータ検証部８０４と連続検証部８０５の検証結果がすべて保証することができたという結果だった場合に、受信部８０１によって受信された映像データ、署名対象、および電子証明の正当性を保証することができる。なお、検証結果は、署名検証装置１０７のＲＡＭ、磁気ディスク、光ディスクなどの記憶領域に記憶される。
【００６２】
映像抽出装置１０５内の署名検証部４０４に関しても、前述した署名検証部５０３と同様の機能を持つ。さらに署名検証部５０３は、映像データの中の一部分を抽出されたデータに関して、正当性を検証できることとしてもよい。たとえばフレーム１〜７５６の映像データに対し、フレーム２００〜５５０に対して電子署名を付加されたデータに対し、正当性を検証する。具体的な処理については、図１４にて後述する。
【００６３】
上述した装置、端末を使用して、本実施の形態のシステムにおける処理を説明する。本実施の形態は、処理の役割によって各装置、端末が署名装置、抽出装置、検証装置となる。署名装置は、映像記録端末１０４の署名を付加することで、署名対象の原動画情報の内容を保証する。また、署名として、映像記録端末１０４を管理する管理者の情報で生成された電子署名でもよい。
【００６４】
抽出装置は、映像記録端末１０４の署名が付加された原動画情報から、部分的にデータを抽出して、切り出し動画情報として検証装置に開示する。抽出方法には、抽出装置の情報を同時に開示し、どの装置がその抽出処理を行ったかを明示する顕名抽出と、抽出装置が抽出処理を匿名で行う匿名抽出の２種類ある。本実施の形態では、顕名抽出を行うことを前提に説明を行う。
【００６５】
検証装置は、開示された切り出し動画情報が映像記録端末１０４によって保証されているかどうかを検証する。開示された切り出し動画情報は、映像記録端末１０４が署名をした原動画情報の一部であることに加え、その抽出が抽出装置によって行われたことを検証する。なお、電子署名の処理については、各装置が図１８、図１９にて後述する電子署名の手順を行うものとする。
【００６６】
図９は、署名アルゴリズムの概要を示す図である。署名装置は、オリジナルデータ９０１を部分データに分割し、各部分データのハッシュ集合を計算し、ハッシュ情報集合９０２を生成する。その後、生成したハッシュ情報集合９０２が電子署名の署名対象となり、署名対象に対して署名装置の電子署名を行い、ハッシュ情報集合９０２と電子署名をあわせて署名装置の署名情報９０３とする。
【００６７】
抽出装置は、署名装置が署名情報を施したデータから、部分データを抽出し、抽出データ９０４を生成する。その後、署名装置と同様の操作を行って、ハッシュ情報集合９０５、ハッシュ情報集合９０５を署名対象にし、抽出装置の電子署名を行い、ハッシュ情報集合９０５と電子署名をあわせて抽出装置の署名情報９０６とする。
【００６８】
検出装置は、署名装置の署名情報９０３内の署名装置の電子署名にて、ハッシュ情報集合９０２の完全性を検証する。同様に、抽出装置の署名情報９０６内の抽出装置の電子署名にて、ハッシュ情報集合９０５の完全性を検証する。次に、開示された部分データからハッシュ情報集合を生成し、ハッシュ情報集合９０５と同一であることを検証する。最後に、署名装置と抽出装置のハッシュ情報集合を比較することで、抽出装置のハッシュ情報の範囲９０８は、元データの範囲９０７からの抽出であることがわかる。もし、抽出データ９０４のハッシュ情報にオリジナルデータ９０１のハッシュ情報が含まれていない場合は、その部分データは改ざんされていることになる。
【００６９】
図１０は、原動画情報の署名生成処理の概要を示す図である。図１０では、本実施の形態で対象とするストリーミング情報について説明・定義を行う。映像記録端末１０４にて撮影された映像は、１画面分のデータをフレームとし、１秒間に３０フレーム（３０ｆｐｓ）で記録されることとし、かつ１０秒間（３００フレームの記録）に１回、署名生成装置１０３にて署名が付加されることを前提に説明する。
【００７０】
具体的には、フレーム１〜３００、フレーム３０１〜６００といった、３００フレーム単位で電子署名が付加される形態とする。フレーム６０１〜７５６のように、最後の集合は、フレーム９００まで到達せず、７５６で録画が終了し、１５６フレームに対して電子署名が付加されることとする。署名対象となるフレーム１〜７５６の集まりを原動画情報と説明する。また、本実施の形態では、説明の便宜上、フレーム１〜７５６の２５秒程度の短い映像となっている。しかし、実運用では、監視カメラ等で長時間の映像が記録されることが想定され、実際には、８時間程度の映像で約８６４０００フレームもの画像が出力され、２８８０個の電子署名が生成される。
【００７１】
図１１は、原動画情報の署名生成処理を示す図である。映像記録端末１０４は、フレームの記録を開始する。録画開始要求は、たとえば、映像記録端末１０４に装備された録画開始ボタンが押下されることで実行される。また、電源投入と同時に録画の開始を自動で行ってもよい。
【００７２】
記録されたフレームは、署名生成装置１０３が受信し、署名生成装置１０３は順次ダイジェスト化処理１１０１を行う。１つ目のブロックとして、フレーム１〜３００の署名情報を生成するには、署名対象は、フレーム１〜３００のフレームダイジェスト情報ｈ１〜３００と、映像データの先頭を示す識別情報で構成する。映像データの先頭を示す識別情報は、たとえば“ＳＴＡＲＴ”といった情報、図１１中ＳｔａｒｔＩｎｆｏである。さらに、署名対象には、次のブロックとの連続を保証するためにフレーム３０１のフレームダイジェスト情報ｈ３０１を図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−１−１のように含める。
【００７３】
フレーム３０１のフレームダイジェスト情報ｈ３０１の生成が終わった段階で、映像記録端末１０４の秘密鍵で映像記録端末１０４の電子署名１１０４の生成を行い、署名対象と電子署名をあわせて、署名情報を生成する。
【００７４】
続けて、２つ目のブロックとして、フレーム３０１〜６００の署名情報を生成する際も、フレーム３０１〜６００を対象に、順次ダイジェスト化処理１１０２を行う。その後、フレーム１〜３００の署名情報との連続を保証するために、署名対象にフレーム３００のフレームダイジェスト情報ｈ３００を図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−１−２のように含める。同様に、フレーム６０１以降の署名情報との連続を保証するために、署名対象にフレーム６０１のフレームダイジェスト情報ｈ６０１を図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−２−１のように含める。
【００７５】
フレーム６０１のフレームダイジェスト情報ｈ６０１の生成が終わった段階で、映像記録端末１０４の秘密鍵で映像記録端末１０４の電子署名１１０５の生成を行い、署名対象と電子署名をあわせて、署名情報を生成する。
【００７６】
続けて、３つ目のブロックとして、映像記録端末１０４が録画終了要求を受け付け、フレーム７５６の記録で録画が終了した場合を説明する。録画終了要求は、たとえば、映像記録端末１０４に装備された録画終了ボタンが押下されることで実行される。
【００７７】
記録されたフレームは、署名生成装置１０３が受信し、署名生成装置１０３は順次ダイジェスト化処理１１０３を行う。その後、フレーム３０１〜６００の署名情報との連続を保証するために、署名対象にフレーム６００のフレームダイジェスト情報ｈ６００を図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−２−２のように含める。また、映像データの末尾を示す識別情報、たとえば、“ＮＵＬＬ”といった情報を、図１１中ＥｎｄＩｎｆｏのように含める。
【００７８】
署名生成装置１０３は録画終了指示を受信した状態で、映像記録端末１０４の秘密鍵で映像記録端末１０４の電子署名１１０６の生成を行い、署名対象と電子署名をあわせて、署名情報を生成する。
【００７９】
図１２は、原動画情報の署名検証処理を示す図である。署名検証装置１０７は、フレーム１〜７５６の原動画情報、フレーム１〜３００の署名情報、フレーム３０１〜６００の署名情報、フレーム６０１〜７５６の署名情報を受信する。
【００８０】
初めに、各署名情報の署名対象の正当性の検証を行う。署名検証装置１０７は１つ目のブロックとしてフレーム１〜３００の署名情報から、署名対象と映像記録端末１０４の電子署名１２０１とを取得し、正当性を検証する。２つ目のブロックとしてフレーム３０１〜６００の署名情報、３つ目のブロックとしてフレーム６０１〜７５６の署名情報も、同様の処理で、映像記録端末１０４の電子署名１２０２、映像記録端末１０４の電子署名１２０３を使用して正当性を検証する。
【００８１】
署名情報が生成時点から改ざんされていなく正当性が確認できたら、署名検証装置１０７は、原動画情報が不当に切り取られていないかを検証する。先頭を確認するため、先頭署名１２０４が、フレーム１〜３００の署名情報の署名対象の先頭において、記録の先頭であることを識別する識別情報になっていることを確認する。識別情報の例として、たとえば、“ＳＴＡＲＴ”等といった文字列が付与されていることを確認する。
【００８２】
同様に、末尾を確認するため、末尾署名１２０５が、フレーム６０１〜７５６の署名情報の署名対象の末尾において、記録の末尾であることを識別する識別情報になっていることを確認する。識別情報の例として、たとえば、“ＮＵＬＬ”等といった文字列が付与されていることを確認する。
【００８３】
次に、署名検証装置１０７は、原動画情報に対して、フレーム１から順にフレームダイジェスト情報をダイジェスト化処理１２０６によって生成し、フレームごとのフレームダイジェスト情報ｈ１、ｈ２、・・・、ｈ７５６までを生成する。そして署名対象に含まれているフレームダイジェスト情報と比較し、各フレームの正当性を検証する。
【００８４】
それぞれのブロックごとに、各フレームの正当性を検証する。１つ目のブロックでは、フレーム１〜３００の署名情報の署名対象としてのフレーム１〜３００のフレームダイジェスト情報ｈ１〜ｈ３００と、生成されたフレームダイジェスト情報ｈ１〜ｈ３００に関して、比較処理１２０７を行い正当性を検証する。同様に、２つ目のブロックであるフレーム３０１〜６００に関して比較処理１２０８を行い、３つ目のブロックであるフレーム６０１〜７５６に関して比較処理１２０９を行うことにより正当性を検証する。
【００８５】
最後に、各ブロックが連続していることを検証する。１つ目のブロックのフレーム１〜３００の署名情報には、２つ目のブロックに含まれる、フレーム３０１のフレームダイジェスト情報ｈ３０１が存在する。署名検証装置１０７は、前述のフレームダイジェスト情報ｈ３０１と、ダイジェスト化処理１２０６にて生成したフレーム３０１のフレームダイジェスト情報ｈ３０１とに基づいて、連続確認処理１２１０を行う。これにより、１つ目のブロックの次には、２つ目のブロックが存在することが保証できる。
【００８６】
同様に、２つ目のブロックに含まれる、フレーム３００のフレームダイジェスト情報ｈ３００に基づいて、連続確認処理１２１０を行うことにより２つ目のブロックの前には、１つ目のブロックが存在することが保証できる。
【００８７】
２つ目のブロックと３つ目のブロックに関しても同様の処理を行う。署名検証装置１０７は、２つ目のブロックに含まれるフレーム６０１のフレームダイジェスト情報ｈ６０１に基づいて、連続確認処理１２１１を行うことによって２つ目のブロックの次には、３つ目のブロックが存在することが保証できる。３つ目のブロックに含まれるフレーム６００のフレームダイジェスト情報ｈ６００に基づいて、連続確認処理１２１１を行うことによって３つ目のブロックの前には、２つ目のブロックが存在することが保証できる。
【００８８】
図１３は、切り出し動画情報の署名生成処理を示す図である。映像抽出装置１０５の署名生成部４０３は、抽出されたフレーム２００〜５５０に基づいて、ダイジェスト化処理１３０１によってフレームダイジェスト情報を生成する。その後、生成されたフレームダイジェスト情報、図１３中ｈ２００〜ｈ５５０を署名対象とし、抽出を行った抽出者端末１０６の暗号鍵にて抽出者端末１０６の電子署名１３０２を生成する。
【００８９】
この時、フレーム２００〜５５０の３５０フレームを一つの署名対象として、一つの署名情報を生成しているが、運用によって原動画情報に対する署名情報の生成同様に、３００フレームごとに分割して生成・管理してもよい。本実施の形態の場合では、３００フレームと５０フレームの２つとなる。
【００９０】
また、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）等のフレーム間予測を持つ動画フォーマットの場合、再生可能最小単位であるＧＯＰ（Ｇｒｏｕｐ  Ｏｆ  Ｐｉｃｔｕｒｅｓ）の先頭で切り出しを行ってもよい。これにより、切り出し動画情報を切り出し位置から再生することができる。
【００９１】
図１４は、切り出し動画情報の署名検証処理を示す図である。署名検証装置１０７は、フレーム２００〜５５０の切り出し動画情報、フレーム１〜３００の署名情報、フレーム３０１〜６００の署名情報、フレーム２００〜５５０の署名情報を受信する。
【００９２】
初めに、各署名情報の署名対象の正当性の検証を行う。署名検証装置１０７は１つ目のブロックとしてフレーム１〜３００の署名情報から、署名対象と映像記録端末１０４の電子署名１４０１とを取得し、正当性を検証する。２つ目のブロックとしてフレーム３０１〜６００の署名情報も、映像記録端末１０４の電子署名１４０２を使用して正当性を検証する。フレーム２００〜５５０の署名情報も、抽出者端末１０６の電子署名１４０３を使用して正当性を検証する。
【００９３】
署名情報内が生成時点から改ざんされておらず、正当性が確認できたら、署名検証装置１０７は、切り出し動画情報が正しく切り取られているかを検証する。この場合、フレーム１〜３００の署名情報の署名対象の先頭である先頭署名１４０４を確認することで開始位置が確認できる。図１４では、先頭署名１４０４は、映像データの先頭であることを識別する識別情報、“ＳＴＡＲＴ”になっており、切り出し動画情報の抽出開始位置を確認できる。
【００９４】
同様に、フレーム３０１〜６００の署名情報の署名対象の末尾である末尾署名１４０５を確認することで終了位置を確認できる。図１４では、末尾署名１４０５は、フレーム６０１のフレームダイジェスト情報ｈ６０１になっており、記録の末尾であることを識別する識別情報、“ＮＵＬＬ”ではないため、それ以降、電子署名が継続していることを確認できる。
【００９５】
続けて、署名検証装置１０７は、フレーム２００から順に再度フレームダイジェスト情報をダイジェスト化処理１４０６によって生成する。生成されたフレームダイジェスト情報と、フレーム２００〜５５０の署名情報に記録されている該当のフレームのダイジェスト情報とに対して、比較処理１４０７を行う。比較処理１４０７により、切り出し動画情報がフレーム単位では切り出しを行った時点から改ざんがないことを保証できる。
【００９６】
次に、フレーム２００〜５５０の署名情報の、フレーム２００〜３００に対応するフレームダイジェスト情報ｈ２００〜ｈ３００と、フレーム１〜３００の署名情報の中のフレームダイジェスト情報ｈ２００〜ｈ３００とに対して、比較処理１４０８を行う。同様に、フレーム２００〜５５０の署名情報の、フレーム３０１〜５５０に対応するフレームダイジェスト情報ｈ３０１〜ｈ５５０と、フレーム３０１〜６００の署名情報の中のフレームダイジェスト情報ｈ３０１〜ｈ５５０と、に対して、比較処理１４０９を行う。
【００９７】
比較処理１４０９までを行ったことにより、切り出し動画情報がフレーム単位では原動画情報を生成した時点から、改ざんがなく切り出した範囲では原動画情報と同じ情報であることを保証できる。
【００９８】
最後に、切り出し動画情報の範囲で各ブロックが連続していることを検証する。１つ目のブロックのフレーム１〜３００の署名情報には、フレーム３０１のフレームダイジェスト情報ｈ３０１が存在する。署名検証装置１０７は、前述のフレームダイジェスト情報ｈ３０１と、ダイジェスト化処理１４０６にて生成したフレーム３０１のフレームダイジェスト情報ｈ３０１と、に対して連続確認処理１４１０を行う。
【００９９】
同様に、２つ目のブロックのフレーム３０１〜６００の署名情報には、フレーム３００のフレームダイジェスト情報ｈ３００が存在する。署名検証装置１０７は、前述のフレームダイジェスト情報ｈ３００と、ダイジェスト化処理１４０６にて生成したフレーム３００のフレームダイジェスト情報ｈ３００と、に対して連続確認処理１４１０を行う。
【０１００】
上記検証処理がすべて成功することにより、複数に分割された署名情報が連続していることが確認できる。さらに、フレームダイジェスト情報の比較により、切り出し動画情報に相当するフレーム２００〜５５０は、原動画情報に相当するフレーム１〜７５６の一部であり、原動画情報が生成されてから変更されていないことを確認できる。
【０１０１】
図１５は、原動画情報の抽出操作を示す図である。再生ボタン（ＰＲＥＶＩＥＷ）により、切り出し動画情報の再生を行いながら、必要な切り出しを行う範囲を指定することで、抽出者端末１０６は切り出し操作が可能となる。切り出しの方法としては、まず、シークバー（ＳＥＥＫＢＡＲ）を利用して、切り出しを行う開始位置を指定し、指定位置の時点で開始ボタン（ＳＴＡＲＴＳＥＴ）が押下されることで、抽出者端末１０６は切り出し開始位置を設定する。続けて、同様にシークバー（ＳＥＥＫＢＡＲ）を利用して、切り出しを行う終了位置まで指定し、その位置の時点で終了ボタン（ＥＮＤＳＥＴ）が押下されることで、抽出者端末１０６は切り出し終了位置を設定する。
【０１０２】
前述の指定により、切り出し範囲（ＣＵＴＡＲＥＡ）が決定するので、続けて、実行ボタン（ＥＸＴＲＡＣＴＲＵＮ）が押下されることで、抽出者端末１０６は切り出し動画情報の生成を行う。本実施の形態では、抽出者端末１０６によってフレーム２００〜５５０が切り出されたことを想定する。
【０１０３】
図１６は、検証対象の動画情報、および検証情報の選択画面を示す図である。図１６の例では署名検証には、切り出し動画情報と、原動画情報の選択が可能で、検証者端末１０８は、各動画情報の検証が行えるようになっている（ＶＥＲＩＦＹＴＹＰＥ）。たとえば、ＶＥＲＩＦＹＴＹＰＥで切り出し動画情報が選択されると、切り出し動画情報と、原動画情報の署名情報、ならびに切り出し動画情報の署名情報を選択できるようになる。各フィールドの参照ボタン（ＧＥＴＳＴＲＥＡＭ）が押下されることで、ファイル選択アプリケーション、たとえばエクスプローラ等上で各情報を選択することができる。
【０１０４】
具体的には、参照ボタンが押下されることで、署名検証装置１０７内の映像管理ＤＢ５０１に蓄積されている切り出し動画情報を参照・選択できるようになっている。本実施の形態では、原動画情報、および切り出し動画情報は、フレームの集合として扱われており、複数の静止画像を選択することとなる。また、選択された動画情報に対応する署名情報も複数選択する必要がある。本実施の形態における切り出し動画情報の署名検証処理では、切り出し動画情報と、原動画情報の署名情報と、切り出し動画情報の署名情報が必要である。
【０１０５】
具体的には、切り出し動画情報とは、フレーム２００〜５５０である。原動画情報の署名情報とは、フレーム１〜３００の署名情報、ならびにフレーム３０１〜６００の署名情報である。切り出し動画情報の署名情報とは、フレーム２００〜５５０の署名情報である。
【０１０６】
最後に、署名検証ボタン（ＶＥＲＩＦＹＲＵＮ）が押下されることで、署名検証装置１０７は、選択した切り出し動画情報の署名検証処理を実行する。また、本実施の形態では、検証者が原動画情報の署名情報、ならびに切り出し動画情報の署名情報を選択することとしていたが、検証者は、これら署名情報（検証情報）の存在を意識せず、切り出し動画情報のみ選択できる形態もあり得る。
【０１０７】
たとえば、切り出し動画情報の内容を容易に推測・識別可能なタイトルを付与し、検証者には、それらタイトルを集めた一覧を見せ、一覧から選択させる方法もあり得る。前述の場合に、一覧中のある動画情報が選択された際、選択された動画情報が、署名検証装置１０７内の映像管理ＤＢ５０１に蓄積されている、どの動画像情報なのかを識別するための、たとえば、リンク情報を保持しておく等の対策が必要となる。
【０１０８】
図１７は、切り出し動画情報の署名検証結果を示す図である。検証者端末１０８は、この検証結果を表示することにより、切り出し動画情報が、原動画情報の一部であることを表示する。さらに、原動画情報のどの部分が切り出されたかを示す切り出し範囲と、その部分の改変有無を表示することで、検証者は切り出し動画情報の原本性を確認することが可能である（ＶＥＲＩＦＹ１）。さらに、映像記録端末１０４、および抽出者端末１０６の電子署名の確認により、原動画情報はどの端末が生成したのか、切り出し動画情報はどの端末が生成したのかを確認可能である（ＶＥＲＩＦＹ２）。
【０１０９】
また、原動画情報に対する検証も可能である。たとえば、図１６中、ＶＥＲＩＦＹＴＹＰＥで、原動画情報が選択されると、検証者端末１０８は、原動画情報と、原動画情報の署名情報を選択できるようになる。この時、切り出し動画情報の署名情報の選択は不要である。続けて各フィールドの参照ボタン（図１６中ＧＥＴＳＴＲＥＡＭ）が押下されることで、原動画情報を選択できる。具体的には、参照ボタンが押下されることで、検証者端末１０８は、署名検証装置１０７内の映像管理ＤＢ５０１に蓄積されている原動画情報を参照・選択できるようになっている。
【０１１０】
最後に、署名検証ボタン（図１６中ＶＥＲＩＦＹＲＵＮ）が押下されることで、選択した原動画情報の署名検証処理を実行する。この検証処理は、処理のイメージとしては、前述した図１２となり、処理フローとしては後述する図２３で示す方法で行われる。
【０１１１】
前述した装置群を使用して、原動画情報の生成処理および署名生成処理、切り出し動画情報の生成処理および署名生成処理、原動画情報の署名検証処理、切り出し動画情報の取り出し処理、切り出し動画情報の署名検証処理、の各フローを説明する。また、署名生成処理および署名検証処理で呼び出される電子署名の公開鍵登録処理、電子署名付き情報の送受信処理、および受信装置の検証処理のフローを説明する。
【０１１２】
図１８は、電子署名の公開鍵登録処理を示すフローチャートである。図１８では送信装置と認証機関装置１０２との間での公開鍵の登録を行うフローを示す。本実施の形態では、署名生成装置１０３、映像抽出装置１０５が電子署名の送信装置となる。
【０１１３】
初めに、送信装置は、鍵ペア（秘密鍵、および公開鍵）の生成を行う（ステップＳ１８０１）。続けて、証明書発行依頼情報の入力をする（ステップＳ１８０２）。入力される情報は、映像記録端末１０４、抽出者端末１０６に関する情報である。したがって、映像記録端末１０４が複数存在する場合は、それぞれの証明書発行依頼情報を入力してもよい。また、抽出者端末１０６においても、端末を使用するユーザが複数存在する場合には、そのユーザ分の証明書発行依頼情報を入力し、ユーザごとに公開鍵を使い分けてもよい。証明書発行依頼情報の入力が終了した後、送信装置は、その入力された証明書発行依頼情報と公開鍵を認証機関装置１０２へ送信する（ステップＳ１８０３）。
【０１１４】
認証機関装置１０２は、証明書発行依頼情報と公開鍵を通信手段２０４にて受信する（ステップＳ１８０４）。認証機関装置１０２の証明書発行部２０２は、公開鍵を含む公開鍵証明書を生成し（ステップＳ１８０５）、公開鍵ＤＢ２０１に生成した公開鍵証明書を蓄積する（ステップＳ１８０６）。その後、証明書発行部２０２は、通信手段２０４を制御し、ネットワーク１０１を介し、証明書発行依頼情報を送信してきた送信装置へ、発行した公開鍵証明書を送信する（ステップＳ１８０７）。
【０１１５】
公開鍵証明書を受信した送信装置は（ステップＳ１８０８）、ステップＳ１８０１で生成した秘密鍵、および認証機関装置１０２から発行された公開鍵証明書を自身が有する記憶装置に蓄積し（ステップＳ１８０９）、処理を完了する。記憶領域として、署名生成装置１０３は署名生成部３０３内の記憶領域、映像抽出装置１０５は署名生成部４０３内の記憶領域に保持する。
【０１１６】
図１９は、電子署名付き情報の送受信処理、および受信装置の検証処理を示すフローチャートである。図１９では送信装置と受信装置の間での電子署名付き情報の送受信処理、受信装置と認証機関装置１０２の間での電子署名の検証処理を示す。本実施の形態では、署名生成装置１０３と映像抽出装置１０５が送信装置となり、対応する受信装置は、映像抽出装置１０５と署名検証装置１０７となる。
【０１１７】
初めに、送信装置は、署名対象の要約情報（ハッシュ情報）を記憶領域に記憶している秘密鍵によって暗号化する（ステップＳ１９０１）。暗号化してできた情報が電子署名となる。続けて、送信装置は、署名対象と電子署名と同じく記憶領域に記憶している公開鍵証明書とを受信装置に送信する（ステップＳ１９０２）。
【０１１８】
受信装置は、署名対象と電子署名と公開鍵証明書とを受信し（ステップＳ１９０３）、受信した公開鍵証明書の有効期限や失効情報等を確認するため、認証機関装置１０２に対して公開鍵証明書を送信する（ステップＳ１９０４）。本実施の形態では、認証機関装置１０２が証明書発行・証明書検証の一連の機能をサポートしているものとする。次に認証機関装置１０２は公開鍵証明書を受信し（ステップＳ１９０５）、有効性の検証を行い（ステップＳ１９０６）、検証結果を受信装置に対して送信する（ステップＳ１９０７）。
【０１１９】
受信装置は、検証結果を受信し（ステップＳ１９０８）、検証結果が有効であるかを確認する（ステップＳ１９０９）。検証結果が有効でない場合には（ステップＳ１９０９：Ｎｏ）、受信装置は改変のないことを証明できないと判断し（ステップＳ１９１３）、処理を終了する。検証結果が有効である場合には（ステップＳ１９０９：Ｙｅｓ）、受信装置は受信した署名対象の要約情報（ハッシュ情報）を生成し（ステップＳ１９１０）、さらに受信した電子署名を公開鍵で復号する（ステップＳ１９１１）。そして生成した署名対象の要約情報と、電子署名を公開鍵で復号した値が一致するかを確認する（ステップＳ１９１２）。
【０１２０】
一致しない場合は（ステップＳ１９１２：Ｎｏ）、ステップＳ１９１３に移行し、処理を終了する。一致する場合は（ステップＳ１９１２：Ｙｅｓ）、受信装置は改変のないことが証明できたと判断し（ステップＳ１９１４）、署名対象を保持し（ステップＳ１９１５）、処理を終了する。ステップＳ１９１３を通った場合に、受信装置の操作端末、たとえば、映像抽出装置１０５であれば抽出者端末１０６、署名検証装置１０７であれば検証者端末１０８に対して、電子署名が証明できなかった旨の表示を行う通知処理を行ってもよい。
【０１２１】
図２０−１、図２０−２は、原動画情報の生成処理、および署名生成処理を示すフローチャートである。まず、図２０−１において、映像記録端末１０４は、録画開始要求もしくは録画継続要求を受け付けたかを確認する（ステップＳ２００１）。録画開始要求は、たとえば、映像記録端末１０４に装備された録画開始ボタンを押下することで発生する。また、電源投入と同時に録画開始要求を自動で行ってもよい。録画継続要求は、後述するステップＳ２０１１にて署名生成装置１０３が送信することで発生する。
【０１２２】
録画開始要求もしくは録画継続要求を受け付けていれば（ステップＳ２００１：Ｙｅｓ）、映像記録端末１０４は、フレームを記録する（ステップＳ２００３）。その後、記録したフレームを署名生成装置１０３に送信し（ステップＳ２００４）、引き続きステップＳ２００１に戻る。録画開始要求もしくは録画継続要求を受け付けていない場合は、（ステップＳ２００１：Ｎｏ）、録画終了要求を受け付けているかを確認する（ステップＳ２００２）。録画終了要求は、たとえば、映像記録端末１０４に装備された録画停止ボタンが押下されることで発生する。また、署名生成装置１０３から録画終了要求を送信してもよい。
【０１２３】
録画終了要求を受け付けていた場合は（ステップＳ２００２：Ｙｅｓ）、映像記録端末１０４は、録画終了指示を署名生成装置１０３に送信する（ステップＳ２００５）。録画終了指示とは、たとえば、“ＥＮＤ”といった文字列のデータで、署名生成装置１０３では前述したデータを受信すると終了であることを判断する。
【０１２４】
録画終了要求を受け付けていない場合は（ステップＳ２００２：Ｎｏ）、映像記録端末１０４は、引き続きステップＳ２００１に戻る。録画開始要求を受けた後、録画継続要求も録画終了要求も受け付けずにステップＳ２００１に戻った場合、録画継続中であるとして、ステップＳ２００１：Ｙｅｓとして、フレームの記録（ステップＳ２００３）を行ってもよい。
【０１２５】
次に、図２０−２において、署名生成装置１０３は、映像記録端末１０４からフレームもしくは録画終了指示を受信するまで待機する（ステップＳ２００６）。フレームもしくは録画終了指示を受信したら（ステップＳ２００７）、録画終了指示を受け付けたかを確認する（ステップＳ２００８）。録画終了指示を受け付けていなければ（ステップＳ２００８：Ｎｏ）、受信したフレームのダイジェスト情報を生成し保持する（ステップＳ２００９）。ダイジェスト情報とは前述したフレームダイジェスト情報のことであり、前述した図１１ではｈ１、ｈ２、・・・、ｈ７５６にあたる。フレームダイジェスト情報は、署名生成装置１０３内の映像管理ＴＢ３０２を介して、映像管理ＤＢ３０１に記憶する。
【０１２６】
次に、前述したブロック単位＋１分、たとえば３００＋１フレーム分のダイジェスト生成処理が完了していなければ（ステップＳ２０１０：Ｎｏ）、署名生成装置１０３は、映像記録端末１０４に録画継続要求を送信する（ステップＳ２０１１）。映像記録端末１０４は要求受信後（ステップＳ２００１）、フレームの記録を継続する（ステップＳ２００３）。
【０１２７】
ブロック単位＋１分のダイジェスト情報生成処理が完了した場合には（ステップＳ２０１０：Ｙｅｓ）、未署名のフレームダイジェスト情報の集合に対し、署名生成処理を行う（ステップＳ２０１３）。未署名のフレームダイジェスト情報の集合に対する署名生成処理の詳細は、図２１にて後述する。現在のブロックの電子署名の署名対象と、生成された電子署名と、を署名生成装置１０３内の映像管理ＴＢ３０２を介して、映像管理ＤＢ３０１に蓄積する（ステップＳ２０１４）。
【０１２８】
署名対象と電子署名の具体例として、前述した図１１で示すと、現ブロックの署名情報はフレーム１〜３００となる。署名対象は、図１１中ＳｔａｒｔＩｎｆｏとフレームダイジェスト情報ｈ１〜ｈ３００と図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−１−１であるフレームダイジェスト情報ｈ３０１とで構成する。電子署名は、映像記録端末１０４の電子署名１１０４である。
【０１２９】
データを蓄積後、署名生成装置１０３は録画終了指示を受け付けたかを確認する（ステップＳ２０１５）。ステップＳ２０１０：Ｙｅｓからのルートでは、Ｓ２０１５はＮｏのルートとなる。録画終了指示を受け付けていない場合には（ステップＳ２０１５：Ｎｏ）、ステップＳ２０１１に移行し、引き続き録画継続要求を映像記録端末１０４に送信する（ステップＳ２０１１）。ステップＳ２０１５：Ｙｅｓのルートは後述する。送信後、署名生成装置１０３は、フレームを受信するまで待機する（ステップＳ２００６）。
【０１３０】
ステップＳ２００８にて、録画終了指示を受け付けた場合には（ステップＳ２００８：Ｙｅｓ）、続けて、未署名のフレームダイジェスト情報が存在するかを確認する（ステップＳ２０１２）。存在する場合には（ステップＳ２０１２：Ｙｅｓ）、未署名のフレームダイジェスト情報の集合に対し、署名生成処理を行い（ステップＳ２０１３）、署名対象と電子署名を映像管理ＤＢ３０１に保持する（Ｓ２０１４）。
【０１３１】
ステップＳ２００８：Ｙｅｓ、ステップＳ２０１２：Ｙｅｓを通るルートでの署名対象、電子署名の具体例として、前述した図１１で示すと、現ブロックの署名情報は、録画終了指示を受けた後であるため、フレーム６０１〜７５６である。署名対象は、図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−２−２であるフレームダイジェスト情報ｈ６００とフレームダイジェスト情報ｈ６０１〜ｈ７５６と図１１中ＥｎｄＩｎｆｏである“ＮＵＬＬ”といった文字列である。電子署名は、映像記録端末１０４の電子署名１１０６である。
【０１３２】
データを保持後、署名生成装置１０３は録画終了指示を受け付けたかを確認する（ステップＳ２０１５）。ステップＳ２００８：Ｙｅｓからのルートでは、ステップＳ２０１５はＹｅｓのルートとなる。録画終了指示を受け付けている場合には（ステップＳ２０１５：Ｙｅｓ）、原動画情報と署名対象と電子署名を映像抽出装置１０５に送信する（ステップＳ２０１６）。また、未署名のフレームダイジェスト情報が存在しない場合（ステップＳ２０１２：Ｎｏ）も、映像抽出装置１０５に前述した情報を送信する。送信後、署名生成装置１０３は、フレームを受信するまで待機する（ステップＳ２００６）。
【０１３３】
ここで、原動画情報とは、上述したようにフレーム１〜７５６となり、署名対象と電子署名は、図１１で示した通りとなる。すなわち、１つ目のブロックとして、フレームの対象が、フレーム１〜３００になる。署名対象は、図１１中ＳｔａｒｔＩｎｆｏにて示した映像データの先頭を示す識別情報、“ＳＴＡＲＴ”とフレームダイジェスト情報ｈ１〜ｈ３００と図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−１−１にて示したフレームダイジェスト情報ｈ３０１である。電子署名は、前述した署名対象を署名した、映像記録端末１０４の電子署名１１０４である。
【０１３４】
続けて、２つ目のブロックとして、フレームの対象が、フレーム３０１〜６００になる。署名対象は、図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−１−２にて示したフレームダイジェスト情報ｈ３００と、フレームダイジェスト情報ｈ３０１〜ｈ６００と、図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−２−１にて示したフレームダイジェスト情報ｈ６０１である。電子署名は、前述した署名対象を署名した、映像記録端末１０４の電子署名１１０５である。
【０１３５】
最後に、３つ目のブロックとして、フレームの対象が、フレーム６０１〜７５６になる。署名対象は、図１１中ＣｏｎｔｉｎｕｅＩｎｆｏ−２−２にて示したフレームダイジェスト情報ｈ６００と、フレームダイジェスト情報ｈ６０１〜７５６と、図１１中ＥｎｄＩｎｆｏにて示した映像データの末尾を示す識別情報、“ＮＵＬＬ”である。電子署名は、図１１中前述した署名対象を署名した、映像記録端末１０４の電子署名１１０６である。
【０１３６】
映像抽出装置１０５は、原動画情報と署名対象と電子署名を受信するまで待機する（ステップＳ２０１７）。情報を受信したら（ステップＳ２０１８）、受信した情報を映像抽出装置１０５内の映像管理ＴＢ４０２を介して、映像管理ＤＢ４０１に蓄積する（ステップＳ２０１９）。以上で、原動画情報の生成処理、および署名生成処理を終了する。
【０１３７】
本実施の形態では、署名生成装置１０３と映像抽出装置１０５を分けて、署名生成する機能と一部を抽出する機能を分けたが、署名生成装置１０３が署名生成処理、保存・管理、一部抽出処理を一括して行う形態も考えられる。その場合には、映像抽出装置１０５はなくてもよい。
【０１３８】
図２１は、フレームダイジェスト情報の集合に対する署名生成処理を示すフローチャートである。具体的には、対象のブロックに対して、電子署名の署名対象を生成し、署名生成処理を行う処理である。本処理は引数として、未署名のフレームダイジェスト情報の範囲を引き継いでいる。
【０１３９】
署名生成装置１０３は、録画終了指示を受け付けたかを確認する（ステップＳ２１０１）。受け付けていない場合（ステップＳ２１０１：Ｎｏ）、電子署名の保証範囲リストを、入力されたフレームダイジェスト情報の範囲から、末尾のフレームダイジェスト情報を除いた部分に設定する（ステップＳ２１０２）。受け付けていた場合（ステップＳ２１０１：Ｙｅｓ）、電子署名の保証範囲リストを、入力されたフレームダイジェスト情報の範囲に設定する（ステップＳ２１０３）。
【０１４０】
電子署名の保証範囲リストとは、対象のブロックがどのフレームまでかを表す変数である。末尾のフレームダイジェスト情報を除くのは、録画終了指示を受け付けていない場合、末尾のフレームダイジェスト情報は次のブロック内に位置し、対象のブロックと次のブロックとの連続を保証するのに使用するためである。
【０１４１】
続けて、署名生成装置１０３は、電子署名の保証範囲リストを電子署名の署名対象に複製する（ステップＳ２１０４）。次に、複製した電子署名の署名対象は原動画情報の先頭であるかを確認する（ステップＳ２１０５）。先頭でない場合には（ステップＳ２１０５：Ｎｏ）、電子署名の署名対象の先頭に、電子署名済みであるフレームダイジェスト情報の集合の末尾にあるフレームダイジェスト情報を連続保証ダイジェストとして付加する（ステップＳ２１０６）。具体的には、図１１で示すと、２つ目のブロックでは、ＣｏｎｔｉｎｕｅＩｎｆｏ−１−２で示されるｈ３００であり、３つ目のブロックでは、ＣｏｎｔｉｎｕｅＩｎｆｏ−２−２で示されるｈ６００である。
【０１４２】
先頭である場合には（ステップＳ２１０５：Ｙｅｓ）、電子署名の署名対象の先頭に、先頭であることを識別する識別情報を付加する（ステップＳ２１０７）。具体的には、図１１で示すと、１つ目のブロックの先頭に設定されている、ＳｔａｒｔＩｎｆｏで示されている“ＳＴＡＲＴ”といった文字列である。
【０１４３】
先頭部分の判断が終了したら、同様に末尾部分の判断を行う。署名生成装置１０３は、録画終了指示を受け付けたかを確認する（ステップＳ２１０８）。受け付けていない場合（ステップＳ２１０８：Ｎｏ）、電子署名の署名対象の末尾に、入力されたフレームダイジェスト情報の集合の末尾にあるフレームダイジェスト情報を連続保証ダイジェストとして付加する（ステップＳ２１０９）。具体的には、図１１で示すと、１つ目のブロックでは、ＣｏｎｔｉｎｕｅＩｎｆｏ−１−１で示されるｈ３０１であり、２つ目のブロックでは、ＣｏｎｔｉｎｕｅＩｎｆｏ−２−１で示されるｈ６０１である。
【０１４４】
受け付けていた場合（ステップＳ２１０８：Ｙｅｓ）、電子署名の署名対象の末尾に、末尾であることを識別する識別情報を付加する（ステップＳ２１１０）。具体的には、図１１で示すと、３つ目のブロックの末尾に設定されている、ＥｎｄＩｎｆｏで示されている“ＮＵＬＬ”といった文字列である。
【０１４５】
署名対象の設定終了後、電子署名の署名対象に対して、映像記録端末の電子署名を生成する（ステップＳ２１１１）。生成後、電子署名の保証範囲リストに含まれたフレームダイジェスト情報を電子署名済みに設定する（ステップＳ２１１２）。上記処理により、対象のブロックと前後のブロックとが連続することに関する正当性を検証時に保証することができる情報を、署名対象に入れることができる。
【０１４６】
図２２−１、図２２−２は、切り出し動画情報の生成処理、および署名生成処理を示すフローチャートである。切り出し動画情報の生成を行うには、まず原動画情報が必要となる。したがって図２２−１では原動画情報の取得を、図２２−２では、切り出し動画情報の生成を行っている。
【０１４７】
まず、図２２−１において、抽出者端末１０６は、映像抽出装置１０５に、切り出し対象の原動画情報の取り出し要求を送信する（ステップＳ２２０１）。送信後、抽出者端末１０６は、映像抽出装置１０５から応答があるまで待機する。
【０１４８】
映像抽出装置１０５は、切り出し対象の原動画情報の取り出し要求を受信する（ステップＳ２２０２）。受信後、映像抽出装置１０５内の映像管理ＴＢ４０２を介して、映像管理ＤＢ４０１に蓄積された切り出し対象の原動画情報と署名情報を取り出し、署名検証部４０４を介して、原動画情報の署名検証処理を行う（ステップＳ２２０３）。原動画情報の署名検証処理の詳細は、図２３にて後述する。署名検証処理を行う理由は、切り出し処理を行う前に、原動画情報が改ざんされていないかどうかを確認するためである。
【０１４９】
原動画情報の署名検証処理の終了後、映像抽出装置１０５は、原動画情報の検証に成功したかを確認する（ステップＳ２２０４）。成功した場合は（ステップＳ２２０４：Ｙｅｓ）原動画情報を、失敗した場合は（ステップＳ２２０４：Ｎｏ）エラー通知をそれぞれ抽出者端末１０６に送信する（ステップＳ２２０５、Ｓ２２０６）。
【０１５０】
抽出者端末１０６は、映像抽出装置１０５からの受信内容を確認する（ステップＳ２２０７）。受信内容が原動画情報だった場合は（ステップＳ２２０７：Ｙｅｓ）、原動画情報を表示し（ステップＳ２２０８）、切り出し動画情報の生成を行う。受信内容が原動画情報でなかった場合は（ステップＳ２２０７：Ｎｏ）、エラーを受信したこととなり、エラー通知を表示し（ステップＳ２２０９）、処理を終了する。
【０１５１】
次に、図２２−２において、抽出者端末１０６は、切り出し動画情報を生成する（ステップＳ２２１０）。生成する様子は、前述した図１５である。本実施の形態では、フレーム２００〜５５０が切り出されたことを想定する。切り出し動画情報の生成が完了すると、映像抽出装置１０５に対して、生成した切り出し動画情報を送信する（ステップＳ２２１１）。
【０１５２】
映像抽出装置１０５は、切り出し動画情報を受信し（ステップＳ２２１２）、署名生成部４０３は、切り出し動画情報に対する署名情報を生成する。生成の様子は、前述した図１３となる。初めに、受信した切り出し動画情報の先頭のフレームを取得する（ステップＳ２２１３）。図１３では、フレーム２００である。続けて、取得したフレームのフレームダイジェスト情報を生成し、保持する（ステップＳ２２１４）。取得したフレームが最後のフレームかを確認し（ステップＳ２２１５）、最後のフレームまで達していない場合は（ステップＳ２２１５：Ｎｏ）、次のフレームを取得する（ステップＳ２２１６）。その後、引き続き、フレームダイジェスト情報を生成し保持する（ステップＳ２２１４）。
【０１５３】
最後のフレームまで達している場合は（ステップＳ２２１５：Ｙｅｓ）、フレームダイジェスト情報の集合、図１３では、ｈ２００、ｈ２０１、・・・、ｈ５５０に対して、抽出者端末１０６の電子署名を生成する（ステップＳ２２１７）。図１３では、抽出者端末１０６の電子署名１３０２である。
【０１５４】
切り出し動画情報に対する署名対象と電子署名とで構成される署名情報の生成が完了すると、映像抽出装置１０５内の映像管理ＴＢ４０２を介して、切り出し動画情報と署名対象と電子署名をペアにして、映像管理ＤＢ４０１に保持する（ステップＳ２２１８）。続けて、映像抽出装置１０５は、通信手段４０５を介し、署名検証装置１０７に対して、切り出し動画情報、原動画情報の署名対象と電子署名、切り出し動画情報の署名対象と電子署名を送信する（ステップＳ２２１９）。署名検証装置１０７は、通信手段５０４を介し、前述した情報を受信し（ステップＳ２２２０）、映像管理ＴＢ５０２を介して、映像管理ＤＢ５０１に蓄積する（ステップＳ２２２１）。
【０１５５】
図２３は、原動画情報の署名検証処理を示すフローチャートである。前述した図１２にて、署名検証処理の様子を示す。初めに、映像抽出装置１０５は、ブロック単位ごとの電子署名の検証を行い、すべての署名情報が生成時点から改ざんされていないことを確認する（ステップＳ２３０１）。確認する電子署名は、図１２中では、映像記録端末１０４の電子署名１２０１〜１２０３である。
【０１５６】
検証に成功した場合（ステップＳ２３０１：Ｙｅｓ）、署名対象に、先頭署名、末尾署名が付加されているかを確認する（ステップＳ２３０２）。先頭署名は、先頭ブロックの、署名対象の先頭にある情報で、図１２では、先頭署名１２０４は、データの先頭であることを識別する識別情報、“ＳＴＡＲＴ”である。末尾署名は、末尾ブロックの署名対象の末尾にある情報で、図１２では末尾署名１２０５は、データの末尾であることを識別する識別情報、“ＮＵＬＬ”である。
【０１５７】
先頭署名と末尾署名が付加されている場合（ステップＳ２３０２：Ｙｅｓ）、映像抽出装置１０５は、原動画情報の先頭のフレームを取得し（ステップＳ２３０３）、取得したフレームのフレームダイジェスト情報を生成する（ステップＳ２３０４）。図１２中では、ダイジェスト化処理１２０６であり、ｈ１、ｈ２、・・・、ｈ７５６を生成する。
【０１５８】
生成後、生成したフレームダイジェスト情報と署名対象に記録されているフレームダイジェスト情報が一致するかを確認する（ステップＳ２３０５）。図１２では、比較処理１２０７〜１２０９である。
【０１５９】
一致した場合には（ステップＳ２３０５：Ｙｅｓ）、映像抽出装置１０５は、生成したフレームダイジェスト情報が連続保証ダイジェスト情報として使用されているかを確認する（ステップＳ２３０６）。図１２中で連続保証ダイジェスト情報として使用されているフレームダイジェスト情報は、ｈ３００、ｈ３０１、ｈ６００、ｈ６０１である。使用されていない場合（ステップＳ２３０６：Ｎｏ）、ステップＳ２３０８に移行する。
【０１６０】
使用されている場合（ステップＳ２３０６：Ｙｅｓ）、生成したフレームダイジェスト情報と連続保証ダイジェスト情報が一致するかを確認する（ステップＳ２３０７）。図１２中では連続確認処理１２１０、１２１１である。
【０１６１】
一致した場合（ステップＳ２３０７：Ｙｅｓ）、もしくはステップＳ２３０６：Ｎｏの場合、取得したフレームに関する検証処理は終了したため、取得したフレームが末尾のフレームかを確認する（ステップＳ２３０８）。末尾のフレームでない場合は（ステップＳ２３０８：Ｎｏ）、次のフレームを取得し（ステップＳ２３１０）、引き続き次のフレームに対してフレームダイジェスト情報を生成し（ステップＳ２３０４）、検証処理を続ける。取得したフレームが末尾のフレームである場合は（ステップＳ２３０８：Ｙｅｓ）、原動画情報の署名検証処理に成功し（ステップＳ２３０９）、原動画情報を抽出者端末１０６に送信する。
【０１６２】
ステップＳ２３０１、Ｓ２３０２、Ｓ２３０５、Ｓ２３０７でＮｏだった場合には、原動画情報の署名検証処理に失敗したこととなり、抽出者端末１０６に失敗したことを通知する（ステップＳ２３１１）。
【０１６３】
図２４は、切り出し動画情報の取り出し処理を示すフローチャートである。検証者端末１０８は、署名検証装置１０７に、切り出し動画情報の取り出し指示を送信する（ステップＳ２４０１）。切り出し動画情報の取り出し方法は、前述した図１６で示す通りである。送信後、検証者端末１０８は、署名検証装置１０７から応答があるまで待機する。
【０１６４】
署名検証装置１０７は、切り出し動画情報の取り出し指示を受信する（ステップＳ２４０２）。受信後、署名検証装置１０７内の映像管理ＴＢ５０２を介して、映像管理ＤＢ５０１に蓄積された切り出し動画情報と原動画情報の署名対象および電子署名と切り出し動画情報の署名対象および電子署名を取り出す（ステップＳ２４０３）。署名検証部５０３を介して、切り出し動画情報の署名検証処理を行う（ステップＳ２４０４）。切り出し動画情報の署名検証処理の詳細は、図２５にて後述する。
【０１６５】
切り出し動画情報の署名検証処理の終了後、署名検証装置１０７は、切り出し動画情報の検証に成功したかを確認する（ステップＳ２４０５）。成功した場合は（ステップＳ２４０５：Ｙｅｓ）切り出し動画情報の署名検証結果を、失敗した場合は（ステップＳ２４０５：Ｎｏ）エラー通知をそれぞれ検証者端末１０８に送信する（ステップＳ２４０６、Ｓ２４０７）。
【０１６６】
検証者端末１０８は、署名検証装置１０７からの受信内容を確認する（ステップＳ２４０８）。受信内容が切り出し動画情報の署名検証結果だった場合は（ステップＳ２４０８：Ｙｅｓ）、切り出し動画情報の署名検証結果を表示する（ステップＳ２４０９）。受信内容が切り出し動画情報の署名検証結果でなかった場合は（ステップＳ２４０８：Ｎｏ）、エラーを受信したこととなり、エラー通知を表示する（ステップＳ２４１０）。
【０１６７】
図２５は、切り出し動画情報の署名検証処理を示すフローチャートである。前述した図１４にて、署名検証処理の様子を示す。初めに、署名検証装置１０７は、原動画情報のブロック単位ごとの電子署名の検証と、切り出し動画情報の電子署名の検証を行い、すべての署名情報が生成時点から改ざんされていないことを確認する（ステップＳ２５０１）。確認する電子署名は、図１４中では、映像記録端末１０４の電子署名１４０１、１４０２と、抽出者端末１０６の電子署名１４０３である。
【０１６８】
検証に成功した場合（ステップＳ２５０１：Ｙｅｓ）、原動画情報の署名対象の、先頭署名、末尾署名から抽出位置を確認する（ステップＳ２５０２）。先頭署名は、先頭ブロックの、署名対象の先頭にある情報で、図１４では、先頭署名１４０４はデータの先頭を識別する識別情報、“ＳＴＡＲＴ”である。末尾署名は、末尾ブロックの署名対象の末尾にある情報で、図１４では、末尾署名１４０５は、フレーム６０１のフレームダイジェスト情報であるｈ６０１である。図１４にて、末尾署名１４０５が、データの末尾を識別する識別情報、“ＮＵＬＬ”ではないため、それ以降、電子署名が継続していることがわかる。
【０１６９】
抽出位置を確認後、署名検証装置１０７は、切り出し動画情報の先頭のフレームを取得し（ステップＳ２５０３）、取得したフレームのフレームダイジェスト情報を生成する（ステップＳ２５０４）。図１４中では、ダイジェスト化処理１４０６であり、ｈ２００、ｈ２０１、・・・、ｈ５５０を生成する。
【０１７０】
生成後、生成したフレームダイジェスト情報と切り出し動画情報の署名対象に記録されているフレームダイジェスト情報が一致するかを確認する（ステップＳ２５０５）。図１４では、比較処理１４０７である。
【０１７１】
一致した場合には（ステップＳ２５０５：Ｙｅｓ）、署名検証装置１０７は、生成したフレームダイジェスト情報と原動画情報の署名対象に記録されているフレームダイジェスト情報が一致するかを確認する（ステップＳ２５０６）。図１４では、比較処理１４０８〜１４０９である。
【０１７２】
一致した場合には（ステップＳ２５０６：Ｙｅｓ）、署名検証装置１０７は、生成したフレームダイジェスト情報が連続保証ダイジェスト情報として使用されているかを確認する（ステップＳ２５０７）。図１４中で連続保証ダイジェスト情報として使用されているフレームダイジェスト情報は、ｈ３００、ｈ３０１である。使用されていない場合（ステップＳ２５０７：Ｎｏ）、ステップＳ２５０９に移行する。
【０１７３】
使用されている場合（ステップＳ２５０７：Ｙｅｓ）、生成したフレームダイジェスト情報と連続保証ダイジェスト情報が一致するかを確認する（ステップＳ２５０８）。図１４中では連続確認処理１４１０である。
【０１７４】
一致した場合（ステップＳ２５０８：Ｙｅｓ）、もしくはステップＳ２５０７：Ｎｏの場合、取得したフレームに関する検証処理は終了したため、取得したフレームが末尾のフレームかを確認する（ステップＳ２５０９）。末尾のフレームでない場合は（ステップＳ２５０９：Ｎｏ）、次のフレームを取得し（ステップＳ２５１１）、引き続き次のフレームに対してフレームダイジェスト情報を生成し（ステップＳ２５０４）、検証処理を続ける。取得したフレームが末尾のフレームである場合は（ステップＳ２５０９：Ｙｅｓ）、切り出し動画情報の署名検証処理に成功したこととなり、切り出し動画情報の署名検証結果を検証者端末１０８に送信する（ステップＳ２５１０）。
【０１７５】
ステップＳ２５０１、Ｓ２５０５、Ｓ２５０６、Ｓ２５０８でＮｏだった場合には、原動画情報の署名検証処理に失敗したこととなり、抽出者端末１０８に失敗したことを通知する（ステップＳ２５１２）。
【０１７６】
以上説明したように、本実施の形態にかかる署名生成装置１０３によれば、一連のデータをブロック単位で分割し、該当のブロックにて前後する少なくともいずれか一方のブロック内のデータのメッセージダイジェストを用いて電子署名する。この電子署名により、ブロック列の連続性を担保することができる。
【０１７７】
また、前後する少なくともいずれか一方のブロックは、次のブロックであってもよい。これにより、該当のブロックと、次のブロックとの順で連続性を担保することができる。また、該当のブロックは、データの末尾ではなく、後方にデータが存在することを保証できる。
【０１７８】
また、前後する少なくともいずれか一方のブロックは、前のブロックと次のブロックであってもよい。これにより、前のブロックと、該当のブロックと、次のブロックとの順で連続性を担保することができる。また、該当のブロックは、データの先頭ではなく前方にデータが存在することを保証でき、さらに、データの末尾ではなく後方にデータが存在することを保証できる。
【０１７９】
また、次のブロックのメッセージダイジェストを含む際に、次のブロックの先頭のメッセージダイジェストを用いて署名してもよい。これにより、電子署名をいち早く生成することができる。
【０１８０】
また、前後する少なくともいずれか一方のブロックは、前のブロックであってもよい。これにより、前のブロックと、該当のブロックとの順で連続性を担保することができる。また、該当のブロックは、データの先頭ではなく前方にデータが存在することを保証できる。
【０１８１】
また、該当のブロックが先頭ブロックである場合に、先頭ブロックであることを示す識別情報を含めて電子署名を行ってもよい。これにより、該当のブロックは、データの先頭であることが保証できる。たとえば、改ざんによって該当のブロックの前に不当な他のブロックを連結させることができないことを保証できる。
【０１８２】
また、該当のブロックが末尾ブロックである場合に、末尾ブロックであることを示す識別情報を含めて電子署名を行ってもよい。これにより、該当のブロックは、データの末尾であることが保証できる。たとえば、改ざんによって該当のブロックの次に不当な他のブロックを連結させることができないことを保証できる。
【０１８３】
また、映像データから一定時間ごとに切り出したフレームの集合を、一連のデータとしてもよい。これにより、フレーム単位でメッセージダイジェスト情報を比較することができるため、フレーム単位で管理している映像フォーマットは本実施例を適用することができる。
【０１８４】
また、本実施の形態にかかる署名検証装置１０７によれば、一連のデータがブロック単位で分割され、該当のブロックにて前後する少なくともいずれか一方のブロック内のデータのメッセージダイジェストを用いた電子署名を受信する。この電子署名を検証することにより、ブロック列の連続性を証明することができる。
【０１８５】
また、前後する少なくともいずれか一方のブロックは、次のブロックであってもよい。これにより、該当のブロックと、次のブロックとの順で、連続性を検証できブロック間の差し替え、中抜きを防止することができる。
【０１８６】
また、前後する少なくともいずれか一方のブロックは、前のブロックと次のブロックでもよい。これにより、前のブロックと、該当のブロックと、次のブロックとの順で、連続性を検証できブロック間の差し替え、中抜きを防止することができる。
【０１８７】
また、前後する少なくともいずれか一方のブロックは、前のブロックであってもよい。これにより、前のブロックと、該当のブロックとの順で、連続性を検証できブロック間の差し替え、中抜きを防止することができる。
【０１８８】
また、該当のブロックが先頭ブロックである場合に、先頭ブロックであることを示す識別情報を含めた電子署名を受信してもよい。これにより、該当のブロックが先頭であることを検証でき、該当のブロックの前に不当なブロックが連結されることを防止することができる。
【０１８９】
また、該当のブロックが末尾ブロックである場合に、末尾ブロックであることを示す識別情報を含めた電子署名を受信してもよい。これにより、該当のブロックが末尾であることを検証でき、該当のブロックの次に不当なブロックが連結されることを防止することができる。
【０１９０】
また、署名情報のデータ量削減を目的として、特開２００８−１７８０４８のような発明を利用し、ハッシュ情報を二分木で管理する手法を使用することも可能である。
【０１９１】
また、本実施の形態では、長時間、かつリアルタイムで記録される動画情報が改ざんされていないことの証明に加え、時系列に連続記録され、中抜きや差し替え等がないことが第三者に証明することが可能である。さらに、プライバシ保護等のために原動画情報の一部を切り出しても、切り出し位置の検出、および切り出し動画情報の原本性検証が可能となる。また、抽出者は、署名情報に対する電子署名から明らかとなるため、仮に抽出者や他の第三者が切り出し動画情報に対して何らかの改変・追加等を施した場合でも、その追跡は可能である。
【０１９２】
また、本実施の形態でのデータは映像データであったが、音声データや、連続する一連のテキストデータであってもよい。音声データは、たとえば、防犯用のマイクからの連続するデータである。また、連続する一連のテキストデータとしては、たとえば、２４時間稼働するＷｅｂサーバのアクセスログ等である。本実施の形態を適用するならば、Ｗｅｂサーバが生成した１日間のログに対して、署名生成装置１０３はフレームダイジェスト情報を生成し、一か月単位のアクセスログを署名対象にして電子署名を生成することで、本発明を適用できる。
【０１９３】
なお、本実施の形態で説明した署名生成方法および署名検証方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本署名生成プログラムおよび本署名検証プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本署名生成プログラムおよび本署名検証プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１９４】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１９５】
（付記１）連続する一連のデータを受信する受信手段と、
前記受信手段によって受信されたデータを受信するごとに当該データを要約した要約情報を順次生成する要約情報生成手段と、
前記要約情報生成手段によって生成された一連の要約情報が所定数になった場合、前記一連の要約情報をブロック単位で順次取得する取得手段と、
前記取得手段によって取得された一連の要約情報となる現ブロックと前記現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報とを、署名対象に設定する設定手段と、
前記設定手段によって前記署名対象に設定された現ブロックの要約元となるデータ群に関する電子署名を生成する電子署名生成手段と、
前記電子署名生成手段によって生成された電子署名と前記電子署名が関連付けられた署名対象と前記署名対象に設定された現ブロックの要約元となるデータ群とを記憶装置に送信する送信手段と、
を備えることを特徴とする署名生成装置。
【０１９６】
（付記２）前記設定手段は、
前記現ブロックに前後する少なくともいずれか一方のブロックが前記現ブロックの次のブロックである場合、前記現ブロックと前記次のブロックの中から選ばれた要約情報とを前記署名対象に設定することを特徴とする付記１に記載の署名生成装置。
【０１９７】
（付記３）前記設定手段は、
前記現ブロックに前後する少なくともいずれか一方のブロックが前記現ブロックの前のブロックと次のブロックである場合、前記現ブロックと前記前のブロックの中から選ばれた要約情報と前記次のブロックの中から選ばれた要約情報とを前記署名対象に設定することを特徴とする付記１に記載の署名生成装置。
【０１９８】
（付記４）前記次のブロックの中から選ばれた要約情報は、前記次のブロック内の先頭の要約情報であることを特徴とする付記２または３に記載の署名生成装置。
【０１９９】
（付記５）前記設定手段は、
前記現ブロックに前後する少なくともいずれか一方のブロックが前記現ブロックの前のブロックである場合、前記現ブロックと前記前のブロックの中から選ばれた要約情報とを前記署名対象に設定することを特徴とする付記１に記載の署名生成装置。
【０２００】
（付記６）前記設定手段は、
前記現ブロックが先頭ブロックである場合、前記現ブロックと前記現ブロックが先頭ブロックであることを示す識別情報と前記次のブロックの中から選ばれた要約情報とを前記署名対象に設定することを特徴とする付記２〜４のいずれか一つに記載の署名生成装置。
【０２０１】
（付記７）前記設定手段は、
前記現ブロックが末尾ブロックである場合、前記現ブロックと前記前のブロックの中から選ばれた要約情報と前記現ブロックが末尾ブロックであることを示す識別情報とを前記署名対象に設定することを特徴とする付記３または５に記載の署名生成装置。
【０２０２】
（付記８）前記受信手段は、
映像データから一定時間ごとに切り出したフレームを前記データとすることを特徴とする付記１〜７のいずれか一つに記載の署名生成装置。
【０２０３】
（付記９）受信手段と要約情報生成手段と取得手段と設定手段と電子署名生成手段と送信手段とを備えるコンピュータが、
前記受信手段により、連続する一連のデータを受信する受信工程と、
前記要約情報生成手段により、前記受信工程によって受信されたデータを受信するごとに当該データを要約した要約情報を順次生成する要約情報生成工程と、
前記取得手段により、前記要約情報生成工程によって生成された一連の要約情報が所定数になった場合、前記一連の要約情報をブロック単位で順次取得する取得工程と、
前記設定手段により、前記取得工程によって取得された一連の要約情報となる現ブロックと前記現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報とを、署名対象に設定する設定工程と、
前記電子署名生成手段により、前記設定工程によって前記署名対象に設定された現ブロックの要約元となるデータ群に関する電子署名を生成する電子署名生成工程と、
前記送信手段により、前記電子署名生成工程によって生成された電子署名と前記電子署名が関連付けられた署名対象と前記署名対象に設定された現ブロックの要約元となるデータ群とを記憶装置に送信する送信工程と、
を実行することを特徴とする署名生成方法。
【０２０４】
（付記１０）コンピュータを、
連続する一連のデータを受信する受信手段、
前記受信手段によって受信されたデータを受信するごとに当該データを要約した要約情報を順次生成する要約情報生成手段、
前記要約情報生成手段によって生成された一連の要約情報が所定数になった場合、前記一連の要約情報をブロック単位で順次取得する取得手段、
前記取得手段によって取得された一連の要約情報となる現ブロックと前記現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報とを、署名対象に設定する設定手段、
前記設定手段によって前記署名対象に設定された現ブロックの要約元となるデータ群に関する電子署名を生成する電子署名生成手段、
前記電子署名生成手段によって生成された電子署名と前記電子署名が関連付けられた署名対象と前記署名対象に設定された現ブロックの要約元となるデータ群とを記憶装置に送信する送信手段、
として機能させることを特徴とする署名生成プログラム。
【０２０５】
（付記１１）一連のデータと、前記データごとに当該データを要約した要約情報に関して当該要約情報を所定数ごとにまとめた一連の要約情報をブロック単位で扱い、検証の対象となる現ブロックと当該現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報（以下、「前後いずれかの要約情報」という）とで構成された署名対象と、前記署名対象に基づいて生成される前記現ブロックの要約元となるデータ群に関する電子署名と、を受信する受信手段と、
前記受信手段によって受信されたデータごとに当該データを要約した要約情報（以下、「生成要約情報」という）を生成する要約情報生成手段と、
前記署名対象の正当性を、前記電子署名に基づいて検証する署名対象検証手段と、
前記データの正当性を、前記署名対象検証手段によって検証された前記署名対象と前記生成要約情報とに基づいて検証するデータ検証手段と、
前記現ブロックと当該現ブロックに前後する少なくともいずれか一方のブロックとが連続することに関する正当性を、前記生成要約情報のうち前記現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報と前記前後いずれかの要約情報とに基づいて検証する連続検証手段と、
前記署名対象検証手段と前記データ検証手段と前記連続検証手段とによって検証された検証結果に基づいて、前記データの正当性を検証する電子署名検証手段と、
を備えることを特徴とする署名検証装置。
【０２０６】
（付記１２）前記受信手段は、
前記現ブロックに前後する少なくともいずれか一方のブロックが前記現ブロックの次のブロックである場合、前記データと、前記現ブロックと前記次のブロックの中から選ばれた要約情報（以下、「次の要約情報」という）とで構成された署名対象と、前記署名対象に基づいて生成される前記現ブロックの要約元となるデータ群に関する電子署名と、を受信し、
前記連続検証手段は、
前記現ブロックと前記次のブロックとの順で連続することに関する正当性を、前記次の要約情報と前記生成要約情報のうち前記次のブロックの中から選ばれた要約情報とに基づいて検証することを特徴とする付記１１に記載の署名検証装置。
【０２０７】
（付記１３）前記受信手段は、
前記現ブロックに前後する少なくともいずれか一方のブロックが前記現ブロックの前のブロックと次のブロックである場合、前記データと、前記現ブロックと前記前のブロックの中から選ばれた要約情報（以下、「前の要約情報」という）と次の要約情報とで構成された署名対象と、前記署名対象に基づいて生成される前記現ブロックの要約元となるデータ群に関する電子署名と、を受信し、
前記連続検証手段は、
前記前のブロックと前記現ブロックとの順で連続することに関する正当性を、前記生成要約情報のうち前記前のブロックの中から選ばれた要約情報と前記前の要約情報とに基づいて検証し、前記現ブロックと前記次のブロックとの順で連続することに関する正当性を、前記次の要約情報と前記生成要約情報のうち前記次のブロックの中から選ばれた要約情報とに基づいて検証することを特徴とする付記１１に記載の署名検証装置。
【０２０８】
（付記１４）前記受信手段は、
前記現ブロックに前後する少なくともいずれか一方のブロックが前記現ブロックの前のブロックである場合、前記データと、前記現ブロックと前の要約情報とで構成された署名対象と、前記署名対象に基づいて生成される前記現ブロックの要約元となるデータ群に関する電子署名と、を受信し、
前記連続検証手段は、
前記前のブロックと前記現ブロックとの順で連続することに関する正当性を、前記生成要約情報のうち前記前のブロックの中から選ばれた要約情報と前記前の要約情報とに基づいて検証することを特徴とする付記１１に記載の署名検証装置。
【０２０９】
（付記１５）前記受信手段は、
前記データと、前記現ブロックと前記一連のデータの先頭を示す識別情報と前記次の要約情報とで構成された署名対象と、前記署名対象に基づいて生成される前記現ブロックの要約元となるデータ群に関する電子署名と、を受信し、
前記連続検証手段は、
前記現ブロックと前記次のブロックとの順で連続することに関する正当性を、前記次の要約情報と前記生成要約情報のうち前記次のブロックの中から選ばれた要約情報とに基づいて検証し、前記現ブロックが先頭ブロックであることの正当性を、前記先頭を示す識別情報に基づいて検証することを特徴とする付記１２または１３に記載の署名検証装置。
【０２１０】
（付記１６）前記受信手段は、
前記データと、前記現ブロックと前記前の要約情報と前記一連のデータの末尾を示す識別情報とで構成された署名対象と、前記署名対象に基づいて生成される前記現ブロックの要約元となるデータ群に関する電子署名と、を受信し、
前記連続検証手段は、
前記前のブロックと前記現ブロックとの順で連続することに関する正当性を、前記生成要約情報のうち前記前のブロックの中から選ばれた要約情報と前記前の要約情報とに基づいて検証し、前記現ブロックが末尾ブロックであることの正当性を、前記末尾を示す識別情報に基づいて検証することを特徴とする付記１３または１４に記載の署名検証装置。
【０２１１】
（付記１７）受信手段と要約情報生成手段と署名対象検証手段とデータ検証手段と連続検証手段と電子署名検証手段とを備えるコンピュータが、
前記受信手段により、一連のデータと、前記データごとに当該データを要約した要約情報に関して当該要約情報を所定数ごとにまとめた一連の要約情報をブロック単位で扱い、検証の対象となる現ブロックと当該現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報（以下、「前後いずれかの要約情報」という）とで構成された署名対象と、前記署名対象に基づいて生成される前記現ブロックの要約元となるデータ群に関する電子署名と、を受信する受信工程と、
前記要約情報生成手段により、前記受信工程によって受信されたデータごとに当該データを要約した要約情報（以下、「生成要約情報」という）を生成する要約情報生成工程と、
前記署名対象検証手段により、前記署名対象の正当性を、前記電子署名に基づいて検証する署名対象検証工程と、
前記データ検証手段により、前記データの正当性を、前記署名対象検証工程によって検証された前記署名対象と前記生成要約情報とに基づいて検証するデータ検証工程と、
前記連続検証手段により、前記現ブロックと当該現ブロックに前後する少なくともいずれか一方のブロックとが連続することに関する正当性を、前記生成要約情報のうち前記現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報と前記前後いずれかの要約情報とに基づいて検証する連続検証工程と、
前記電子署名検証手段により、前記署名対象検証工程と前記データ検証工程と前記連続検証工程とによって検証された検証結果に基づいて、前記データの正当性を検証する電子署名検証工程と、
を実行することを特徴とする署名検証方法。
【０２１２】
（付記１８）一連のデータと、前記データごとに当該データを要約した要約情報に関して当該要約情報を所定数ごとにまとめた一連の要約情報をブロック単位で扱い、検証の対象となる現ブロックと当該現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報（以下、「前後いずれかの要約情報」という）とで構成された署名対象と、前記署名対象に基づいて生成される前記現ブロックの要約元となるデータ群に関する電子署名と、を受信する受信手段、
前記受信手段によって受信されたデータごとに当該データを要約した要約情報（以下、「生成要約情報」という）を生成する要約情報生成手段、
前記署名対象の正当性を、前記電子署名に基づいて検証する署名対象検証手段、
前記データの正当性を、前記署名対象検証手段によって検証された前記署名対象と前記生成要約情報とに基づいて検証するデータ検証手段、
前記現ブロックと当該現ブロックに前後する少なくともいずれか一方のブロックとが連続することに関する正当性を、前記生成要約情報のうち前記現ブロックに前後する少なくともいずれか一方のブロックの中から選ばれた要約情報と前記前後いずれかの要約情報とに基づいて検証する連続検証手段、
前記署名対象検証手段と前記データ検証手段と前記連続検証手段とによって検証された検証結果に基づいて、前記データの正当性を検証する電子署名検証手段、
として機能させることを特徴とする署名検証プログラム。
【符号の説明】
【０２１３】
１０３  署名生成装置
１０７  署名検証装置
３０３  署名生成部
５０３  署名検証部
７０１  受信部
７０２  要約情報生成部
７０３  取得部
７０４  設定部
７０５  電子署名生成部
７０６  送信部
８０１  受信部
８０２  要約情報生成部
８０３  署名対象検証部
８０４  データ検証部
８０５  連続検証部
８０６  電子署名検証部
【図１】
0005548419.tif 000002
【図２】
0005548419.tif 000003
【図３】
0005548419.tif 000004
【図４】
0005548419.tif 000005
【図５】
0005548419.tif 000006
【図６】
0005548419.tif 000007
【図７】
0005548419.tif 000008
【図８】
0005548419.tif 000009
【図９】
0005548419.tif 000010
【図１０】
0005548419.tif 000011
【図１１】
0005548419.tif 000012
【図１２】
0005548419.tif 000013
【図１３】
0005548419.tif 000014
【図１４】
0005548419.tif 000015
【図１５】
0005548419.tif 000016
【図１６】
0005548419.tif 000017
【図１７】
0005548419.tif 000018
【図１８】
0005548419.tif 000019
【図１９】
0005548419.tif 000020
【図２０−１】
0005548419.tif 000021
【図２０−２】
0005548419.tif 000022
【図２１】
0005548419.tif 000023
【図２２−１】
0005548419.tif 000024
【図２２−２】
0005548419.tif 000025
【図２３】
0005548419.tif 000026
【図２４】
0005548419.tif 000027
【図２５】
0005548419.tif 000028