(57)【要約】【課題】例えば証拠写真として実質的に問題の無い範囲でその圧縮画像データの輝度値補正を行うと、証拠写真が改竄されたという実質的な誤判断がなされてしまう。【解決手段】電子署名作成装置を、所定のフォーマットにより圧縮された圧縮画像データを復号化する過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、空間周波数成分の中で最も低い周波数成分に対応する値の、ブロック間での大小関係を比較する大小関係比較手段と、比較の結果に基づいて電子署名を作成する電子署名作成手段と、から構成する。【選択図】図６
2014154950.tif 000002
【特許請求の範囲】
【請求項１】
所定のフォーマットにより圧縮された圧縮画像データを復号化する過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、該空間周波数成分の中で最も低い周波数成分に対応する値の、該ブロック間での大小関係を比較する大小関係比較手段と、
前記比較の結果に基づいて電子署名を作成する電子署名作成手段と、
を備えること
を特徴とする、電子署名作成装置。
【請求項２】
前記値は、
前記圧縮画像データを逆量子化することにより得られる空間周波数成分の中で最も低い周波数成分に対応する値であること
を特徴とする、請求項１に記載の電子署名作成装置。
【請求項３】
前記値は、
前記圧縮画像データをエントロピー復号化することにより得られる空間周波数成分の中で最も低い周波数成分に対応する値であること
を特徴とする、請求項１に記載の電子署名作成装置。
【請求項４】
所定のフォーマットにより圧縮画像データへの符号化処理を行う過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、該空間周波数成分の中で最も低い周波数成分に対応する値の、該ブロック間での大小関係を比較する大小関係比較手段と、
前記比較の結果に基づいて電子署名を作成する電子署名作成手段と、
を備えること
を特徴とする、電子署名作成装置。
【請求項５】
前記大小関係比較手段は、
所定の複数のブロック対の各々を対象に前記値の大小関係を比較し、
各前記ブロック対に対して前記比較を行う毎に、該比較の結果に基づくビット情報の生成を行い、
前記各ブロック対に対応するビット情報を所定の順序で並べたビット列を生成し、
前記電子署名作成手段は、
前記大小関係比較手段により生成されたビット列に基づいて前記電子署名を作成すること
を特徴とする、請求項１から請求項４の何れか一項に記載の電子署名作成装置。
【請求項６】
前記電子署名を前記圧縮画像データに付加して所定の記録媒体に記憶する記憶手段
を備えること
を特徴とする、請求項１から請求項５の何れか一項に記載の電子署名作成装置。
【請求項７】
所定のフォーマットにより圧縮された圧縮画像データを復号化する過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、該空間周波数成分の中で最も低い周波数成分に対応する値の、該ブロック間での大小関係を比較する大小関係比較ステップと、
前記比較の結果に基づいて電子署名を作成する電子署名作成ステップと、
を含む、
電子署名作成方法。
【請求項８】
前記値は、
前記圧縮画像データを逆量子化することにより得られる空間周波数成分の中で最も低い周波数成分に対応する値である、
請求項７に記載の電子署名作成方法。
【請求項９】
前記値は、
前記圧縮画像データをエントロピー復号化することにより得られる空間周波数成分の中で最も低い周波数成分に対応する値である、
請求項７に記載の電子署名作成方法。
【請求項１０】
所定のフォーマットにより圧縮画像データへの符号化処理を行う過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、該空間周波数成分の中で最も低い周波数成分に対応する値の、該ブロック間での大小関係を比較する大小関係比較ステップと、
前記比較の結果に基づいて電子署名を作成する電子署名作成ステップと、
を含む、
電子署名作成方法。
【請求項１１】
前記大小関係比較ステップにて、
所定の複数のブロック対の各々を対象に前記値の大小関係を比較し、
各前記ブロック対に対して前記比較を行う毎に、該比較の結果に基づくビット情報の生成を行い、
前記各ブロック対に対応するビット情報を所定の順序で並べたビット列を生成し、
前記電子署名作成ステップにて、
前記大小関係比較ステップにより生成されたビット列に基づいて前記電子署名を作成する、
請求項７から請求項１０の何れか一項に記載の電子署名作成方法。
【請求項１２】
前記電子署名を前記圧縮画像データに付加して所定の記録媒体に記憶する記憶ステップ
を含む、
請求項７から請求項１１の何れか一項に記載の電子署名作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮画像データに付加される電子署名を作成する電子署名作成装置及び電子署名作成方法に関する。
【背景技術】
【０００２】
デジタルスチルカメラなど、被写体の光学像を電子的に記憶することが可能な電子撮像装置が普及している。この種の電子撮像装置による撮影画像データは、銀塩写真と比べて改竄が容易という問題点を抱えている。そこで、撮影画像データの改竄を検知することが可能な装置や方法が提案されており、実用に供されている。例えば、特許文献１や特許文献２に、この種の装置及び方法の具体的実施形態が記載されている。
【０００３】
特許文献１には、撮影画像データの改竄を検知するための電子署名を作成することが可能な電子撮像装置が記載されている。具体的には、特許文献１に記載の電子撮像装置は、電子署名を作成する際に用いる秘密鍵の使用の可否を判断し、判断結果に応じて電子署名を作成する。電子署名は、ＪＰＥＧ（Joint Photographic Experts Group）等により非可逆圧縮された撮影画像データにハッシュ関数をかけてハッシュ値を生成し、生成されたハッシュ値を秘密鍵で暗号化することにより作成される。撮影画像データの改竄の有無は、電子署名を公開鍵で復号することにより得られる復号データと、撮影画像データのハッシュ値とを比べることによって検証される。秘密鍵の使用の可否は、例えば、現在の日時や位置に関する情報及び鍵の使用条件としての日時や位置に関する条件等に基づいて判断される。特許文献１では、秘密鍵の使用条件を定義することにより、例えば工事現場や犯罪現場等にて撮影された画像の改竄の有無を検証しつつ、撮影画像自体が真にその現場で撮影された画像であるか否かを証明することが可能となっている。
【０００４】
しかし、特許文献１に記載の構成では、撮影画像データを一切補正することができない。例えば、撮影状況により適正な露出を得ることができない場合を考える。この場合、撮影画像データに対して輝度値を補正するなど、証拠写真として実質的に問題の無い範囲での補正を行いたいことがある。しかし、撮影画像データの輝度値を補正すると、撮影画像データのハッシュ値が変わる。そのため、撮影画像データが改竄されたという実質的な誤判断がなされてしまう。
【０００５】
一方、特許文献２には、撮影画像データにおける画像空間上の情報及び画素値に基づいて画素対を選択し、選択された画素対の画素値の相対的な大小関係を算出し、算出された大小関係に基づいて撮影画像データが改竄されたか否かを検証するための検証データを作成する装置が記載されている。画素対は、輝度値の補正前後で相対的な大小関係が逆転しないものが選択される。そのため、特許文献２に記載の構成では、輝度値の補正前後でハッシュ値が変わらない。従って、撮影画像データが改竄されたという誤判断が避けられる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−８７７０２号公報
【特許文献２】特開２０１１−１２０２２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ユーザは、例えば撮影後にレタッチを行いたい場合には撮影画像をＲＡＷデータ（無圧縮又は可逆圧縮）で保存することがあるが、基本的には、データ容量やデータ転送時の負荷を軽減するため、ＪＰＥＧなど圧縮率の高い非可逆フォーマットで保存することが多いものと考えられる。また、改竄検証の対象となる撮影画像データは現場の証拠写真等であり、基本的にはレタッチされるものではない。そのため、この種の撮影画像データは、データ容量やデータ転送時の負荷を軽減するため、圧縮率の高い非可逆フォーマットで圧縮されることが多いものと考えられる。特に、現場の証拠写真には即時性が要求されるため、撮影画像データの容量を軽減することによって撮影画像データを高速に転送できるようにすることは重要である。そのため、改竄検証のための装置は非可逆圧縮された撮影画像データに対応していることが望ましい。しかし、特許文献２に記載の構成では、可逆圧縮された撮影画像データに対して改竄検証を行うことは可能であるが、非可逆圧縮された撮影画像データに対して改竄検証を行うことはできない。
【０００８】
本発明は上記の事情に鑑みてなされたものであり、その目的とするところは、非可逆圧縮された画像データに対する改竄検証を可能にすると共に、輝度値補正を行ったことによる改竄検証時の誤判断を抑えることが可能な電子署名作成装置及び電子署名作成方法を提供することである。
【課題を解決するための手段】
【０００９】
本発明の一形態に係る電子署名作成装置は、大小関係比較手段と電子署名作成手段とを備える。大小関係比較手段は、所定のフォーマットにより圧縮された圧縮画像データを復号化する過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、空間周波数成分の中で最も低い周波数成分に対応する値の、ブロック間での大小関係を比較する。電子署名作成手段は、大小関係比較手段による比較の結果に基づいて電子署名を作成する。
【００１０】
圧縮画像データの復号化において、空間周波数成分の中で最も低い周波数成分は、量子歪みが目立つ等の理由から、値の小さい係数で量子化される。そのため、輝度値を補正した場合であっても、当該成分の値の、ブロック間での大小関係には実質的に影響がない。従って、この大小関係に基づいて作成される電子署名は、輝度値補正の前後で変わらない。そのため、輝度値補正を行った場合であっても、改竄検証の結果に実質的に影響がない。
【００１１】
上記値は、例えば、圧縮画像データを逆量子化することにより得られる空間周波数成分の中で最も低い周波数成分に対応する値である。また、上記値は、例えば、圧縮画像データをエントロピー復号化することにより得られる空間周波数成分の中で最も低い周波数成分に対応する値である。
【００１２】
本発明の別の形態に係る電子署名作成装置も大小関係比較手段と電子署名作成手段とを備える。大小関係比較手段は、所定のフォーマットにより圧縮画像データへの符号化処理を行う過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、空間周波数成分の中で最も低い周波数成分に対応する値の、ブロック間での大小関係を比較する。電子署名作成手段は、大小関係比較手段による比較の結果に基づいて電子署名を作成する。
【００１３】
また、本発明の一形態及び別の形態に係る電子署名作成装置において、大小関係比較手段は、所定の複数のブロック対の各々を対象に上記値の大小関係を比較し、各ブロック対に対して比較を行う毎に、比較の結果に基づくビット情報の生成を行い、各ブロック対に対応するビット情報を所定の順序で並べたビット列を生成する構成としてもよい。この場合、電子署名作成手段は、大小関係比較手段により生成されたビット列に基づいて電子署名を作成する。
【００１４】
また、本発明の一形態及び別の形態に係る電子署名作成装置は、電子署名を圧縮画像データに付加して所定の記録媒体に記憶する記憶手段を備える構成としてもよい。
【００１５】
本発明の一形態に係る電子署名作成方法は、所定のフォーマットにより圧縮された圧縮画像データを復号化する過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、空間周波数成分の中で最も低い周波数成分に対応する値の、ブロック間での大小関係を比較する大小関係比較ステップと、大小関係比較ステップでの比較の結果に基づいて電子署名を作成する電子署名作成ステップとを含む。
【００１６】
また、本発明の別の形態に係る電子署名作成方法は、所定のフォーマットにより圧縮画像データへの符号化処理を行う過程で得られる、複数に分割された画像の各ブロックの空間周波数成分に含まれる値であって、空間周波数成分の中で最も低い周波数成分に対応する値の、ブロック間での大小関係を比較する大小関係比較ステップと、大小関係比較ステップでの比較の結果に基づいて電子署名を作成する電子署名作成ステップとを含む。
【発明の効果】
【００１７】
本発明に係る電子署名作成装置及び電子署名作成方法によれば、非可逆圧縮された画像データに対する改竄検証を可能にすると共に、輝度値補正を行ったことによる改竄検証時の誤判断が抑えられる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態の電子撮像システムの構成を示す図である。
【図２】本発明の実施形態のデジタルカメラのハードウェア構成を示すブロック図である。
【図３】本発明の実施形態のデジタルカメラの機能構成を示すブロック図である。
【図４】本発明の実施形態のデジタルカメラに備えられる画像処理部によるＪＰＥＧフォーマットの画像圧縮処理を説明するための図である。
【図５】本発明の実施形態のデジタルカメラに備えられる画像処理部によるＪＰＥＧフォーマットの画像圧縮処理を説明するための図である。
【図６】本発明の実施形態のデジタルカメラによる電子署名の作成及び圧縮画像データへの付加フローを示す図である。
【図７】本発明の実施形態のデジタルカメラに備えられる電子署名制御部の機能構成を示すブロック図である。
【図８】本発明の実施形態のクライアント装置にインストールされているアプリケーションの機能構成を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照して、本発明の実施形態に係る電子撮像システムＳについて説明する。図１は、本実施形態の電子撮像システムＳの構成を示す図である。図１に示されるように、本実施形態の電子撮像システムＳは、デジタルカメラ１及びクライアント装置２を備えている。
【００２０】
［電子撮像システムＳの概略］
デジタルカメラ１は、ユーザによる操作に従ってデジタル画像を撮影することが可能な電子撮像装置である。本実施形態において、デジタルカメラ１は、コンパクトデジタルカメラであるが、例えば、撮影レンズを交換可能なデジタル一眼レフカメラ（クイックリターンミラー付）、ミラーレス一眼レフカメラ、カムコーダ、ＰＨＳ（Personal Handy phone System）、スマートフォン、フィーチャフォン又は携帯ゲーム機など、デジタル画像を撮影することが可能な別の形態の電子撮像装置に置き換えてもよい。
【００２１】
クライアント装置２は、ユーザにより操作される情報処理端末であり、本実施形態ではデスクトップＰＣ（Personal Computer）である。別の実施形態では、クライアント装置２は、ラップトップＰＣ、ノートＰＣ、タブレットＰＣ、スマートフォンなど、別の形態の情報処理端末に置き換えてもよい。
【００２２】
また、更に別の実施形態では、デジタルカメラ１とクライアント装置２は別体の装置ではなく、単体の装置として構成されてもよい。一例として、デジタルカメラ１及びクライアント装置２の機能を具備するスマートフォンが考えられる。
【００２３】
図１に示されるように、デジタルカメラ１とクライアント装置２とを接続することにより、デジタルカメラ１による撮影画像データをクライアント装置２へ転送することが可能である。電子撮像システムＳにおいては、デジタルカメラ１による撮影画像データをクライアント装置２にインストールされたアプリケーションで閲覧することにより、撮影画像データの改竄の有無を検証することができる。
【００２４】
［デジタルカメラ１の構成］
図２は、デジタルカメラ１のハードウェア構成を示すブロック図である。図２に示されるように、デジタルカメラ１は、ＣＰＵ（Central Processing Unit）１０、ＲＡＭ（Random Access Memory）２０、エンジン３０、ＲＯＭ（Read Only Memory）４０、ＮＶＲＡＭ（Non Volatile RAM）５０及びＩ／Ｆ６０がバス９０を介して接続されている。また、Ｉ／Ｆ６０には、ＬＣＤ（Liquid Crystal Display）７０及び操作部８０が接続されている。
【００２５】
ＣＰＵ１０は演算手段であり、デジタルカメラ１の全体の動作を制御する。ＲＡＭ２０は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ＣＰＵ１０が情報を処理する際の作業領域として用いられる。エンジン３０は、レンズやイメージセンサ等のデジタルカメラとしての機能を実現するエンジンである。ＲＯＭ４０は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。
【００２６】
ＮＶＲＡＭ５０は、情報の読み書きが可能な不揮発性の記憶媒体であり、ＯＳ（Operating System）及び各種の制御プログラム、アプリケーション及びアプリケーションの動作パラメータの情報等が格納される。Ｉ／Ｆ６０は、バス９０と各種ハードウェアやネットワーク等を接続し制御する。ＬＣＤ７０は、ユーザがデジタルカメラ１のステータスやイメージセンサにて受光されている被写体像を表示する視覚的ユーザインタフェースである。操作部８０は、操作ボタンやシャッターボタンなど、ユーザがデジタルカメラ１に情報を入力するためのユーザインタフェースである。なお、クライアント装置２には、エンジン３０を除き、図２に示されるハードウェア構成と同様の構成が含まれている。
【００２７】
上記のハードウェア構成において、ＲＯＭ４０、ＮＶＲＡＭ５０（若しくは不図示のＨＤＤ（Hard Disk Drive）、光学ディスク又は可搬型記録媒体等の記録媒体）に格納されたプログラムがＲＡＭ２０に読み出され、ＣＰＵ１０の制御に従って動作することにより、ソフトウェア制御部が構成される。ソフトウェア制御部とハードウェアとを組み合わせることにより、デジタルカメラ１の機能を実現する機能ブロックが構成される。
【００２８】
図３は、デジタルカメラ１の機能構成を示すブロック図である。図３に示されるように、デジタルカメラ１は、コントローラ１００、撮像部１０１、外部Ｉ／Ｆ１０２、操作部１０３、表示部１０４及び画像情報記憶部１０５を有している。コントローラ１００は、主制御部１１１、エンジン制御部１１２、操作表示制御部１１３、画像処理部１１４、通信制御部１１５及び電子署名制御部１１６を有している。
【００２９】
撮像部１０１は、ズームレンズ、フォーカスレンズ、絞り、シャッタ、光学フィルム及びＣＣＤ（Charge Coupled Device）イメージセンサ等の撮像機構を含む。ＣＣＤイメージセンサが光学情報に基づいて生成した電気信号は、撮像データとしてコントローラ１００のエンジン制御部１１２に入力される。
【００３０】
外部Ｉ／Ｆ１０２は、デジタルカメラ１が他の装置との間でデータをやり取りする際のインタフェースである。外部Ｉ／Ｆ１０２は、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）、ＵＳＢ（Universal Serial Bus）、無線ＬＡＮ（Local Area Network）、Ｂｌｕｅｔｏｏｔｈ（登録商標）インタフェースによって構成される。操作部１０３、表示部１０４は夫々、図２において説明した操作部８０、ＬＣＤ７０に対応する。
【００３１】
画像情報記憶部１０５は、デジタルカメラ１にて撮影され生成された撮影画像データを記憶する記憶媒体である。画像情報記憶部１０５は、例えば、図２に示されるＮＶＲＡＭ５０によって実現される。その他、画像情報記憶部１０５は、着脱可能な可搬型の記憶媒体で実現することも可能である。可搬型記憶媒体としては、ＳＤカード（登録商標）、磁気テープ、カセットテープ、磁気ディスク等の磁気記録媒体や、ＣＤ（Compact Disc）、ＭＯ（Magneto-Optical disc）、ＭＤ（MiniDisc）、ＤＶＤ（Digital Versatile Disc）等の光ディスク、ＰＣカード、コンパクトフラッシュカード（登録商標）、スマートメディア（登録商標）、ＩＣカード、メモリースティック（登録商標）、ＵＳＢメモリ等を用いることができる。
【００３２】
主制御部１１１は、コントローラ１００に含まれる各部を制御する役割を担い、コントローラ１００の各部に命令を与える。エンジン制御部１１２は、撮像部１０１に含まれる撮像機構を制御及び駆動する手段としての役割を担う。操作表示制御部１１３は、ユーザによる操作部１０３の操作情報を主制御部１１１に出力する。操作表示制御部１１３はまた、主制御部１１１の命令に従って表示部１０４に情報表示を行なう。
【００３３】
ここで、ユーザによる操作部１０３の操作に応じて撮像部１０１のシャッタが駆動された場合を考える。この場合、撮像部１０１は、シャッタ駆動時に撮像された被写体の撮像データをエンジン制御部１１２に出力する。エンジン制御部１１２は、撮像部１０１より入力される撮像データを画像処理部１１４に出力する。画像処理部１１４は、エンジン制御部１１２より入力される撮像データを処理して撮影画像データを生成する。主制御部１１１は、画像処理部１１４によって生成された撮影画像データを画像情報記憶部１０５に記憶させる。ここで撮影画像データは、撮像動作の結果物として画像情報記憶部１０５に記憶されるデータであり、本実施形態では、ＪＰＥＧなど非可逆な高圧縮フォーマットのデータとなっている。
【００３４】
図４及び図５は、画像処理部１１４によるＪＰＥＧフォーマットの画像圧縮処理を説明するための図である。画像処理部１１４は、エンジン制御部１１２より入力される撮像データ（原画像）を複数のブロックに分割する（図４（ａ）参照）。具体的には、撮像データを垂直方向８画素×水平方向８画素のブロック（６４画素）に分割する（図４（ｂ）参照）。画像処理部１１４には符号化器が備えられている。画像処理部１１４は、図４（ａ）中、矢印に示されるように、分割された各ブロックをラスタ順に符号化器へ転送する。
【００３５】
図５に、ブロックの一例（８×８の各画素の画素値）を示す（図５中、符号Ａ）。画像処理部１１４（符号化器）は、分割された各ブロックの撮像データをＤＣＴ（Discrete Cosine Transform）変換する。これにより、ブロック内の画像情報を空間周波数成分で示すＤＣＴ係数マトリクスがブロックごとに求められる。
【００３６】
図５中、符号Ｂは、符号ＡのブロックをＤＣＴ変換することにより得られるＤＣＴ係数マトリクスである。ＤＣＴ係数マトリクス（符号Ｂ）は、図中、左上ほど低周波成分を示し、右下ほど高周波成分を示す。図５の符号Ｂの例では、最も左上に位置する係数「２６０」が最も低い周波数成分を示す。最も低い周波数成分は、例えばＤＣ成分である。係数「２６０」以外の６３個の係数は全てＡＣ成分を示す。図５に例示されるように、ＤＣＴ係数（符号Ｂ）は、低い周波数領域ほど大きな値を取る傾向を持つ。
【００３７】
画像処理部１１４（符号化器）は、各ブロックのＤＣＴ係数マトリクスを所定の量子化テーブルを用いて量子化し、ＤＣＴ係数の値範囲の縮小を行う。図５の符号Ｃは、量子化テーブルの一例である。ＤＣＴ係数マトリクス（符号Ｂ）を量子化テーブル（符号Ｃ）で量子化することにより、図５中、符号Ｄで示されるＤＣＴ係数マトリクス（量子化後）が得られる。量子化テーブル（符号Ｃ）は、例えば、人間の色覚上、低い周波数領域ほど量子化歪みが目立つことから（別の観点では人間の眼が高周波成分には鈍感であることから）、量子化係数が低周波数領域では小さい値に設定され、高周波領域では大きな値に設定されている。画像処理部１１４（符号化器）は、量子化後のＤＣＴ係数マトリクス（符号Ｄ）をハフマン符号によるエントロピー符号化により圧縮する。これにより、非可逆な高圧縮フォーマットの撮影画像データが得られて画像情報記憶部１０５に記憶される。
【００３８】
主制御部１１１には復号化器が備えられている。主制御部１１１（復号化器）は、画像処理部１１４により生成された撮影画像データをハフマン復号によるエントロピー復号化を行い、復号されたＤＣＴ係数マトリクス（図５の符号Ｄ参照）を量子化テーブル（図５の符号Ｃ参照）を用いて逆量子化する。これにより、図５の符号Ｂと同様のＤＣＴ係数マトリクスが得られる（但し、復号時に量子化されているため、符号ＢのＤＣＴ係数マトリクスとは完全には一致しない。）。主制御部１１１（復号化器）は更に、このＤＣＴ係数マトリクスをＩＤＣＴ（Inverse Discrete Cosine Transform）変換することにより、垂直方向８画素×水平方向８画素のブロック（６４画素）に再変換し、再変換された各ブロックを合成することにより、復号画像を得る。操作表示制御部１１３は、主制御部１１１の命令に従って復号画像を表示部１０４に表示させる。
【００３９】
［デジタルカメラ１による電子署名の作成及び圧縮画像データへの付加］
画像情報記憶部１０５に記憶される圧縮画像データ（本実施形態ではＪＰＥＧ）には、改竄の有無を検証するための電子署名が付加される。図６に、デジタルカメラ１による電子署名の作成及び圧縮画像データへの付加フローを示す。
【００４０】
主制御部１１１は、圧縮画像データに電子署名を付加するため、圧縮画像データを復号する過程で得られるＤＣＴ係数マトリクスを用いて所定のビット列を生成する。具体的には、主制御部１１１は、エントロピー復号化及び逆量子化後に得られる各ブロックのＤＣＴ係数マトリクスのうち最も低い周波数成分の係数を用いて所定のビット列を生成する。以下の説明では、便宜上、ＤＣＴ係数マトリクスのうち最も低い周波数成分を「最低周波数成分」と記す。また、便宜上、図５中、符号ＢのＤＣＴ係数マトリクスを、エントロピー復号化及び逆量子化後に得られるＤＣＴ係数マトリクスとして説明を行う。本実施形態において最低周波数成分はＤＣ成分である。また、最低周波数成分の係数は、ＤＣＴ係数マトリクスの最も左上に位置する係数である。この係数は、符号Ｂの例では「２６０」である。
【００４１】
［図６のＳ１（値ｎの初期値設定）］
主制御部１１１は、ｎを初期値１に設定する。ｎはブロックに便宜上付されるシリアル番号であり、画像を構成する全画素数をＮと定義した場合に、１からＮ−１までの値を取る。ここでは図４（ａ）中、最も左上のブロックを１（ｎ＝１）番のブロックとする。また、ｎ番のブロックの水平方向の隣接ブロック（右隣のブロック）をｎ＋１番のブロックとする。ｎ番のブロックの右隣にブロックが無い場合は、次の行（row）の最も左に位置するブロックをｎ＋１番のブロックとする。説明を補足すると、ここでのブロックの採番は、ブロックが復号化器へ転送される際の順序（ラスタ順）と一致する（図４（ａ）の矢印参照）。
【００４２】
［図６のＳ２（最低周波数の係数の大小関係の比較）］
主制御部１１１は、ｎ番のブロックの最低周波数成分の係数をＫｎと定義し、ｎ＋１番のブロックの最低周波数成分の係数をＫｎ＋１と定義した場合に、係数Ｋｎと係数Ｋｎ＋１との大小関係を比較する。主制御部１１１は、Ｋｎ＋１＜Ｋｎである場合には（図６のＳ２：ＹＥＳ）、図６の処理ステップＳ３（ビット情報の生成）に処理を進める。主制御部１１１は、Ｋｎ＋１≧Ｋｎである場合には（図６のＳ２：ＮＯ）、図６の処理ステップＳ４（ビット情報の生成）に処理を進める。
【００４３】
［図６のＳ３（ビット情報の生成）］
主制御部１１１は、Ｋｎ＋１＜Ｋｎである場合にはビット０を生成する。
【００４４】
［図６のＳ４（ビット情報の生成）］
主制御部１１１は、Ｋｎ＋１≧Ｋｎである場合にはビット１を生成する。
【００４５】
［図６のＳ５（完了判定）］
主制御部１１１は、係数Ｋｎと係数Ｋｎ＋１との大小関係の比較及びビット情報の生成を全てのブロック対（ｎ番のブロックとｎ＋１番のブロック）に対して行ったか否かを判定する。主制御部１１１は、係数Ｋｎと係数Ｋｎ＋１との大小関係の比較及びビット情報の生成が未実行のブロック対が残っている場合には（図６のＳ５：ＮＯ）、図６の処理ステップＳ６（値ｎのインクリメント）に処理を進める。主制御部１１１は、係数Ｋｎと係数Ｋｎ＋１との大小関係の比較及びビット情報の生成を全てのブロック対に対して行った場合には（図６のＳ５：ＹＥＳ）、図６の処理ステップＳ７（ハッシュ値の生成）に処理を進める。
【００４６】
［図６のＳ６（値ｎのインクリメント）］
主制御部１１１は、値ｎを１インクリメントして、図６の処理ステップＳ２（最低周波数の係数の大小関係の比較）に処理を戻し、次のブロック対に対して係数Ｋｎと係数Ｋｎ＋１との大小関係の比較及びビット情報の生成を行う。
【００４７】
［図６のＳ７（ハッシュ値の生成）］
主制御部１１１は、図６の処理ステップＳ２（最低周波数の係数の大小関係の比較）から処理ステップＳ６（値ｎのインクリメント）を全てのブロック対に対して行うことにより、生成した順にビット情報が並ぶビット長（ｎ−１）のビット列を得る。主制御部１１１は、生成されたビット列を電子署名制御部１１６に送信する。
【００４８】
図７は、電子署名制御部１１６の機能構成を示すブロック図である。電子署名制御部１１６は、画像情報記憶部１０５に記憶される圧縮画像データの電子署名を作成するものであり、図７に示されるように、ハッシュ値計算部１６１及び暗号化処理部１６２を有している。暗号化処理部１６２には鍵記憶部１６３が含まれている。鍵記憶部１６３には秘密鍵が記憶されている。秘密鍵は、例えばＲＳＡ（Rivest Shamir Adleman）暗号化方式における鍵である。
【００４９】
主制御部１１１から出力されたビット列は、ハッシュ値計算部１６１に入力する。ハッシュ値計算部１６１は、主制御部１１１より入力されたビット列にハッシュ関数をかけてハッシュ値を生成する。ハッシュ関数としては、例えば、ＭＤ２（Message Digest Algorithm 2）、ＭＤ４（Message Digest Algorithm 4）、ＭＤ５（Message Digest Algorithm 5）、ＳＨＡ（Secure Hash Algorithm）等を用いることができる。
【００５０】
画像の明るさ補正では、画像全体の輝度値が補正される。その結果、画像内の全てのブロックのＤＣＴ係数が変わってしまう。そのため、上述したように、ＤＣＴ係数を用いてハッシュ値を生成しても、輝度値補正の前後でハッシュ値が変わるものと思われる。しかし、最低周波数成分は、低周波領域ほど量子化歪みが目立つことから、値の小さい係数で量子化される。そのため、輝度値を補正した場合であっても、最低周波数成分の係数の、ブロック間での大小関係には実質的に影響がない。従って、最低周波数成分の係数の大小関係を表すビット列に基づいて生成されるハッシュ値は、輝度値補正の前後で変わらない。そのため、輝度値補正を行った場合であっても、改竄検証の結果に実質的に影響がない。
【００５１】
符号化器側のＤＣＴ係数（図５の符号Ｂ）を用いて上記ビット列を生成することも可能である。この場合、輝度値を補正することによってハッシュ値が変わるという問題を避けるため、例えば、最低周波数成分の量子化係数が１に設定される。そのため、高い圧縮率を達成することは難しい。一方、本実施形態のように一旦量子化されたデータを逆量子化することにより得たＤＣＴ係数を用いて上記ビット列を生成する場合は、最低周波数成分の量子化係数を大きい値に設定することで高圧縮率を達成しつつ、輝度値補正の前後で、最低周波数成分の係数の、ブロック間での大小関係が実質的に変わらないため、ハッシュ値が変わるという問題が起きない。
【００５２】
一般に、画像処理部１１４は圧縮画像を生成する処理を高速化するため、ハードウェア化されるか又は高速に演算可能なＤＳＰ（Digital Signal Processing）ライブラリとして実装される。この場合、例えばハードウェア内部でＤＣＴ変換後のデータの量子化及びエントロピー符号化が行われた後、圧縮画像データのみが画像処理部１１４から出力される。そのため、ＤＣＴ変換後のデータを参照するためにはハードウェアやライブラリの改変が必要となる。しかし、本実施形態では、ハードウェア等で生成された圧縮画像データを基に部分的に（最低周波数成分の係数のみを）エントロピー復号化及び逆量子化を行ってＤＣＴ変換後のデータを参照するため、処理に変更を加える際にもハードウェアやライブラリの改変が不要である。そのため、製造コストが抑えられる。
【００５３】
［図６のＳ８（ハッシュ値の暗号化）］
暗号化処理部１６２は、ハッシュ値計算部１６１により生成されたハッシュ値を鍵記憶部１６３の秘密鍵を用いて暗号化する。これにより、圧縮画像データの電子署名が作成される。暗号化処理部１６２は、作成された電子署名を主制御部１１１に出力する。
【００５４】
［図６のＳ９（圧縮画像データへの電子署名の付加）］
主制御部１１１は、暗号化処理部１６２より入力される電子署名を、画像情報記憶部１０５に記憶される圧縮画像データに付加する。これにより、電子署名付の圧縮画像データが得られる。
【００５５】
［クライアント装置２による改竄検証］
次に、デジタルカメラ１の画像情報記憶部１０５に記憶された圧縮画像データをクライアント装置２にインストールされたアプリケーションにより閲覧する際の動作を説明する。図８は、クライアント装置２にインストールされているアプリケーション２００の機能構成を示すブロック図である。
【００５６】
図８に示されるように、アプリケーション２００は、画像情報取得部２０１、ハッシュ値計算部２０２、電子署名取得部２０３、復号処理部２０４、電子署名判断部２０６及び表示情報生成部２０７を有している。また、復号処理部２０４は、鍵記憶部２０５を有している。鍵記憶部２０５には公開鍵が記憶されている。公開鍵は、例えばＲＳＡ暗号化方式における鍵であり、デジタルカメラ１の鍵記憶部１６３に記憶されている秘密鍵に対応する。
【００５７】
画像情報取得部２０１は、デジタルカメラ１の外部Ｉ／Ｆ１０２とクライアント装置の外部Ｉ／Ｆとの通信により、デジタルカメラ１の画像情報記憶部１０５に記憶されている圧縮画像データを取得する。画像情報取得部２０１は、取得された圧縮画像データをハッシュ値計算部２０２に出力する。
【００５８】
ハッシュ値計算部２０２は、画像情報取得部２０１より入力された圧縮画像データに基づいてハッシュ値を生成する。ハッシュ値計算部２０２によるハッシュ値の生成アルゴリズムは、ハッシュ値計算部１６１と同様である。ハッシュ値計算部２０２は、生成されたハッシュ値を電子署名判断部２０６に出力する。
【００５９】
電子署名取得部２０３は、画像情報取得部２０１が取得した圧縮画像データに付加されている電子署名を取得する。電子署名取得部２０３は、取得された電子署名を復号処理部２０４に出力する。
【００６０】
復号処理部２０４は、電子署名取得部２０３より入力された電子署名を鍵記憶部２０５の公開鍵で復号することにより復号データを得る。復号処理部２０４は、復号データを電子署名判断部２０６に出力する。
【００６１】
電子署名判断部２０６は、ハッシュ値計算部２０２により生成されたハッシュ値と、復号データとを比較して電子署名が有効か否かを判断する。具体的には、電子署名判断部２０６は、ハッシュ値計算部２０２によるハッシュ値と復号データとが一致する場合、電子署名が有効であると判断する。すなわち、圧縮画像データの改竄が行われていないと判断する。電子署名判断部２０６はまた、ハッシュ値計算部２０２によるハッシュ値と復号データとが不一致の場合、電子署名が無効であると判断する。すなわち、圧縮画像データの改竄が行われたと判断する。
【００６２】
表示情報生成部２０７は、画像情報取得部２０１が取得した圧縮画像データに基づく画像をクライアント装置２のＬＣＤに表示させると共に、電子署名判断部２０６の判断結果に基づいて上記画像の電子署名の有効／無効を示す情報をＬＣＤに表示させる。電子署名の有効を示す情報とは、例えば、圧縮画像データが改竄されていないことを通知するメッセージである。電子署名の無効を示す情報とは、例えば、圧縮画像データが改竄されていることを通知するメッセージである。
【００６３】
このように、本実施形態によれば、圧縮画像データに対して輝度値補正を行った場合であっても補正の前後で圧縮画像データのハッシュ値が変わらない。そのため、輝度値補正を行ったことによる改竄検証時の誤判断が生じない。
【００６４】
以上が本発明の例示的な実施形態の説明である。本発明の実施形態は、上記に説明したものに限定されず、本発明の技術的思想の範囲において様々な変形が可能である。例えば明細書中に例示的に明示される実施形態等又は自明な実施形態等を適宜組み合わせた内容も本願の実施形態に含まれる。
【００６５】
例えば、本実施形態では、圧縮画像データをエントロピー復号化及び逆量子化することにより得られるＤＣＴ係数を用いて所定のビット列を生成しているが、別の実施形態では、圧縮画像データをエントロピー復号化することにより（逆量子化する前に）得られるＤＣＴ係数を用いて所定のビット列を生成する構成を採用してもよい。この場合も、本実施形態と同様に、ハードウェア等（画像処理部１１４）の改変に伴うコストアップが避けられると共に、輝度値を補正することによってハッシュ値が変わるという問題が避けられる。
【００６６】
また、例えば、本実施形態では、原則、互いに隣接する一対のブロック間で最低周波数の係数の大小関係を比較しているが（図６参照）、別の実施形態では、互いに隣接しない任意の一対のブロック間で最低周波数の係数の大小関係を比較する構成を採用してもよい。
【００６７】
また、例えば、本実施形態では、最低周波数の係数の大小関係を比較するブロック対を１ブロックずつシフトさせているが（図６参照）、別の実施形態では、最低周波数の係数の大小関係を比較するブロック対を複数ブロックずつシフトさせてもよい。別の実施形態によれば、最低周波数の係数の大小関係を比較するブロック対が本実施形態と比べて間引かれるため、主制御部１１１の処理負荷が軽減される。
【符号の説明】
【００６８】
１  デジタルカメラ
２  クライアント装置
１００  コントローラ
１１１  主制御部
１１２  エンジン制御部
１１３  操作表示制御部
１１４  画像処理部
１１５  通信制御部
１１６  電子署名制御部
Ｓ  電子撮像システム
【図１】
2014154950.tif 000003
【図２】
2014154950.tif 000004
【図３】
2014154950.tif 000005
【図４】
2014154950.tif 000006
【図５】
2014154950.tif 000007
【図６】
2014154950.tif 000008
【図７】
2014154950.tif 000009
【図８】
2014154950.tif 000010