(57)【特許請求の範囲】
【請求項１】
ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置であって、
前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成手段と、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、
前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成手段と、
前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加手段とを備え、
前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の係数値から得られることを特徴とする情報処理装置。
【請求項２】
ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置であって、
前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成手段と、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、
前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成手段と、
前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加手段とを備え、
前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の量子化値から得られることを特徴とする情報処理装置。
【請求項３】
ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置であって、
前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成手段と、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、
前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成手段と、
前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加手段とを備え、
前記異なる特徴量は、前記ディジタルデータを圧縮符号化した符号化データから得られることを特徴とする情報処理装置。
【請求項４】
ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置であって、
前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成手段と、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、
前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成手段と、
前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加手段とを備え、
前記異なる特徴量は、前記ディジタルデータを微分した微分ディジタルデータの量子化値から得られることを特徴とする情報処理装置。
【請求項５】
前記所定の演算は、ハッシュ関数及び公開鍵暗号方式における秘密鍵を用いた演算であることを特徴とする請求項１〜４の何れか１項に記載の情報処理装置。
【請求項６】
ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置であって、
前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力手段と、
前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成手段と、
前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成手段と、
前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算手段と、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、
前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算手段と、
前記第１のハッシュ生成手段が生成したハッシュデータと前記第１のハッシュ計算手段が生成したハッシュデータとの比較、及び前記第２のハッシュ生成手段が生成した特徴量ハッシュデータと前記第２のハッシュ計算手段が生成した特徴量ハッシュデータとの比較を行う比較手段と、
前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力手段とを備え、
前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の係数値から得られることを特徴とする情報処理装置。
【請求項７】
ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置であって、
前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力手段と、
前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成手段と、
前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成手段と、
前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算手段と、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、
前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算手段と、
前記第１のハッシュ生成手段が生成したハッシュデータと前記第１のハッシュ計算手段が生成したハッシュデータとの比較、及び前記第２のハッシュ生成手段が生成した特徴量ハッシュデータと前記第２のハッシュ計算手段が生成した特徴量ハッシュデータとの比較を行う比較手段と、
前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力手段とを備え、
前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の量子化値から得られることを特徴とする情報処理装置。
【請求項８】
ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置であって、
前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力手段と、
前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成手段と、
前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成手段と、
前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算手段と、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、
前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算手段と、
前記第１のハッシュ生成手段が生成したハッシュデータと前記第１のハッシュ計算手段が生成したハッシュデータとの比較、及び前記第２のハッシュ生成手段が生成した特徴量ハッシュデータと前記第２のハッシュ計算手段が生成した特徴量ハッシュデータとの比較を行う比較手段と、
前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力手段とを備え、
前記異なる特徴量は、前記ディジタルデータを圧縮符号化した符号化データから得られることを特徴とする情報処理装置。
【請求項９】
ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置であって、
前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力手段と、
前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成手段と、
前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成手段と、
前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算手段と、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、
前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算手段と、
前記第１のハッシュ生成手段が生成したハッシュデータと前記第１のハッシュ計算手段が生成したハッシュデータとの比較、及び前記第２のハッシュ生成手段が生成した特徴量ハッシュデータと前記第２のハッシュ計算手段が生成した特徴量ハッシュデータとの比較を行う比較手段と、
前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力手段とを備え、
前記異なる特徴量は、前記ディジタルデータを微分した微分ディジタルデータの量子化値から得られることを特徴とする情報処理装置。
【請求項１０】
前記所定の演算は、公開鍵暗号方式における公開鍵を用いた演算であることを特徴とする請求項６〜９の何れか１項に記載の情報処理装置。
【請求項１１】
ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置の情報処理方法であって、
前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成ステップと、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出ステップと、
前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成ステップと、
前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加ステップとを備え、
前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の係数値、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の量子化値、前記ディジタルデータを圧縮符号化した符号化データ、前記ディジタルデータを微分した微分ディジタルデータの量子化値の何れかから得られることを特徴とする情報処理方法。
【請求項１２】
ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置の情報処理方法であって、
前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力ステップと、
前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成ステップと、
前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成ステップと、
前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算ステップと、
前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出ステップと、
前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算ステップと、
前記第１のハッシュ生成ステップで生成したハッシュデータと前記第１のハッシュ計算ステップで生成したハッシュデータとの比較、及び前記第２のハッシュ生成ステップで生成した特徴量ハッシュデータと前記第２のハッシュ計算ステップで生成した特徴量ハッシュデータとの比較を行う比較ステップと、
前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力ステップとを備え、
前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の係数値、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の量子化値、前記ディジタルデータを圧縮符号化した符号化データ、前記ディジタルデータを微分した微分ディジタルデータの量子化値の何れかから得られることを特徴とする情報処理方法。
【請求項１３】
請求項１１又は１２に記載の情報処理方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１４】
請求項１３に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、撮影対象の映像情報等をディジタルデータに変換し、改竄検出用データをディジタルデータに付加することで改竄を検出する際の技術に関する。
【０００２】
【従来の技術】
近年、従来の銀塩写真や8mmフィルムに変わって、撮影した情報をディジタル化し、ディジタルデータとして記録媒体等に記録するディジタルカメラといった映像入力装置が実用化されている。これにより、撮影した情報そのものをパーソナルコンピュータを始めとする情報処理装置に移し、表示させることが可能になった。このような映像データを通信回線を利用することで全国どこでも瞬時に映像データを送信することも可能になった。そのため、事故処理で証拠写真を扱う保険会社や建築現場の進捗状況の記録を扱う建設会社においてディジタル映像データの利用が考えられている。しかし一方で目覚しいデータ処理技術の進歩により、映像データを始めとしたディジタルデータの編集をフォトレタッチツールや動画編集ツール等の使用で容易に行うことが可能になった。そのため、ディジタル映像データの信頼性は従来の銀塩写真等と比較して低く、証拠としての能力に乏しいという問題があった。
【０００３】
そこで映像データの改ざん、偽造が行われていた場合にそれを検出するような映像入力装置、システムが提案されてきた。例えば“DIGITAL CAMERA WITH APPRARATUS FOR AUTHENTICATION OF IMAGES PRODUCED FROM AN IMAGE”という名称の米国特許第5499294や“映像入力装置および映像入力システム”という名称の特許出願公開番号：特開平9-200730 によると映像入力装置に固有の秘密情報および該映像入力装置に接続される外部装置に固有の秘密情報の少なくとも一方の情報と該映像入力装置にて撮影してディジタル化したディジタルデータとに基づき、所定の演算を実行して該ディジタルデータを識別する情報、すなわちディジタル署名データを生成し、該ディジタル署名データと映像入力装置にて撮影してディジタル化したディジタルデータとを映像入力装置の出力とするものである。
【０００４】
また、上記公報ではディジタル署名データ生成にハッシュ関数と公開鍵暗号を使用している。公開鍵暗号については後で説明する。
ディジタル署名とは、送信者がデータと一緒に該データに対応する署名データを送り、受信者がその署名データを検証して該データの正当性を確認することである。
ディジタル署名データ生成にハッシュ関数と公開鍵暗号を用いたデータの正当性の確認は以下のようになり、これが上記公報の方法である。
【０００５】
秘密鍵をKs, 公開鍵をKpとすると発信者は、平文データMをハッシュ関数により圧縮して一定長の出力h を算出する演算を行う。次に秘密鍵Ksでh を変換してディジタル署名データｓを作成する演算すなわちＤ(Ks,h) =ｓを行う。その後、該ディジタル署名データｓと平文データMとを送信する。一方受信者は受信したディジタル署名データｓを公開鍵Kp で変換する演算すなわちE(Kp,s)= E(Kp,Ｄ(Ks,h''))= h''と、受信した平文データM'を発信者と同じハッシュ関数により圧縮してh' を算出する演算を行い、h'とh''が一致すれば受信したデータM'を正当であると判断する。
【０００６】
平文データMが送受信間で改ざんされた場合にはE(Kp,s)= E(Kp,Ｄ(Ks,h''))= h''と、受信した平文データM'を発信者と同じハッシュ関数により圧縮したh'が一致しないので改ざんを検出できる。ここで、平文データMの改ざんに合わせてディジタル署名データｓの改ざんも行われてしまうと改ざんの検出ができなくなる。しかし、これはhから平文データMを求める必要があり、このような計算はハッシュ関数の一方向性により不可能である。
【０００７】
次にハッシュ関数について説明する。ハッシュ関数は上記ディジタル署名の生成を高速化するため等に用いられる。ハッシュ関数は任意の長さの平文データMに処理を行い、一定の長さの出力hを出す機能を持つ。ここで、出力hを平文データMのハッシュ値（またはメッセージダイジェスト、ディジタル指紋）という。
【０００８】
ハッシュ関数に要求される性質として、一方向性と衝突耐性が要求される。一方向性とはｈを与えた時、h=H(M)となる平文データMの算出が計算量的に困難であることである。衝突耐性とは平文データMを与えた時、H(M)=H(M')となる平文データM'(M≠M')の算出が計算量的に困難であること及びH(M)=H(M')かつM≠M'となる平文データM,M'の算出が計算量的に困難であることである。
ハッシュ関数としてはMD-2,MD-4,MD-5,SHA-1,RIPEMD-128,RIPEMD-160等が知られており、これらのアルゴリズムは一般に公開されている。
【０００９】
続いて公開鍵暗号について説明する。公開鍵暗号は暗号鍵と復号鍵が異なり、暗号鍵を公開、復号鍵を秘密に保持する暗号方式である。公開鍵暗号の特徴としては、
(a) 暗号鍵と復号鍵とが異なり暗号鍵を公開できるため、暗号鍵を秘密に配送する必要がなく、鍵配送が容易である。
(b) 各利用者の暗号鍵は公開されているので、利用者は各自の復号鍵のみ秘密に記憶しておけばよい。
(c) 送られてきた通信文の送信者が偽者でないこと及びその通信文が改ざんされていないことを受信者が確認するための認証機能を実現できる。
が挙げられる。
【００１０】
例えば、平文データ M に対して、公開の暗号鍵 Kp を用いた暗号化操作を Ｅ(Kp,Ｍ) とし、秘密の復号鍵 Ksを用いた復号操作を Ｄ(Ks,Ｍ) とすると、公開鍵暗号アルゴリズムは、まず次の2つの条件を満たす。
(1) Kp が与えられたとき、Ｅ(Kp,Ｍ) の計算は容易である。Ksが与えられたとき、Ｄ(Ks,Ｍ) の計算は容易である。
(2) もし Ksを知らないなら、Kp と Ｅ の計算手順と Ｃ＝Ｅ(Kp,Ｍ) を知っていても、M を決定することは計算量の点で困難である。
【００１１】
次に、上記(1)、(2)に加えて、次の(3)の条件が成立することにより秘密通信が実現できる。
(3) 全ての平文データ M に対し、Ｅ(Kp,Ｍ) が定義でき、Ｄ(Ks,Ｅ(Kp,Ｍ))＝Ｍが成立する。つまり、Kp は公開されているため誰もが Ｅ(Kp,Ｍ) を計算することができるが、 Ｄ(Ks,Ｅ(Kp,Ｍ)) を計算して M を得ることができるのは秘密鍵 Ksを持っている本人だけである。一方、上記(1)、(2)に加えて、次の(4)の条件が成立することにより認証通信が実現できる。
【００１２】
(4) すべての平文データM に対し、Ｄ(Ks,Ｍ) が定義でき、Ｅ(Kp,Ｄ(Ks,Ｍ))＝Ｍが成立する。つまり、Ｄ(Ks,Ｍ) を計算できるのは秘密鍵 Ksを持っている本人のみであり、他の人が偽の秘密鍵 Ks ' を用いて Ｄ(Ks',Ｍ) を計算し Ksを持っている本人になりすましたとしても、Ｅ(Kp,Ｄ(Ks',Ｍ))≠Ｍ なので受信者は受けとった情報が不正なものであることを確認できる。また、Ｄ(Ks,Ｍ) が改ざんされても Ｅ(Kp,Ｄ(Ks,Ｍ)')≠Ｍ となり、受信者は受けとった情報が不正なものであることを確認できる。
【００１３】
上記の秘密通信と認証通信とを行うことができる代表例としてRSA暗号やR暗号やＷ暗号等が知られている。
ここで、現在最も多く使用されているRSA暗号の暗号化、復号は次式で示される。
暗号化：暗号化鍵（e,n）  暗号化変換C=Me(mod n)
復号：復号鍵（d,n）  復号変換M=Cd(mod n)
n=p・q（ここでp、q  は大きな異なる素数）
以上説明したように、入力ディジタルデータに対してハッシュ関数および公開鍵暗号方式を用いてディジタル署名データを計算し、前記ディジタル署名データを入力ディジタルデータに付加することで画像・音楽・文書・動画像等の入力ディジタルデータの原本性証明および改竄検出の実現を可能にすることが出来る。
【００１４】
【発明が解決しようとする課題】
しかし、上記に述べた従来のディジタル署名技術を用いると、入力ディジタルデータの１サンプルでも変化すると事実上、改竄として検出される。
従って、画像を例に取ると、ＪＰＥＧ再圧縮やγ補正、縮小画像の抽出など、必ずしも画像の内容を変更していないにも関わらず、改竄として検出されるため、原本性を検証する際には、署名された画像を一切編集することは出来ず、改竄検出システムとして柔軟性を欠き、利便性の向上が望まれていた。
【００１５】
本発明の目的は、ディジタルデータから、複数の異なる特徴量を算出し、前記特徴量からディジタル署名を生成し、前記ディジタルデータを格納するファイルの所定位置に前記ディジタル署名データを付加し、ディジタルデータの内容が本質的に変化しない加工編集には、原本性を証明することを可能にすることである。
本発明の他の目的は、複数の異なる特徴量を用いたディジタル署名を付加し、複数のディジタル署名に基づいたランク付けを導入することで、ディジタルデータに加わった編集の度合いやディジタルデータの信頼性を評価することを可能にすることである。
本発明のさらに他の目的は、ディジタルデータをブロックに分割して処理することにより、改竄の程度だけでなく、位置も特定することを可能にすることである。
【００１６】
【課題を解決するための手段】
本発明の一観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置であって、前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成手段と、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成手段と、前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加手段とを備え、前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の係数値から得られることを特徴とする情報処理装置が提供される。
本発明の他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置であって、前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成手段と、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成手段と、前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加手段とを備え、前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の量子化値から得られることを特徴とする情報処理装置が提供される。
本発明のさらに他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置であって、前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成手段と、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成手段と、前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加手段とを備え、前記異なる特徴量は、前記ディジタルデータを圧縮符号化した符号化データから得られることを特徴とする情報処理装置が提供される。
本発明のさらに他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置であって、前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成手段と、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成手段と、前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加手段とを備え、前記異なる特徴量は、前記ディジタルデータを微分した微分ディジタルデータの量子化値から得られることを特徴とする情報処理装置が提供される。
本発明のさらに他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置であって、前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力手段と、前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成手段と、前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成手段と、前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算手段と、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算手段と、前記第１のハッシュ生成手段が生成したハッシュデータと前記第１のハッシュ計算手段が生成したハッシュデータとの比較、及び前記第２のハッシュ生成手段が生成した特徴量ハッシュデータと前記第２のハッシュ計算手段が生成した特徴量ハッシュデータとの比較を行う比較手段と、前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力手段とを備え、前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の係数値から得られることを特徴とする情報処理装置が提供される。
本発明のさらに他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置であって、前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力手段と、前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成手段と、前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成手段と、前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算手段と、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算手段と、前記第１のハッシュ生成手段が生成したハッシュデータと前記第１のハッシュ計算手段が生成したハッシュデータとの比較、及び前記第２のハッシュ生成手段が生成した特徴量ハッシュデータと前記第２のハッシュ計算手段が生成した特徴量ハッシュデータとの比較を行う比較手段と、前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力手段とを備え、前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の量子化値から得られることを特徴とする情報処理装置が提供される。
本発明のさらに他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置であって、前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力手段と、前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成手段と、前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成手段と、前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算手段と、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算手段と、前記第１のハッシュ生成手段が生成したハッシュデータと前記第１のハッシュ計算手段が生成したハッシュデータとの比較、及び前記第２のハッシュ生成手段が生成した特徴量ハッシュデータと前記第２のハッシュ計算手段が生成した特徴量ハッシュデータとの比較を行う比較手段と、前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力手段とを備え、前記異なる特徴量は、前記ディジタルデータを圧縮符号化した符号化データから得られることを特徴とする情報処理装置が提供される。
本発明のさらに他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置であって、前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力手段と、前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成手段と、前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成手段と、前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算手段と、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出手段と、前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算手段と、前記第１のハッシュ生成手段が生成したハッシュデータと前記第１のハッシュ計算手段が生成したハッシュデータとの比較、及び前記第２のハッシュ生成手段が生成した特徴量ハッシュデータと前記第２のハッシュ計算手段が生成した特徴量ハッシュデータとの比較を行う比較手段と、前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力手段とを備え、前記異なる特徴量は、前記ディジタルデータを微分した微分ディジタルデータの量子化値から得られることを特徴とする情報処理装置が提供される。
本発明のさらに他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するためにディジタルデータから署名データと複数の特徴量署名データとを生成するための情報処理装置の情報処理方法であって、前記ディジタルデータに対して、所定の演算を行うことで、署名データを生成する署名データ生成ステップと、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出ステップと、前記複数の異なる特徴量それぞれに対して、前記所定の演算を行うことで、複数の特徴量署名データを生成する特徴量署名データ生成ステップと、前記署名データと、前記複数の特徴量署名データとを前記ディジタルデータに付加する付加ステップとを備え、前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の係数値、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の量子化値、前記ディジタルデータを圧縮符号化した符号化データ、前記ディジタルデータを微分した微分ディジタルデータの量子化値の何れかから得られることを特徴とする情報処理方法が提供される。
本発明のさらに他の観点によれば、ディジタルデータの原本性及び改竄のレベルを検証するための情報処理装置の情報処理方法であって、前記ディジタルデータと、前記ディジタルデータに対する署名データと、前記ディジタルデータの異なる複数の特徴量に対してそれぞれ生成された複数の特徴量署名データとを入力する入力ステップと、前記署名データに対して、所定の演算を行い、ハッシュデータを生成する第１のハッシュ生成ステップと、前記複数の特徴量署名データそれぞれに対して、前記所定の演算を行い、複数の特徴量ハッシュデータを生成する第２のハッシュ生成ステップと、前記入力されたディジタルデータから、ハッシュ関数を用いて、ハッシュデータを計算する第１のハッシュ計算ステップと、前記ディジタルデータから、複数の異なる特徴量を算出する特徴量算出ステップと、前記複数の異なる特徴量それぞれから、ハッシュ関数を用いて、複数の特徴量ハッシュデータを計算する第２のハッシュ計算ステップと、前記第１のハッシュ生成ステップで生成したハッシュデータと前記第１のハッシュ計算ステップで生成したハッシュデータとの比較、及び前記第２のハッシュ生成ステップで生成した特徴量ハッシュデータと前記第２のハッシュ計算ステップで生成した特徴量ハッシュデータとの比較を行う比較ステップと、前記比較の結果に基づき、前記ディジタルデータの原本性及び改竄のレベルを出力する出力ステップとを備え、前記異なる特徴量は、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の係数値、前記ディジタルデータを周波数変換した周波数係数の異なる周波数帯域の量子化値、前記ディジタルデータを圧縮符号化した符号化データ、前記ディジタルデータを微分した微分ディジタルデータの量子化値の何れかから得られることを特徴とする情報処理方法が提供される。
本発明のさらに他の観点によれば、上記の情報処理方法の各ステップをコンピュータに実行させるためのプログラムが提供される。
本発明のさらに他の観点によれば、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
【００１７】
本発明によれば、ディジタルデータから、複数の異なる特徴量を算出し、前記特徴量からディジタル署名を生成する。また、前記ディジタルデータを格納するファイルの所定位置に前記ディジタル署名データを付加する。これにより、ディジタルデータの内容が本質的に変化しない加工編集には、原本性を証明することが可能になり、ディジタル署名が付加されたディジタルファイルの利便性を高めることができる。
【００１８】
【発明の実施の形態】
＜第１の実施形態＞
まず、本発明の第１の実施形態によるディジタル署名データの生成を行うディジタル署名生成手段について図１を用いて説明する。
ディジタルカメラやディジタルビデオカメラ等から入力されるディジタルデータは、まずハッシュ関数生成手段１０１に入力される。
ハッシュ関数生成手段１０１では、ハッシュ関数を用いてディジタルデータからハッシュ値を計算し、後段の署名生成演算手段１０２に入力される。
署名生成演算手段１０２では、公開鍵暗号方式を用いて演算処理する場合には、秘密鍵を用いて、ハッシュ値に対して演算処理を行い、ディジタル署名データを生成する。
共通暗号鍵方式を用いる場合には、暗号化・復号化で必要な共通データ（秘密鍵）を用いて、ハッシュ値に対して演算処理を行い、ディジタル署名データを生成する。
生成されたディジタル署名データ１１１はディジタルデータ１１２を格納するファイル１１０内のヘッダ等の所定位置に付加される。
【００１９】
次に、ディジタル署名の検証を行うディジタル署名検証装置について図２を用いて説明する。
まずディジタルデータ１１２を格納するファイル１１０内の所定位置からディジタル署名データ１１１を読み込み、署名検証演算手段２０１に入力する。
署名検証演算手段２０１では、公開鍵暗号方式を用いて演算処理する場合には公開鍵を用いてディジタル署名データに対して演算処理を行い、ハッシュ値を復元し、後段の比較手段２０３に入力する。
共通暗号鍵方式を用いる場合には暗号化・復号化に必要な共通データ（秘密鍵）を用いてディジタル署名データに対して演算処理を行い、ハッシュ値を復元し、後段の比較手段２０３に入力する。
【００２０】
次に、ディジタルデータを格納するファイル１１０内の所定位置からディジタルデータ１１２を読み込み、ハッシュ関数生成手段２０２に入力する。
ハッシュ関数生成手段２０２では、ハッシュ関数を用いてディジタルデータからハッシュ値を計算し、後段の比較手段２０３に入力する。
比較手段２０３では、署名検証演算手段２０１から入力されるハッシュ値と、ハッシュ関数生成手段２０２から入力されるハッシュ値を比較し、二つのハッシュ値が同一である場合には、検証結果として真を表す値（例えば１）を出力し、二つのハッシュ値が同一でない場合には検証結果として偽を表す値（例えば０）を出力する。
以上のディジタル署名検証装置を用いることにより、ディジタルデータの改竄を検出することができる。
【００２１】
以降、本明細書では、“ディジタル署名を生成する”という記述は、図１で説明したように、ディジタルデータからディジタル署名生成手段を用いてディジタル署名データを計算することを意味し、“ディジタル署名を検証する”という記述は、図２で説明したように、ディジタル署名検証手段を用いて、署名されたディジタルデータを検証することを意味することとする。
【００２２】
本実施形態では、説明を分かり易くするために、ディジタルデータとして図３に示すような画像データ３０１を例として説明を行う。
また共通鍵暗号方式を用いる場合には、ディジタル署名を検証する際に必要な共通データ（共通鍵暗号方式における秘密鍵）は、ネットワークを通じて検証者に安全に配布することが可能であるとする。
今、画像データ３０１に対し、改竄を検出するためのディジタル署名を計算するが、画像データ３０１全体からディジタル署名を計算しても良いし、画像データを３０２のようにブロック単位に分割し、ブロック単位毎のディジタル署名を計算してもよい。
【００２３】
本実施形態では、ブロック毎にディジタル署名を計算する場合について説明を行うが、画像全体からディジタル署名を計算する場合も本発明の範疇であるとする。ブロック毎にディジタル署名を計算した場合、ブロック単位で改竄位置を特定できるというメリットがある。
【００２４】
次に、本明細書では、画像内容を大きく変えることの無い画像変更に対し、画像変更前と変更後で同一のディジタル署名データとなるディジタル署名データをロバストディジタル署名データと呼ぶこととする。ロバストディジタル署名データは、署名が行われたディジタルデータに対し、ディジタルデータの内容を損なわない範囲内で加工・編集する限りは、ディジタルデータの原本性が保証できるというメリットがある。
【００２５】
まず初めにロバストディジタル署名生成手段について図４を用いて説明する。
ロバストディジタル署名生成手段４００は、特徴量算出手段４０１およびディジタル署名生成手段４０２から構成される。
ロバストディジタル署名生成手段４００は、図１のディジタル署名生成手段の前段に特徴量算出手段４０１を配置した構成になっている。
まず、特徴量算出手段４０１に、ディジタルデータが入力される。
特徴量算出手段４０１では、入力されるディジタルデータの特徴量を算出する。このとき、特徴量算出手段４０１は、ディジタルデータの表現内容が大きく変化しない限り、安定して変化しない（ロバストである）特徴量を生成する。特徴量算出手段４０１の具体例については、後に詳しく述べる。
【００２６】
次に特徴量算出手段４０１から出力される各ブロックの特徴量は、後段のディジタル署名生成手段４０２に入力される。
ディジタル署名生成手段４０２では、既に図１で説明したように、入力される各ブロックの特徴量に対し、ハッシュ関数を実行し、公開鍵暗号方式を用いる場合には秘密鍵を用いて、共通鍵暗号方式を用いる場合には暗号化・復号化に必要な共通データ（秘密鍵）を用いて、ディジタル署名データを生成する。本明細書では、上述のような特徴量に対するディジタル署名データをロバストディジタル署名データと呼ぶ。
【００２７】
図６において、署名検証演算手段６０１では、公開鍵暗号方式を用いて演算処理する場合には公開鍵を用いてロバストディジタル署名データに対して演算処理を行い、ハッシュ値を復元し、後段の比較手段６０３に入力する。共通暗号鍵方式を用いる場合には暗号化・復号化に必要な共通データ（秘密鍵）を用いてロバストディジタル署名データに対して演算処理を行い、ハッシュ値を復元し、後段の比較手段６０３に入力する。
【００２８】
図５は、ロバストディジタル署名データを画像に付加するロバストディジタル署名付加装置の内部構成を示すブロック図である。
まず、画像データはブロック分割手段５０１に入力され、図３のようにブロックに分割されたブロック単位画像をロバストディジタル署名生成手段５０２に出力する。なお、既に述べたようにブロック分割手段５０１は必ずしも存在する必要はない。
ロバストディジタル署名生成手段５０２では、ブロック毎にロバストディジタル署名データを生成し、後段のロバストディジタル署名付加手段５０３に出力する。
上記の処理を全てのブロックに対して繰り返し行い、全てのブロック単位画像に対するロバストディジタル署名を計算する。
【００２９】
ロバストディジタル署名付加手段５０３では、画像ファイルの所定位置に、ロバストディジタル署名データを付加する。このとき改竄されたブロック単位画像を特定することが可能なように、ブロック単位画像の位置と関連付けて、画像ファイルの所定の位置（コメント欄あるいは署名欄）にロバストディジタル署名データを付加する。
また、必要に応じて特徴量算出方法・パラメータを画像ファイルの所定の位置に付加してもよい。
以上、ロバストディジタル署名付加装置について述べた。
【００３０】
次に、ロバストディジタル署名検証装置について図６を用いて説明する。
ロバストディジタル署名検証装置は、図２のディジタル署名検証装置のハッシュ関数生成手段の前段に特徴量算出手段６０４を配置した構成になっている。特徴量算出手段６０４は、図４のロバストディジタル署名生成手段４００における特徴量算出手段４０１と同一の手段である。
【００３１】
図６において図２のディジタル署名検証装置と同じ名称の手段では、図２のディジタル署名検証装置と同様の処理を行う。
まず、図６のロバストディジタル署名検証装置では、ロバストディジタル署名が施されたディジタルデータファイルの所定位置から、ロバストディジタル署名データを読み込み、署名検証演算手段６０１に入力する。
署名検証演算手段６０１では、公開鍵暗号方式を用いて演算処理する場合には公開鍵を用いてロバストディジタル署名データに対して演算処理を行い、ハッシュ値を復元し、後段の比較手段６０３に入力する。
共通暗号鍵方式を用いる場合には暗号化・復号化に必要な共通データ（秘密鍵）を用いてロバストディジタル署名データに対して演算処理を行い、ハッシュ値を復元し、後段の比較手段６０３に入力する。
ここで復元されるハッシュ値は、ブロック単位画像から計算された特徴量のハッシュ値である。
【００３２】
次に、ロバストディジタル署名が施されたディジタルデータファイルの所定位置からディジタルデータを読み込み、特徴量算出手段６０４に入力する。
特徴量算出手段６０４では、図４のロバストディジタル署名生成手段４００の特徴量算出手段４０１と同様の処理を行い、特徴量を後段のハッシュ関数生成手段６０２に出力する。
ハッシュ関数生成手段６０２では、ハッシュ関数を用いてディジタルデータからハッシュ値を計算し、後段の比較手段６０３に入力する。
比較手段６０３では、署名検証演算手段６０１から入力されるハッシュ値と、ハッシュ関数生成手段６０２から入力されるハッシュ値を比較する。二つのハッシュ値が同一である場合には、検証結果として真を表す値（例えば１）を出力し、二つのハッシュ値が同一でない場合には検証結果として偽を表す値（例えば０）を出力する。
ロバストディジタル署名検証装置では、特徴量算出手段で算出される特徴量が変化しない限りは、検証結果は真（原本性を検証した）という結果を出力する。
以上、ロバストディジタル署名検証装置について説明した。
【００３３】
次に、ディジタル署名装置と上記のロバストディジタル署名装置を組み合わせ、画像に対する改竄のレベルまたは原本として信頼できるレベルを判定することが可能なマルチレベルロバストディジタル署名付加装置およびマルチレベルロバストディジタル署名検証装置について説明する。
以下、マルチレベルロバストディジタル署名付加装置について図７を用いて説明する。
マルチレベルロバストディジタル署名付加装置では、図４と同様に画像データはブロック分割手段７０１に入力され、ブロック分割されたブロック単位画像を生成する。次にブロック分割されたブロック単位画像は、ブロック毎にマルチレベルロバストディジタル署名生成手段７０２に入力される。マルチレベルロバストディジタル署名生成手段７０２では、図４のロバストディジタル署名生成手段４００と異なり、一つのブロック単位画像に対し複数のロバストディジタル署名（ディジタル署名を含んでもよい）を生成する。
【００３４】
最後に、マルチレベルロバストディジタル署名付加手段７０３において、画像ファイル内の所定の位置（コメント欄あるいは署名欄）に複数のロバストディジタル署名データを付加する。このとき改竄されたブロック単位画像を特定することが可能なように、位置情報とディジタル署名を対応づけ画像ファイルに複数のロバストディジタル署名データを付加する。
また、必要に応じて特徴量算出方法・パラメータを画像ファイルの所定の位置に付加してもよい。
【００３５】
図８はマルチレベルロバストディジタル署名生成手段７０２の内部構成の一例を示した図である。以下、内部構成について詳しく説明する。
まずブロック単位画像は、ディジタル署名生成手段８０１、第１ロバストディジタル署名生成手段８０２および第２ロバストディジタル署名生成手段８０３に入力される。
ディジタル署名生成手段８０１に入力されるブロック単位画像は、空間領域で表現される画像でもよいし、周波数変換（離散ウェーブレット変換又は離散コサイン変換）に代表される画像変換後の係数値でもよい。
ディジタル署名生成手段８０１では、ハッシュ関数および公開鍵暗号方式（共通暗号鍵方式）を用い、ディジタル署名データ０を生成する。
第１ロバストディジタル署名生成手段８０２では、図４のロバストディジタル署名生成手段４００で述べたように、入力されるブロック単位画像の特徴量からロバストディジタル署名を計算し、ディジタル署名データ１を生成する。
第２ロバストディジタル署名生成手段８０３も、第１ロバストディジタル署名生成手段８０２と同様に、入力されるブロック単位画像の特徴量からロバストディジタル署名を計算し、ディジタル署名データ２を生成する。
【００３６】
図８では、ディジタル署名データ０とディジタル署名データ１とディジタル署名データ２を生成する例を示したが、複数の異なるロバストディジタル署名データ（ディジタル署名データを含んでもよい）があればよく、ディジタル署名データ０とディジタル署名データ１だけでも構わないし、更に複数のロバストディジタル署名データであっても構わない。
なお、第１ロバストディジタル署名生成手段８０２内部の特徴量算出手段と、第２ロバストディジタル署名生成手段８０３内部の特徴量算出手段は、異なる特徴量を算出する手段であるとする。異なる特徴量を算出する具体的な例については、以降で詳しく述べる。
【００３７】
図８の場合、ディジタル署名生成手段８０１に入力されるデータは、ブロック単位画像全体を表現するデータである。従って、ブロック単位画像に少しでも変更が加えられる場合、ディジタル署名データ０は異なった値をとる可能性が極めて高い。従って、ディジタル署名０は、原本性や改竄を厳密にチェックする場合に有効である。
【００３８】
次に、ディジタル署名データ１は、特徴量算出後のロバストディジタル署名データであり、ディジタル署名データ０と比較して、画像内容以外への変化にはそれほど敏感でないロバストディジタル署名データである。
【００３９】
次に、ディジタル署名データ２は、ディジタル署名データ１と同様に特徴量算出後のロバストディジタル署名データではあるが、ディジタル署名データ１より更に画像内容以外への変化には敏感でないロバストディジタル署名データである。
【００４０】
以上のようにディジタル署名データ０，１，２は、それぞれ異なる基準で原本性や改竄のレベルを判定することが可能なディジタル署名データである。
以上、マルチレベルロバストディジタル署名付加装置について説明した。
【００４１】
次にマルチレベルロバストディジタル署名検証装置について説明する。
マルチレベルロバストディジタル署名検証装置は、ディジタルデータファイルの所定の位置に付加されたマルチレベルロバストディジタル署名データを読み込み、ディジタルデータに対する原本性や改竄のレベルを検証する装置である。
【００４２】
図９はマルチレベルロバストディジタル署名検証装置のブロック図である。
まずマルチレベルロバストディジタル署名検証装置には、検証単位であるブロック単位画像が入力される。
入力されたブロック単位画像は、ディジタル署名検証手段９０１、第１ロバストディジタル署名検証手段９０２、第２ロバストディジタル署名検証手段９０３に入力される。
【００４３】
ディジタル署名検証手段９０１、第１ロバストディジタル署名検証手段９０２、第２ロバストディジタル署名検証手段９０３では、それぞれ、ディジタル署名検証手段、ロバストディジタル署名検証手段、ロバストディジタル署名検証手段を入力し、入力されたブロック単位画像ごとに原本性を検証し、それぞれ検証結果Ｒ０，Ｒ１，Ｒ２を後段の信頼度換算手段９０４に出力する。
信頼度換算手段９０４では、入力される複数の検証結果Ｒ０，Ｒ１，Ｒ２を基に、入力されたブロック単位画像（あるいは画像全体）に対して、多段階レベルからなる信頼度を計算し、後段の信頼度表示手段９０５に入力する。
信頼度表示手段９０５では、前段で計算された信頼度を、画像の検証者に表示する。
【００４４】
信頼度表示手段９０５の表示例について図１０を用いて説明する。
図１０の１００１は、図３に改ざんを加えた画像であるとする。
信頼度表示手段９０５では、１００２のように対応するブロック単位画像毎に計算された信頼度を表示してもよい。１００２では、数値が小さいほど信頼度が高いことを示し、数値が大きいほど信頼度が低いことを示す。
また、数値ではなく、１００３に示すように視覚的に色や模様を用いて信頼度を表示してもよい。このとき、改竄箇所を分かりやすくするため、検証対象画像１００１に１００２や１００３をオーバーレイ（重ね合わせ）して表示してもよい。
以上、マルチレベルロバストディジタル署名検証装置について述べた。
【００４５】
次に、マルチレベルロバストディジタル署名付加装置のロバストディジタル署名生成手段４００の内部処理を具体的に説明する。
ディジタルデータの入力機器として、近年、ディジタルカメラ・ディジタルビデオが一般家庭に広く浸透してきている。静止画像・動画像のディジタルデータの容量は非常に大きいため、上記の入力機器では圧縮画像データを取り扱う。
従って、上記圧縮画像データに対してもディジタル署名の付加・検証が可能である必要がある。
【００４６】
本実施の形態では、今後、静止画圧縮技術の標準となることが想定されるＪＰＥＧ２０００圧縮符号化画像データに対して、ディジタル署名を付加・検証を行う場合について説明する。
まず初めにＪＰＥＧ２０００の圧縮方式の概要について簡単に説明を行う。
ＪＰＥＧ２０００の画像符号化装置のブロック図を図１１の上段に示す。まず画像入力部１１０１に対して符号化対象となる画像を構成する画素信号がラスタ−スキャン順に入力され、その出力は離散ウェーブレット変換部に入力される。
離散ウェーブレット変換部１１０２は、入力した画像信号に対して2次元の離散ウェーブレット変換処理を行い、変換係数を計算して出力する。
離散ウェーブレット変換の詳細は公知であるのでここでは説明を省略する。
【００４７】
図１２は２次元の変換処理により得られる２レベルの変換係数群の構成例であり、画像信号は異なる周波数帯域の係数列HH1、HL1、LH1、…、LLに分解される。なお、以降の説明ではこれらの係数列をサブバンドと呼ぶ。各サブバンドの係数は後続の量子化部１１０３に出力される。
量子化部１１０３は、入力した係数を所定の量子化ステップにより量子化し、その量子化値に対するインデックスを出力する。
量子化部１１０３に入力された変換係数はそのまま後続のエントロピ符号化部１１０４に出力される。
エントロピ符号化部１１０４は入力した量子化インデックスをビットプレーンに分解し、ビットプレーンを単位に２値算術符号化を行ってコードストリームを出力する。符号出力部１１０５は、コードストリームを含む符号列を伝送路を介して符号入力部１１０６へ出力可能である。
【００４８】
次に以上述べた画像符号化装置で生成されたビットストリームを復号化する方法について説明する。図１１の下段は画像復号化装置の構成を表すブロック図であり、１１０６が符号入力部、１１０７はエントロピ復号化部、１１０８は逆量子化部、１１０９は逆離散ウェーブレット変換部、１１１０は画像出力部である。
符号入力部１１０６は符号列を入力し、それに含まれるヘッダを解析して後続の処理に必要なパラメータを抽出し必要な場合は処理の流れを制御し、あるいは後続の処理ユニットに対して該当するパラメータを送出するものである。また、符号列に含まれるビットストリームはエントロピ復号化部１１０７に出力される。
エントロピ復号化部１１０７はビットストリームをビットプレーン単位で復号化し、出力する。復元された量子化インデックスは逆量子化器１１０８に出力される。
【００４９】
逆量子化器１１０８は入力した量子化インデックスおよびヘッダから読み込まれた量子化テーブル１１１１から、離散ウェーブレット変換係数を復元する。変換係数は後続の逆離散ウェーブレット変換部１１０９に出力される。
逆離散ウェーブレット変換部１１０９では、２次元の逆離散ウェーブレット変換を実行し、変換係数から原画像の信号を復元する。
このとき、ＪＰＥＧ２０００における完全再構成条件を満たすなら、復元された画像信号は原画像の信号と一致する。画像出力部１１１０は、復元された画像信号を出力する。
以上、簡単にＪＰＥＧ２０００圧縮方式について説明した。
【００５０】
以下、離散ウェーブレット変換をＤＷＴと略して用いる。
本実施の形態では、ロバストディジタル署名生成手段４００内部の特徴量算出手段４０２において、特徴量の算出にＪＰＥＧ２０００圧縮符号化における量子化後のＤＷＴ係数を用いる。また説明を簡単にするため、離散ウェーブレットフィルタとして可逆のフィルタを用いることとする。
【００５１】
図１３は、量子化部１１０３で用いられる量子化テーブルであり、この量子化テーブル１３００は、マルチレベルロバストディジタル署名を施す前に、画像の圧縮に用いられた量子化テーブルであるとする。
なお、ＪＰＥＧ２０００ではサブバンド毎に量子化ステップが一定である。また、図１３では、量子化テーブルの係数値は省略している。
量子化テーブル１３０１、１３０２は、それぞれ、中圧縮、高圧縮（低画質）を実現するための量子化テーブルであり、量子化テーブル１３０１および１３０２の黒枠で囲まれた部分の量子化ステップは、量子化テーブル１３００の量子化ステップと同一であるとする。
【００５２】
本実施の形態では、ロバストディジタル署名生成手段４００の特徴量算出手段４０１では、離散ウェーブレット変換、所定の量子化テーブルを用いた量子化、および量子化ＤＷＴ係数内の所定領域の量子化ＤＷＴ係数の抽出を行う。
後段のディジタル署名生成手段４０２では、前記抽出された所定領域の量子化ＤＷＴ係数から、ディジタル署名データを生成する。
ここで、所定の量子化テーブルとは、ディジタル署名データ生成の対象であるＪＰＥＧ２０００圧縮画像で用いられた量子化テーブルと所定領域で共通の量子化ステップを持つ量子化テーブルである。
所定領域とは、ディジタル署名データ生成の対象であるＪＰＥＧ２０００圧縮画像で用いられた量子化テーブルと共通の量子化ステップを持つ領域である。（図１３における黒枠内が所定領域に相当する。）
【００５３】
以下、マルチレベルロバストディジタル署名付加装置の処理を具体的に説明する。
今、量子化テーブル１３００を用いて圧縮されたＪＰＥＧ２０００圧縮画像ファイルＡに対し、マルチレベルロバストディジタル署名付加装置を用い、マルチレベルロバストディジタル署名データを付加することを考える。
まず、ディジタル署名生成手段８０１では、ブロック単位画像の画素値全体（またはブロック単位画像に対応する量子化後のＤＷＴ係数）を処理し、ディジタル署名データ０を生成する。
次に、第１ロバストディジタル署名生成手段８０２では、ＪＰＥＧ２０００圧縮画像ファイルＡの量子化後のＤＷＴ係数の内、量子化テーブル１３０１の黒枠内に対応する量子化ＤＷＴ係数を処理し、ディジタル署名データ１を生成する。
次に、第２ロバストディジタル署名生成手段８０３では、ＪＰＥＧ２０００圧縮画像ファイルＡの量子化後のＤＷＴ係数の内、量子化テーブル１３０２の黒枠内に対応する量子化ＤＷＴ係数を処理し、ディジタル署名データ２を生成する。
【００５４】
上記のディジタル署名データ０，１，２は画像ファイルの所定位置に追加され、署名が施された画像ファイルＡ'が得られる。
次に、ディジタル署名が施された画像ファイルＡ'に対し、量子化テーブル１３０３を用いて再圧縮することを考える。この圧縮は、画像内容を大きく変更（改竄）する変更ではない。
量子化テーブル１３０３の黒枠内の量子化ステップは、量子化テーブル１３００の対応する位置にある量子化ステップと同一である。再圧縮の結果、圧縮された画像ファイルＡ''が生成されるが、画像ファイルＡ'の所定位置に付加されたマルチレベルロバストディジタル署名は画像ファイルＡ''に引き継がれるとする。
次に、量子化テーブル１３０３を用いて再圧縮された画像ファイルＡ''に対して、図９のマルチレベルロバストディジタル署名検証装置を用いて、検証を行う。
【００５５】
ディジタル署名検証手段９０１内部において、ブロック単位画像から計算されるハッシュ値とファイルの所定位置から読み込まれるディジタル署名から計算されるハッシュ値は、異なる値を取る。
なぜなら、再圧縮で用いる量子化テーブルと再圧縮前の対応する位置の量子化ステップが異なる値を取り、量子化後のＤＷＴ係数が変化するためである。
【００５６】
第１ロバストディジタル署名生成手段９０２内部において、ブロック単位画像から計算されるハッシュ値とファイルの所定位置から読み込まれるディジタル署名から計算されるハッシュ値は再圧縮によっても変化しない。
なぜなら、量子化テーブル１３０１の黒枠内の量子化ステップは再圧縮前の対応する位置の量子化ステップと同一となり、量子化ＤＷＴ係数が変化しないためである。
【００５７】
第２ロバストディジタル署名生成手段９０３内部において、ブロック単位画像から計算されるハッシュ値とファイルの所定位置から読み込まれるディジタル署名から計算されるハッシュ値は再圧縮によっても変化しない。
なぜなら、量子化テーブル１３０２の黒枠内の量子化ステップは再圧縮前の対応する位置の量子化ステップと同一となり、量子化ＤＷＴ係数が変化しないためである。
【００５８】
したがって、信頼度換算手段９０４では、上記の検証結果から、最も高い信頼度ではないが、中程度の信頼度に換算することが可能である。
信頼度表示手段９０５では、既に述べたように信頼度のレベルを表示してもよいし、「再圧縮された可能性があるが、画像の内容は改竄されていない」等のメッセージを画像ファイルの検証者に表示してもよい。
以上、マルチレベルロバストディジタル署名データが付加された画像データを再圧縮した場合の原本性の検証について説明した。
【００５９】
ＪＰＥＧ２０００では、離散ウェーブレット変換の性質を利用し、ＳＮＲスケーラビリティ（荒い画質の画像から高精細の画像を保持する機能）や空間的スケーラビリティ（低解像度の画像から高解像度の画像を保持する機能）等の機能が実現可能である。
従って、以下に述べるように、再圧縮画像に対する信頼性の判定だけでなく、縮小画像に対する信頼性の判定を行うことが出来る。
【００６０】
以下、縮小画像に対する信頼性の判定を行う場合について述べる。
ＪＰＥＧ２０００の空間的スケーラビリティの機能を利用する場合、図１４に示す原画像１４０１は量子化されない全てのＤＷＴ係数から、１／４の縮小画像１４０２は、１３０１の黒枠内部のＤＷＴ係数から、１／１６の縮小画像１４０３は、１３０２の黒枠内部のＤＷＴ係数からを復元することが出来ることが知られている。（量子化を行わず、可逆の離散ウェーブレットフィルタを用いる必要がある。）
【００６１】
従って、量子化テーブル１３０１の黒枠内に相当する位置のＤＷＴ係数からロバストディジタル署名データを計算した場合、署名画像の１／４の縮小画像の信頼性判定に用いることが出来る。同様に、量子化テーブル１３０２の黒枠内に相当する位置のＤＷＴ係数から計算されたロバストディジタル署名データは、署名画像の１／１６の縮小画像の信頼性判定に用いることが出来る。
【００６２】
上述のように、マルチレベルロバストディジタル署名を用いれば、ディジタル署名されたディジタルデータだけしか信頼性判定が出来ないという従来の課題を大きく克服し、縮小画像に対しても信頼性の判定が可能になる。
これにより、ディジタル署名されたディジタルデータ自体を提示せずに、縮小画像を用いて、ディジタルデータの原本性の検証を実現することが出来、ディジタル署名されたディジタルデータの用途を大きく広げることが可能となる。
また、非損失（ロスレス）で圧縮されたＪＰＥＧ２０００圧縮符号化画像に対してもマルチレベルロバストディジタル署名の付加・検証が可能である。
【００６３】
上記のロスレス圧縮の場合、量子化テーブル１３００が量子化を行わないテーブルであり、量子化テーブル１３０１、１３０２は黒枠内で量子化を行わない量子化テーブルとなる。
この場合でも今まで述べてきたのと同様に、マルチレベルロバストディジタル署名を用い、画像の検証が可能であることはいうまでもない。
【００６４】
また、ＪＰＥＧ２０００では、エントロピ符号化において、サブバンド毎の下位ビットプレーンを切り落とす形での量子化を行うことも可能であるが、本実施の形態のマルチレベルロバストディジタル署名付加・検証装置は、上述のエントロピ符号化における量子化にも対応することが可能である。
また、グレースケール画像への変換を想定する場合、ロバストディジタル署名生成手段では、特徴量抽出手段で輝度信号の量子化ＤＷＴ係数のみを抽出し、ロバストディジタル署名データを生成してもよい。
【００６５】
また、本実施の形態では、量子化後のＤＷＴ係数に対し、ディジタル署名を計算する場合について詳しく述べたが、可逆の離散ウェーブレットフィルタを用いるならば、離散ウェーブレット変換前の画素値、離散ウェーブレット変換部１００２後のＤＷＴ係数を用いてもよい。
また、ＪＰＥＧ２０００では、サブバンド単位やビットプレーン単位でエントロピ符号化が行われるため、符号化データから容易に縮小画像を抽出することも可能である。
従って、エントロピ符号化後の符号化データに対して、ディジタル署名データ（ロバストディジタル署名データ）を計算してもよい。
【００６６】
以上のように、本実施の形態では、画像特徴に基づいた複数のディジタル署名を用いて、画像の信頼性を段階的にチェックできる。
本実施の形態で述べた技術を用いれば、従来では対応することが難しかった画像の再圧縮や縮小画像、グレースケールへの変換画像からも、原本性の判定を行うことが可能である。
なお、ＪＰＥＧ２０００圧縮符号化画像における、エントロピ符号化後の符号化データに対する、ディジタル署名データ（ロバストディジタル署名データ）の生成方法については第５の実施形態で詳しく述べる。
【００６７】
＜第２の実施形態＞
第１の実施形態では、ＪＰＥＧ２０００圧縮符号化画像に対するマルチレベルロバストディジタル署名付加、検証について説明を行ったが、現在の画像圧縮技術の標準であるＪＰＥＧに於いても同様にマルチレベルロバストディジタル署名付加、検証を実現することが可能である。
【００６８】
まず初めにＪＰＥＧ圧縮方式の概要について簡単に説明を行う。
ＪＰＥＧ画像符号化装置のブロック図を図１５の上段に示す。まず画像入力部１５０１に対して符号化対象となる画像を構成する画素信号が、最小符号化単位ごとに入力され、その出力は離散コサイン変換部１５０２に入力される。
離散コサイン変換部１５０２は、入力した画像信号に対して、２次元離散コサイン変換処理を行い、離散コサイン変換係数を計算して出力する。
離散コサイン変換の詳細は公知であるのでここでは説明を省略する。
【００６９】
次に量子化部１５０３は、入力した係数を量子化テーブルに基づいて量子化し、その量子化値に対するインデックスを出力する。量子化テーブルは、画質と圧縮率を決める要素である。
量子化部１５０３に入力された変換係数は、ＤＣ成分は差分を計算した上で、ジグザグ・スキャンされ、後続のエントロピ符号化部１５０４に出力される。
エントロピ符号化部１５０４では、符号化テーブルに従い、入力された量子化後の離散コサイン変換係数を符号化し、コードストリームを出力する。符号出力部１５０５は、そのコードストリームを含む符号列を伝送路を介して符号入力部１５０６へ出力可能である。
【００７０】
次に以上述べた画像符号化装置によるビットストリームを復号化する方法について説明する。図１５の下段は画像復号化装置の構成を表すブロック図であり、１５０６が符号入力部、１５０７はエントロピ復号化部、１５０８は逆量子化部、１５０９は逆離散コサイン変換部、１５１０は画像出力部である。
符号入力部１５０６は符号列を入力し、それに含まれるヘッダを解析して後続の処理に必要なパラメータを抽出し必要な場合は処理の流れを制御し、あるいは後続の処理ユニットに対して該当するパラメータを送出するものである。また、符号列に含まれるビットストリームはエントロピ復号化部１５０７に出力される。
【００７１】
エントロピ復号化部１５０７はビットストリームを復号化し、出力する。復元された量子化インデックスは逆量子化器１５０８に出力される。
逆量子化器１５０８は入力した量子化インデックスおよびヘッダから読み込まれた量子化テーブル１５１１から、離散コサイン変換係数を復元する。変換係数は後続の逆離散コサイン変換部１５０９に出力される。
逆離散コサイン変換部１５０９では、２次元の逆離散コサイン変換を実行し、変換係数から最小符号化単位の原画像の信号を復元する。
原画像を構成する全ての最小符号化単位について上記の処理を行い、原画像全体を復元する。画像出力部１５１０は、復元された画像信号を出力する。
以下、離散コサイン変換をＤＣＴと略して用いる。
本実施の形態では、ブロック単位画像はＪＰＥＧ圧縮における最小符号化単位に相当し、ロバストディジタル署名生成手段４００内の特徴量算出手段４０２における特徴量の算出は、ＪＰＥＧ圧縮における量子化後のＤＣＴ係数を用いる。
【００７２】
図１６は本実施の形態で用いるＪＰＥＧ圧縮における量子化テーブルである。（量子化テーブルの係数値は省略してある）
量子化テーブル１６００は、マルチレベルロバストディジタル署名を付加する前に、画像の圧縮に用いられた量子化テーブルである。
量子化テーブル１６０１、１６０２は、それぞれ、中圧縮、高圧縮（低画質）を実現するための量子化テーブルであり、量子化テーブル１６０１および１６０２の黒枠で囲まれた部分の量子化ステップは、量子化テーブル１６００の量子化ステップと同一の値であるとする。
本実施の形態では、ロバストディジタル署名生成手段４００の特徴量算出手段４０１では、署名対象のＪＰＥＧ圧縮画像で圧縮に用いられた量子化テーブルと所定の領域で共通の量子化ステップを持つ量子化テーブルの対応する位置にある量子化後のＤＣＴ係数を抽出する。そして、後段のディジタル署名生成手段４０２では、前記所定領域の量子化後のＤＣＴ係数を処理し、ディジタル署名を生成する。
【００７３】
以下、マルチレベルロバストディジタル署名付加装置の処理を具体的に説明する。
量子化テーブル１６００で量子化されたＪＰＥＧ圧縮画像ファイルＢに対し、マルチレベルロバストディジタル署名生成手段８００を用いて、ディジタル署名データを計算する。
まず、ディジタル署名生成手段８０１では、空間におけるブロック単位画像（またはブロック単位画像のＪＰＥＧ圧縮過程のＤＣＴ係数全体）を処理し、ディジタル署名データ０を生成する。
次に、第１ロバストディジタル署名生成手段８０２では、ＪＰＥＧ圧縮画像ファイルＢの量子化ＤＣＴ係数の内、量子化テーブル１６０１の黒枠内に対応する量子化ＤＣＴ係数を処理し、ディジタル署名データ１を生成する。
次に、第２ロバストディジタル署名生成手段８０３では、ＪＰＥＧ圧縮画像ファイルＢの量子化ＤＣＴ係数の内、量子化テーブル１６０２の黒枠内に対応する量子化ＤＣＴ係数を処理し、ディジタル署名データ２を生成する。
【００７４】
上記のディジタル署名データ０、１、２は画像ファイルの所定の位置に追加され、署名が付加された画像ファイルＢ'が得られる。
次に、ディジタル署名が付加された画像ファイルＢ'に対し、量子化テーブル１６０３を用いて再圧縮することを考える。この圧縮は、画像内容を大きく変更（改竄）する変更ではない。
量子化テーブル１６０３の黒枠内の量子化ステップは、量子化テーブル１６００の対応する位置の量子化ステップと同一の値である。
再圧縮の結果、圧縮された画像ファイルＢ''が生成されるが、画像ファイルＢ'の所定位置に付加されたマルチレベルロバストディジタル署名は画像ファイルＢ''に引き継がれるとする。
次に、量子化テーブル１６０３を用いて再圧縮された画像ファイルＢ''に対して、図９のマルチレベルロバストディジタル署名検証装置を用いて、検証を行う。
【００７５】
ディジタル署名検証手段９０１内部において、ブロック単位画像から計算されるハッシュ値とファイルの所定位置から読み込まれるディジタル署名から計算されるハッシュ値は、異なる値を取る。
なぜなら、再圧縮で用いる量子化テーブルと再圧縮前の対応する位置の量子化ステップが異なる値を取り、量子化後のＤＣＴ係数が変化するためである。
【００７６】
第１ロバストディジタル署名生成手段９０２内部において、ブロック単位画像から計算されるハッシュ値とファイルの所定位置から読み込まれるディジタル署名から計算されるハッシュ値は再圧縮によっても変化しない。
なぜなら、量子化テーブル１６０１の黒枠内の量子化ステップは再圧縮前の対応する位置の量子化ステップと同一となり、量子化ＤＣＴ係数が変化しないためである。
【００７７】
第２ロバストディジタル署名生成手段９０３内部において、ブロック単位画像から計算されるハッシュ値とファイルの所定位置から読み込まれるディジタル署名から計算されるハッシュ値は再圧縮によっても変化しない。
なぜなら、量子化テーブル１６０２の黒枠内の量子化ステップは再圧縮前の対応する位置の量子化ステップと同一となり、量子化ＤＣＴ係数が変化しないためである。
【００７８】
したがって、信頼度換算手段９０４では、上記の検証結果から、最も高い信頼度ではないが、中程度の信頼度に換算することが可能である。
信頼度表示手段９０５では、既に述べたように信頼度のレベルを表示してもよいし、「再圧縮された可能性があるが、画像の内容は改竄されていない」等のメッセージを画像ファイルの検証者に表示してもよい。
【００７９】
以降、本実施の形態における注意点について述べる。
ＪＰＥＧの基本方式におけるＤＣＴは完全な可逆ではない。従って、圧縮された画像のＤＣＴ係数を逆ＤＣＴして空間画像に戻し、再びＤＣＴして得られるＤＣＴ係数は、元のＤＣＴ係数と必ずしも同一になるとは限らない。
従って、本実施の形態においては、再圧縮にあたって、以下の２つの手法を利用するとよい。（１）再圧縮前のＪＰＥＧ圧縮符号化データから逆量子化により量子化前のＤＣＴ係数を計算し、再び新しい量子化テーブルで再量子化し、量子化後のＤＣＴ係数を得る。（ＤＣＴと逆ＤＣＴを用いない）（２）完全に可逆のＤＣＴを用いる。
上記は、第１の実施形態において不可逆の離散ウェーブレットフィルタを用いる場合も同様である。
【００８０】
＜第３の実施形態＞
第１、２の実施形態ではマルチレベルロバストディジタル署名が施された画像に対して、圧縮や縮小画像の抽出を行った場合のマルチレベルロバストディジタル署名の検証について述べた。
第３の実施形態では、画像にγ補正を加えた場合にも原本性の検証が可能なマルチレベルロバストディジタル署名生成手段について述べる。
【００８１】
第３の実施形態では、ロバストディジタル署名生成手段４００内の特徴量算出手段４０１として、図１７の１７００に示す特徴量算出手段を用いる。
特徴量算出手段１７００は、微分フィルタ１７０１と量子化手段１７０２から成る。
まず特徴量算出手段１７００に入力されたブロック単位画像は、微分フィルタ１７０１で処理される。微分フィルタは、周囲の画素値との差分を計算するラプラシアンフィルタに代表されるようなフィルタである。微分フィルタ１７０１は処理結果の微分画像を後段の量子化手段１７０２に出力する。
次に、量子化手段１７０２では、前段で得られたエッジ強調された微分画像を量子化し、画像特徴量を出力する。
【００８２】
以下、図１８を用いて、第３の実施形態におけるロバストディジタル署名生成手段４００における内部処理を説明する。
画像１８００はロバストディジタル署名データを計算する対象の画像であり、画像１８００に対してγ補正を行い、画像特徴を把握しやすくした画像が画像１８０１である。
画像１８００と１８０１の画素値と空間的位置の関係を一次元でそれぞれ破線、実線で簡潔に示したグラフを１８０４に示す。１８０４では、画像１８００は画素値の変化が少なく画像特徴が把握しにくいことを示している。
【００８３】
次に、画像１８００および画像１８０１に対し、微分フィルタを実行した結果の画像をそれぞれ、１８０２、１８０３に示す。微分フィルタの結果、画素値の変化が大きな箇所が強調されていることが分かる。
次に、微分画像１８０２と微分画像１８０３の微分値と空間的位置の関係を一次元でそれぞれ破線、実線で簡潔に示したグラフを１８０５に示す。微分画像１８０３のほうが、大きな微分値を持っている。
最後に、１８０５に対し、適当な量子化パラメータを用いて量子化を行うと、同一の量子化データを得ることが可能であることが分かる。
すなわち、画像１８００に対してγ補正した画像１８０１に対しても変化しないようなロバストディジタル署名を生成することは可能である。
特徴量算出手段１７００を用いてマルチレベルロバストディジタル署名を生成する場合には、第１、第２の実施形態と同じく、量子化手段で用いる量子化パラメータをロバストディジタル署名生成手段ごと異ならせてもよい。
上記のような構成をとれば、γ補正を施した画像に対しても、マルチレベルロバストディジタル署名により、画像データの原本性や改竄の有無を検証することが可能となる。
【００８４】
＜第４の実施形態＞
第４の実施形態では、マルチレベルロバストディジタル署名データが付加された画像データに対し、原本性の維持が可能な加工編集を行う画像編集ソフトウェアについて述べる。
【００８５】
図１９は、マルチレベルロバストディジタル署名が施されたＪＰＥＧおよびＪＰＥＧ２０００圧縮符号化画像に対し、加工・編集するアプリケーションの動作を示した図である。
アプリケーションは、ユーザから加工・編集の指示があるとステップ１９０１に移り、以下の処理を実行する。ステップ１９０２で画像ファイルの所定位置にマルチレベルロバストディジタル署名データがあることを認識し、マルチレベルロバストディジタル署名データを読み込む。次にステップ１９０３で原本性を維持し、画像の加工・編集を行うかユーザに確認する。原本性を維持する場合にはステップ１９０４に進み、画像ファイルの所定位置から量子化テーブルを読み出す。このとき更に、ロバストディジタル署名生成に用いられた他の量子化テーブルも読み出す。
【００８６】
これは、マルチレベルロバストディジタル署名が施された圧縮符号化画像を署名を維持したまま再圧縮（縮小）するためには、ロバストディジタル署名が変化しない範囲を知る必要があるためである。
次にステップ１９０５でアプリケーションは署名を失わないと考えられる量子化テーブルを決定する。
次にステップ１９０６では決定した署名を失わない量子化テーブルをユーザに確認する。
次にステップ１９０７では決定した量子化テーブルに基づいて再圧縮（または縮小）を行う。その後、ステップ１９０８へ進む。
【００８７】
ステップ１９０３でディジタル署名を維持しない場合には、ステップ１９０９に進みユーザ指定のパラメータを入力する。次にステップ１９１０に進みユーザ指定のパラメータで再圧縮（または縮小）を行う。
【００８８】
次に、ステップ１９０８では署名を確認し、マルチレベルロバストディジタル署名が依然として維持されているか検証し、結果を表示する。
最後に、ステップ１９１１で、新しい画像ファイルの所定の位置に、マルチレベルロバストディジタル署名データを付加する。
ここで、ステップ１９１１におけるマルチレベルロバストディジタル署名データには、幾つか方法が考えられる。
例えば、画像ファイルの再圧縮であれば、再圧縮前のマルチレベルロバストディジタル署名データをそのまま、再圧縮後の画像ファイルの所定位置に引き継ぐとよい。
この場合、マルチレベルロバストディジタル署名データの特性を生かして、信頼度のレベルを段階的に判定することが出来る。
【００８９】
また、一方で、図１４に示されるような縮小画像１４０２、１４０３を得るために本実施の形態の画像編集ソフトウェアを用いる場合には、マルチレベルロバストディジタル署名データの中から、縮小画像に相当するロバストディジタル署名データのみを編集後の画像ファイルの所定位置に引き継ぐ形をとっても良いし、縮小画像に相当するロバストディジタル署名データとそれ以下の縮小画像のロバストディジタル署名データを引き継ぐ形をとっても良い。
この場合、信頼度のレベルを段階的に判定することは出来なくなるが、縮小画像データの原本性の検証を確認する目的には、十分有効で、画像編集前の全てのマルチレベルロバストディジタル署名データを引き継ぐ必要はないと考えられる。
【００９０】
また、本実施の形態の画像編集ソフトウェアでは、変更後のマルチレベルロバストディジタル署名データ付きのディジタルファイルに、署名を維持する為の変更を行ったことを示すコメントやフラグ、変更の内容をファイルの所定位置に挿入してもよい。
また、コメントには、変更前のマルチレベルロバストディジタル署名データが存在するネットワーク上のアドレス（ＵＲＬ等）を記載してもよい。
コメントは検証者にマルチレベルロバストディジタル署名の変更前のデータが存在することを明示する効果があり、検証者は必要に応じて、高精細なマルチレベルロバストディジタル署名付きのデータ等を入手することも可能になる。
【００９１】
＜第５の実施形態＞
第１の実施形態では、ＪＰＥＧ２０００圧縮符号化画像の量子化後のＤＷＴ係数を入力してロバストディジタル署名データを生成する場合について詳しく述べたが、本実施形態ではＪＰＥＧ２０００圧縮符号化画像の符号化データを入力して、ロバストディジタル署名データを生成する場合について詳しく述べる。
【００９２】
図２１はＪＰＥＧ２０００における空間スケーラブル／ＲＯＩなしの符号列の構成を表した概略図である。同図(a)は符号列の全体の構成を示したものであり、MHはメインヘッダ、THはタイルヘッダ、BSはビットストリームである。メインヘッダMHは同図(b)に示すように、符号化対象となる画像のサイズ（水平および垂直方向の画素数）、画像を複数の矩形領域であるタイルに分割した際のサイズ、各色成分数を表すコンポーネント数、各成分の大きさ、ビット精度を表すコンポーネント情報から構成されている。
【００９３】
次にタイルヘッダTHの構成を図６(c)に示す。タイルヘッダTHには当該タイルのビットストリーム長とヘッダ長を含めたタイル長および当該タイルに対する符号化パラメータから構成される。符号化パラメータには離散ウェーブレット変換のレベル、フィルタの種別等が含まれている。
【００９４】
ビットストリームの構成を同図(d)に示す。同図において、ビットストリームは各サブバンド毎にまとめられ、解像度の小さいサブバンドを先頭として順次解像度が高くなる順番に配置されている。さらに、各サブバンド内は上位ビットプレーンから下位ビットプレーンに向かい、ビットプレーンを単位として符号が配列されている。上記符号配列とすることにより、空間的に解像度が上昇する階層的復号化を行うことが可能となる。
【００９５】
実際には上述のビットストリームは、パケット単位で構成されている。パケットとは、各色における各レイヤーにおける各サブバンドレベルにおける各プリシンクトにより分けられたコーディングパスの集合であり、このパケットを単位としてビットストリーム（タイル符号化データ）が構成されている。
【００９６】
ここで、コードブロック、コーディングパス、レイヤー、プリシンクトについて簡単に述べる。コードブロックは、各サブバンドを矩形に分割した符号化の単位である。コーディングパスは、ビットプレーンをエントロピ符号化（２値算術符号化）する際の単位である。レイヤーはサブバンドを横断した、１つ以上のコードブロックに所属するコーディングパスの集合である。プリシンクトは原画像中の同一領域を保持するデータの集合である。ＪＰＥＧ２０００の圧縮符号化方式は既によく知られており、ここでは詳しい説明を省く。
【００９７】
ＪＰＥＧ２０００圧縮符号化データでは、メインヘッダやタイルヘッダ等に存在するパケットのサイズを記述したパケットヘッダを調べることで、エントロピ符号化されたデータ中のＬＬ、ＨＨ２、ＨＨ１に相当するパケットのデータ領域を特定することが出来る。従って、タイル毎のビットストリーム中のＬＬの符号化データ、ＬＬ〜ＨＨ２までの符号化データ、ＬＬ〜ＨＨ１までの符号化データに対し、それぞれディジタル署名データを生成すれば、高速に１／１６の縮小画像、１／４の縮小画像、フルサイズ画像に対するマルチレベルロバストディジタル署名を生成することが出来る。
【００９８】
この場合、エントロピ符号化の方法が変化すると画像内容が変わっていないにも関わらず、ロバストディジタル署名データが変化し改竄と判定されるというデメリットもあるが、ＰＣに比べてＣＰＵが非力なディジタルカメラ／デジタルビデオカメラでも、高速にマルチレベルロバストディジタル署名データを生成できるというメリットがある。
生成されたマルチレベルロバストディジタル署名データは、該当するタイル位置やサブバンド等の情報とともにファイルの所定位置に付加される。
【００９９】
本実施の形態では、符号化データが空間スケーラブルで配列されている場合について述べたが、同様に、ＳＮＲスケーラブル等でもマルチレベルロバストディジタル署名データを生成することが可能である。
また、ＪＰＥＧ２０００圧縮符号化データの特性を生かし、縮小画像に対してだけでなく、それぞれの縮小画像の輝度に対してもマルチレベルロバストディジタル署名データを生成することも可能である。
また、パケットヘッダを解析することにより、符号化データがＳＮＲスケーラブルで配列されている場合にも、１／１６の縮小画像、１／４の縮小画像、フルサイズ画像のマルチレベルロバストディジタル署名データを生成することも可能であり、またその逆も可能である。
【０１００】
以上、第１、第２、第３、第４、第５の実施形態では、ディジタル画像データに対するマルチレベルロバストディジタル署名の付加・検証について述べてきた。
しかし、本実施形態はマルチレベルロバストディジタル署名の付加・検証対象をディジタル画像データに限定するものではない。
動画像データは2次元画像データを時間方向に集めたものとして考えられるため、本実施形態の原理を適用することが可能である。
また、音声データについても、２次元画像データの処理を１次元に置き換えることで、マルチロバストディジタル署名データの付加・検証を適用することが出来る。
【０１０１】
図２０は、本実施形態による情報処理装置においてマルチレベルロバストディジタル署名の検証を行うためのコンピュータの構成を示すブロック図である。図２０において、本装置の構成要素であるＣＰＵ２０１１、ＲＡＭ２０１２、ＲＯＭ２０１３、ディスプレイ制御部２０１４、デバイスキーボードやマウスなどの操作入力デバイスの接続Ｉ／Ｏ２０１７、外部記憶装置の接続Ｉ／Ｏ２０１９、ディジタルカメラ・ディジタルビデオカメラ・イメージスキャナなどの画像入力機器との接続Ｉ／Ｏ２０２２、他のコンピュータシステムとのインタフェース部２０２３はバス２０２０に接続されている。
【０１０２】
また、ディジタルカメラ２０２１は、通信ケーブル２００３を介して、画像入力機器との接続Ｉ／Ｏ２０２２に接続している。さらに、ディスプレイ２０１５はディスプレイ制御部２０１４に接続している。さらにまた、キーボードやマウスなどの操作入力部２０１６は、操作入力デバイスの接続Ｉ／Ｏ２０１７に接続している。さらにまた、ハードディスク装置などの外部記憶装置２０１８は、外部記憶装置の接続Ｉ／Ｏ２０１９に接続している。
【０１０３】
第１、第２、第３、第４、第５の実施形態で説明されたマルチレベルロバストディジタル署名の検証を行うための情報処理装置は、コンピュータ実行可能なプログラムとして、あらかじめＲＯＭ２０１３に格納しておき、プログラムをＲＡＭ２０１２上の読み込んだ後に、あるいは、あらかじめ外部記憶装置２０１９に格納されているプログラムをＲＡＭ２０１２上の読み込んだ後に、あるいはネットワークなどの通信手段とのインタフェース部２０２３を通じてプログラムをダウンロードし、ＲＡＭ２０１２上の読み込んだ後に、ＣＰＵ２０１１により該プログラムを実行することにより本実施形態を実施する。
【０１０４】
マルチレベルロバストディジタル署名の検証を行う対象が画像の場合、ディジタルカメラ２０２１、あるいは、ディジタルカメラに代わるディジタルビデオカメラ等の入力機器を用いて入力される。そして、入力画像は、接続I／Ｏ２０２２を通じて、ＲＡＭ２０１２内部に蓄積されるか、あるいは、外部記憶装置２０１８を通じて、接続I／Ｏ２０１９を通じて、ＲＡＭ２０１２内部に蓄積されるか、あるいはネットワークなどの通信手段２０２３を通じて、ＲＡＭ２０１２内部に蓄積される。
【０１０５】
マルチレベルロバストディジタル署名の検証を行う対象が音声信号の場合、図２０におけるディジタルカメラ２０２１に代わるマイク等の音声入力機器を用いて入力される。入力音声は、接続I／Ｏ２０２２を通じて、ＲＡＭ２０１２内部に蓄積されるか、あるいは、外部記憶装置２０１８を通じて、接続I／Ｏ２０１９を通じて、ＲＡＭ２０１２内部に蓄積されるか、あるいはネットワークなどの通信手段２０２３を通じて、ＲＡＭ２０１２内部に蓄積される。
【０１０６】
マルチレベルロバストディジタル署名の検証を行う対象が動画像データの場合、図２０におけるディジタルカメラ２０２１に代わるディジタルビデオカメラ等の入力機器を用いて入力される。入力された動画像は、接続I／Ｏ２０２２を通じて、ＲＡＭ２０１２内部に蓄積されるか、あるいは、外部記憶装置２０１８から接続I／Ｏ２０１９を通じて、ＲＡＭ２０１２内部に蓄積されるか、あるいはネットワークなどの通信手段２０２３を通じて、ＲＡＭ２０１２内部に蓄積される。尚、マルチレベルロバストディジタル署名の検証は、キーボード＆マウス２０１６あるいは、ネットワークなどの通信手段２０２３からの入力を通じて制御される。
【０１０７】
本実施形態による情報処理装置においてマルチレベルロバストディジタル署名の生成・付加は、ディジタルカメラ・ディジタルビデオカメラ２０２１内部で、専用のハードウェア回路を用いてディジタルデータの撮影直後に行ってもよい。
または、ディジタルカメラ・ディジタルビデオカメラ２０２１内部の図２０と類似の構成を持つコンピュータでマルチレベルロバストディジタル署名の生成・付加を行ってもよい。
尚、本実施形態は、複数の機器（例えば、ホストコンピュータ、インタフェース機器、リーダ、プリンタ等）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置等）に適用してもよい。
【０１０８】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本実施形態を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０９】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本実施形態を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【０１１０】
本実施形態によれば、ディジタルデータから、複数の異なる特徴量を算出し、前記特徴量からディジタル署名を生成し、前記ディジタルデータを格納するファイルの所定位置に前記ディジタル署名データを付加し、ディジタルデータの内容が本質的に変化しない加工編集には、原本性を証明することを可能にし、ディジタル署名が付加されたディジタルファイルの利便性を高める。
【０１１１】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【０１１２】
【発明の効果】
以上説明したように、本発明によれば、ディジタルデータから、複数の異なる特徴量を算出し、前記特徴量からディジタル署名を生成する。また、前記ディジタルデータを格納するファイルの所定位置に前記ディジタル署名データを付加する。これにより、ディジタルデータの内容が本質的に変化しない加工編集には、原本性を証明することが可能になり、ディジタル署名が付加されたディジタルファイルの利便性を高めることができる。
【図面の簡単な説明】
【図１】ディジタル署名生成手段の内部処理を表すブロック図である。
【図２】ディジタル署名検証装置の内部処理を表すブロック図である。
【図３】ディジタルデータの一例を示す画像データを示す図である。
【図４】ロバストディジタル署名生成手段の内部処理を表すブロック図である。
【図５】ロバストディジタル署名付加装置の内部処理を表すブロック図である。
【図６】ロバストディジタル署名検証装置の内部処理を表すブロック図である。
【図７】マルチレベルロバストディジタル署名付加装置の内部処理を表すブロック図である。
【図８】マルチレベルロバストディジタル署名生成手段の内部処理を表すブロック図である。
【図９】マルチレベルロバストディジタル署名検証装置の内部処理を表すブロック図である。
【図１０】図９の信頼度表示手段の表示結果の一例を示した図である。
【図１１】ＪＰＥＧ２０００の画像圧縮符号化・伸張復号化の内部処理を示すブロック図である。
【図１２】離散ウェーブレット変換の結果を表す図である。
【図１３】図１１の量子化部で用いる量子化テーブルの一例を示した図である。
【図１４】ＪＰＥＧ２０００の空間的スケーラビリティを表す図である。
【図１５】ＪＰＥＧの画像圧縮符号化・伸張復号化の内部処理を示すブロック図である。
【図１６】図１６の量子化部で用いる量子化テーブルの一例を示した図である。
【図１７】第３の実施形態における特徴量算出手段の内部構成を示すブロック図である。
【図１８】第３の実施形態における特徴量算出手段の処理を説明するための図である。
【図１９】第４の実施形態における画像編集ソフトウェアの処理を説明するためのフローチャートである。
【図２０】コンピュータの内部構成を示す図である。
【図２１】ＪＰＥＧ２０００における空間スケーラブル／ＲＯＩなしの符号列の構成を表した概略図である。
【符号の説明】
４００  ロバストディジタル署名生成手段
４０１  特徴量算出手段
４０２  ディジタル署名生成手段
８００  マルチレベルロバストディジタル署名生成手段
８０１  ディジタル署名生成手段
８０２  第１ロバストディジタル署名生成手段
８０３  第２ロバストディジタル署名生成手段
【図１】
0004454908.tif 000002
【図２】
0004454908.tif 000003
【図３】
0004454908.tif 000004
【図４】
0004454908.tif 000005
【図５】
0004454908.tif 000006
【図６】
0004454908.tif 000007
【図７】
0004454908.tif 000008
【図８】
0004454908.tif 000009
【図９】
0004454908.tif 000010
【図１０】
0004454908.tif 000011
【図１１】
0004454908.tif 000012
【図１２】
0004454908.tif 000013
【図１３】
0004454908.tif 000014
【図１４】
0004454908.tif 000015
【図１５】
0004454908.tif 000016
【図１６】
0004454908.tif 000017
【図１７】
0004454908.tif 000018
【図１８】
0004454908.tif 000019
【図１９】
0004454908.tif 000020
【図２０】
0004454908.tif 000021
【図２１】
0004454908.tif 000022