JP2002044429A - 電子文書改竄検出方法及びその装置 - Google Patents

電子文書改竄検出方法及びその装置

Info

Publication number
JP2002044429A
JP2002044429A JP2000220017A JP2000220017A JP2002044429A JP 2002044429 A JP2002044429 A JP 2002044429A JP 2000220017 A JP2000220017 A JP 2000220017A JP 2000220017 A JP2000220017 A JP 2000220017A JP 2002044429 A JP2002044429 A JP 2002044429A
Authority
JP
Japan
Prior art keywords
electronic document
block
value
image data
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000220017A
Other languages
English (en)
Other versions
JP4220661B2 (ja
Inventor
Tsukane Ono
束 小野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kowa Co Ltd
Original Assignee
Kowa Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kowa Co Ltd filed Critical Kowa Co Ltd
Priority to JP2000220017A priority Critical patent/JP4220661B2/ja
Publication of JP2002044429A publication Critical patent/JP2002044429A/ja
Application granted granted Critical
Publication of JP4220661B2 publication Critical patent/JP4220661B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Editing Of Facsimile Originals (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Storage Device Security (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】 電子文書が改竄されても、その改竄された部
分を検出することを可能にする。 【解決手段】 ビットプレーン抽出部41は対象となる
多値画像データをハードディスク装置36から読み出し
(S102)、その多値画像データからビットプレーン
のデータを抽出する(S104)。パリティ演算部43
は分割した複数のブロックのうち、或るブロックを選択
し、そのブロックに含まれるN×N個の画素のビット値
を用いて、そのブロックのパリティ値を演算により求め
る(S108)。条件判定部44は演算により求めたそ
のブロックのパリティ値がパリティ制御値と一致してい
るか否かを判定する(S110)。ビット値変更部45
はパリティ値がパリティ制御値と一致していないブロッ
クについて、そのブロック内の4つの画素のうち、何れ
か1つの画素のビット値を変更する(S112)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、電子文書に対する
改竄を検出するための技術に関するものである。
【0002】
【従来の技術】一般に、電子化された文書は改竄されて
も、その痕跡が残りにくいため、電子文書を利用する場
合には、そのデータの信憑性に対する保証が不可欠であ
る。
【0003】そこで、従来では、データの信憑性を保証
するために、デジタル署名や、ハッシュ関数を用いたメ
ッセージダイジェストなどの技術が提案されている。
【0004】
【発明が解決しようとする課題】しかしながら、このよ
うな従来の技術では、電子文書が改竄された場合に、改
竄されたこと自体は検出することが可能であるが、電子
文書のどの部分が改竄されたかについては検出すること
は困難であった。
【0005】従って、本発明の目的は、上記した従来技
術の問題点を解決し、電子文書が改竄されても、その改
竄された部分を検出することが可能な電子文書改竄検出
方法を提供することにある。
【0006】
【課題を解決するための手段およびその作用・効果】上
記した目的の少なくとも一部を達成するために、本発明
の電子文書改竄検出前処理方法は、電子文書に対する改
竄を検出するための前処理を行う電子文書改竄検出前処
理方法であって、(a)前記電子文書を表す多値画像デ
ータに含まれるデータを、1以上の画素を単位とする複
数のブロックに分割する工程と、(b)分割した各ブロ
ック毎に、そのブロックに含まれる画素の値を用いて所
定の演算を行う工程と、(c)各ブロック毎に、前記演
算結果が所定の条件を満たしているか否かを判定する工
程と、(d)前記演算結果が前記所定の条件を満たして
いないブロックについては、演算結果が前記所定の条件
を満たし得るように、そのブロックに含まれる少なくと
も1つの画素の値を変更する工程と、を備えることを要
旨とする。
【0007】このような本発明の電子文書改竄検出前処
理方法では、電子文書を表す多値画像データに含まれる
データを、1以上の画素を単位とする複数のブロックに
分割し、その分割した各ブロック毎に、そのブロックに
含まれる画素の値を用いて所定の演算を行う。そして、
各ブロック毎に、その演算結果が所定の条件を満たして
いるか否かを判定し、その演算結果が上記の所定の条件
を満たしていないブロックについては、演算結果がその
条件を満たすように、そのブロックに含まれる少なくと
も1つの画素の値を変更する。この結果、すべてのブロ
ックの演算結果は所定の条件を満たすことになる。
【0008】しかしながら、このような前処理の施され
た多値画像データについて、その多値画像データの表す
電子文書の内容が改竄されると、その改竄部分に該当す
るブロックは、その改竄によって演算結果が所定の条件
を満たさなくなる。従って、この演算結果が所定の条件
を満たさないブロックを検出することによって、改竄部
分を特定することができる。
【0009】よって、本発明によれば、電子文書を表す
多値画像データに対して、上記のような前処理を施すこ
とにより、その後、その多値画像データがコンピュータ
ネットワークなどを介して転送される途中で、そのデー
タの表す電子文書の内容が改竄されても、改竄の有無だ
けでなく、改竄された部分も容易に検出することができ
る。従って、電子文書を利用する場合のデータの信憑性
を保証することができ、改竄などの不正行為の未然防止
につなげることができる。
【0010】本発明の電子文書改竄検出前処理方法にお
いて、前記多値画像データに含まれる前記データは、画
素における或るビットの値を表すビットプレーンのデー
タであることが好ましい。
【0011】このようなビットプレーンのデータを用い
ることによって、各ブロック毎に行う演算は簡単で済
む。
【0012】本発明の電子文書改竄検出前処理方法にお
いて、前記ビットプレーンのデータは、比較的下位のビ
ットの値を表すビットプレーンのデータであることが好
ましい。
【0013】このように、比較的下位のビットプレーン
のデータを用いることにより、工程(d)で画素の値を
変更する場合でも、下位ビットの値の変更となるため、
画素の濃度値に与える影響が少なくて済む。
【0014】本発明の電子文書改竄検出前処理方法にお
いて、前記多値画像データに含まれる前記データは、画
素における複数のビットの値をそれぞれ表す複数のビッ
トプレーンを統合したデータであることが好ましい。
【0015】本発明の電子文書改竄検出前処理方法にお
いて、前記所定の演算は、前記ブロックに含まれる画素
のビットの値の和が奇数であるか偶数であるかを求める
演算であって、前記所定の条件は、前記演算結果が偶数
であることが好ましい。
【0016】このように、いわゆる偶数パリティとする
場合には、電子文書において、情報を持たないビット値
「0」の連続した領域がかなりの部分を占める場合で
も、ノイズの増大を防ぐことが可能となる。
【0017】本発明の電子文書改竄検出前処理方法にお
いて、前記所定の演算は、前記ブロックに含まれる画素
のビットの値の和が奇数であるか偶数であるかを求める
演算であって、前記所定の条件は、前記演算結果が偶数
であってもよい。
【0018】本発明の電子文書改竄検出前処理方法にお
いて、(e)前記工程(a)〜(d)の各処理を施した
前記多値画像データに、前記ブロックに関する情報を電
子透かしで埋め込む工程をさらに備えることが好まし
い。
【0019】また、本発明の電子文書改竄検出前処理方
法において、(e)前記ブロックに関する情報を暗号化
すると共に、該情報を、前記工程(a)〜(d)の各処
理を施した前記多値画像データに付加する工程をさらに
備えることが好ましい。
【0020】さらにまた、本発明の電子文書改竄検出前
処理方法において、(e)前記ブロックに関する情報を
暗号化すると共に、該情報を、前記工程(a)〜(d)
の各処理を施した前記多値画像データに電子透かしで埋
め込む工程をさらに備えることが好ましい。
【0021】このように、多値画像データに対し、ブロ
ックに関する情報を電子透かしで埋め込んだり、暗号化
して付加したり、暗号化した上で電子透かしで埋め込ん
だりすることにより、不正な意図を有する者が、そのブ
ロック情報を取得するのが困難となり、電子文書に対
し、ブロック構造を考慮した巧妙な改竄を行うことは不
可能となる。また、電子文書の内容が改竄された場合で
も、ブロック情報まで破壊されるのを回避することがで
きる。また、暗号や電子透かしの存在によって、その電
子文書に対するデータの信憑性をさらに保証することが
できる。
【0022】本発明の電子文書改竄検出方法は、電子文
書に対する改竄を検出する電子文書改竄検出方法であっ
て、(a)前記電子文書を表す多値画像データに含まれ
るデータを、1以上の画素を単位とする複数のブロック
に分割する工程と、(b)分割した各ブロック毎に、そ
のブロックに含まれる画素の値を用いて所定の演算を行
う工程と、(c)各ブロック毎に、前記演算結果が所定
の条件を満たしているか否かを判定する工程と、(d)
前記演算結果が前記所定の条件を満たしていないブロッ
クについて、前記電子文書における該ブロックに関わる
部分が改竄された部分であると特定する工程と、を備え
ることを要旨とする。
【0023】このような本発明の電子文書改竄検出前処
理方法では、電子文書を表す多値画像データに含まれる
データを、1以上の画素を単位とする複数のブロックに
分割し、その分割した各ブロック毎に、そのブロックに
含まれる画素の値を用いて所定の演算を行い、各ブロッ
ク毎に、その演算結果が所定の条件を満たしているか否
かを判定する。このとき、上記多値画像データに、前述
したような前処理が施されている場合には、すべてのブ
ロックの演算結果は所定の条件を満たすことになる。し
かしながら、上記多値画像データの表す電子文書の内容
が改竄されているとすると、その改竄部分に該当するブ
ロックは、その改竄によって演算結果が所定の条件を満
たさない。そこで、上記した判定の結果、演算結果が所
定の条件を満たしていないブロックについては、電子文
書におけるそのブロックに関わる部分が改竄された部分
であると特定する。
【0024】よって、前述したような前処理の施された
多値画像データについて、そのデータの表す電子文書の
内容が改竄されても、本発明の電子文書改竄検出方法を
用いることにより、改竄の有無だけでなく、改竄された
部分も容易に検出することができる。従って、電子文書
を利用する場合のデータの信憑性を保証することがで
き、改竄などの不正行為の未然防止につなげることがで
きる。
【0025】本発明の電子文書改竄検出方法において、
(e)前記多値画像データに、前記ブロックに関する情
報が電子透かしで埋め込まれている場合に、前記多値画
像データから前記情報を取り出す工程をさらに備えるこ
とが好ましい。
【0026】本発明の電子文書改竄検出方法において、
(e)前記多値画像データに、前記ブロックに関する情
報が暗号化されて付加されている場合に、前記多値画像
データから前記情報を取り出して復号化する工程をさら
に備えることが好ましい。
【0027】本発明の電子文書改竄検出方法において、
(e)前記多値画像データに、前記ブロックに関する情
報が暗号化されて電子透かしで埋め込まれている場合
に、前記多値画像データから前記情報を取り出して復号
化する工程をさらに備えることが好ましい。
【0028】このような工程を備えることによって、ブ
ロックに関する情報を例え知らなくても、多値画像デー
タからその情報を取得することができる。
【0029】なお、本発明は、上記した電子文書改竄検
出前処理方法や電子文書改竄検出方法などの方法発明の
態様に限ることなく、電子文書改竄検出前処理装置や電
子文書改竄検出装置などの装置の発明としての態様や、
それら方法や装置を構築するためのコンピュータプログ
ラムを記録した記録媒体としての態様で実現することも
可能である。また、さらには、上記コンピュータプログ
ラムを含み搬送波内に具現化されたデータ信号や、上記
コンピュータプログラム自体など、種々の態様で実現す
ることも可能である。
【0030】
【発明の実施の形態】以下、本発明の実施の形態を実施
例に基づいて説明する。 A.装置の全体構成 はじめに、本発明の一実施例としての電子文書改竄検出
装置10の構成について図1を用いて説明する。図1
は、本実施例において電子文書改竄検出前処理及び電子
文書改竄検出処理を実行する電子文書改竄検出装置10
の構成を示すブロック図である。この電子文書改竄検出
装置10は、CPU22と、RAM24と、ROM26
と、キーボード30と、マウス32と、CRTなどから
成る表示装置34と、ハードディスク装置36と、ネッ
トワークカードやモデムなどから成る通信装置38と、
画像を読み取るスキャナ39と、これらの各要素を接続
するバス40と、を備えるコンピュータである。なお、
図1では各種のインターフェイス回路は省略されてい
る。通信装置38は、図示しない通信回線を介してコン
ピュータネットワークに接続されている。コンピュータ
ネットワークの図示しないサーバは、通信回線を介して
コンピュータプログラムを電子文書改竄検出装置10に
供給するプログラム供給装置としての機能を有する。
【0031】RAM24には、対象となる電子文書を表
す多値画像データからビットプレーンを抽出するビット
プレーン抽出部41と、抽出したビットプレーンのデー
タを、複数のブロックに分割するブロック分割部42
と、分割した各ブロック毎に、そのブロックに含まれる
画素のビット値を用いて演算を行い、そのブロックのパ
リティ値を求めるパリティ演算部43と、各ブロック毎
に、求めたパリティ値が予め設定されたパリティ制御値
と一致しているか否かを判定する条件判定部44と、改
竄検出前処理において、パリティ値がパリティ制御値と
一致していないブロックについて、そのブロックに含ま
れる画素のビット値を変更するビット値変更部45と、
改竄検出処理において、パリティ値がパリティ制御値と
一致していないブロックについて、電子文書におけるそ
のブロックに関わる部分が改竄されていることを検出す
る改竄検出部46の、各機能を実現するためのコンピュ
ータプログラムが格納されている。ビットプレーン抽出
部41、ブロック分割部42、パリティ演算部43、条
件判定部44、ビット値変更部45、及び改竄検出部4
6の機能については後で詳しく説明する。
【0032】これらの各部41〜46の機能を実現する
コンピュータプログラムは、フレキシブルディスクやC
D−ROM等の、コンピュータ読み取り可能な記録媒体
に記録された形態で提供される。コンピュータは、その
記録媒体からコンピュータプログラムを読み取って内部
記憶装置または外部記憶装置に転送する。あるいは、通
信経路を介してコンピュータにコンピュータプログラム
を供給するようにしてもよい。コンピュータプログラム
の機能を実現する時には、内部記憶装置に格納されたコ
ンピュータプログラムがコンピュータのマイクロプロセ
ッサによって実行される。また、記録媒体に記録された
コンピュータプログラムをコンピュータが読み取って直
接実行するようにしてもよい。
【0033】この明細書において、コンピュータとは、
ハードウェア装置とオペレーションシステムとを含む概
念であり、オペレーションシステムの制御の下で動作す
るハードウェア装置を意味している。また、オペレーシ
ョンシステムが不要でアプリケーションプログラム単独
またはファームウェア単独でハードウェア装置を動作さ
せるような場合には、そのハードウェア装置自体がコン
ピュータに相当する。ハードウェア装置は、CPU等の
マイクロプロセッサと、記録媒体に記録されたコンピュ
ータプログラムを読み取るための手段とを少なくとも備
えている。例えば、ディジタルカメラやスキャナなどの
電子機器に、CPUやROMなどが組み込まれていて、
これら電子機器がコンピュータとしての機能を有する場
合も、これら電子機器はコンピュータの概念に当然に含
まれる。コンピュータプログラムは、このようなコンピ
ュータに、上述の各手段の機能を実現させるプログラム
コードを含んでいる。なお、上述の機能の一部は、アプ
リケーションプログラムでなく、オペレーションシステ
ムによって実現されていても良い。更に、電子透かしの
埋め込み処理や復号処理を行なうプログラムは、画像処
理を行なうプログラムに対して、プラグインの形式で付
加されるものとしてもよい。
【0034】なお、この発明における「記録媒体」とし
ては、フレキシブルディスクやCD−ROM、光磁気デ
ィスク、ICカード、ROMカートリッジ、パンチカー
ド、バーコードなどの符号が印刷された印刷物、コンピ
ュータの内部記憶装置(RAMやROMなどのメモリ)
および外部記憶装置等の、コンピュータが読取り可能な
種々の媒体を利用することができる。
【0035】B.電子文書改竄検出前処理 図2は図1のビットプレーン抽出部41、ブロック分割
部42、パリティ演算部43、条件判定部44、及びビ
ット値変更部45が行う電子文書改竄検出前処理の手順
を示すフローチャートである。この処理は、ビットプレ
ーン抽出部41、ブロック分割部42、パリティ演算部
43、条件判定部44、及びビット値変更部45の処理
として実現されている。
【0036】この処理が行われる前提として、ハードデ
ィスク装置36内には、この処理の対象となる電子文書
を表す多値画像データが格納されている。このような多
値画像データは、例えば、印刷文書をスキャナ39によ
って読み取ったり、あるいは、ワープロソフトなどによ
り表示装置34の画面上に文書を表示した際に、その表
示データを抽出したりすることにより、得ることができ
る。
【0037】本実施例では、このように、一般的に2値
画像として扱われる電子文書のデータを2ビット以上を
有する多値画像のデータに変換することで、コンテンツ
に冗長性を持たせ、そこに改竄検出の工夫を施すもので
ある。
【0038】そこで、図2に示すように、改竄検出の前
処理が起動されると、まず、ビットプレーン抽出部41
は、対象となる多値画像データをハードディスク装置3
6から読み出し(ステップS102)、その多値画像デ
ータからビットプレーンのデータを抽出する(ステップ
S104)。
【0039】ここで、読み出した多値画像データの表す
多値画像をAとすると、その多値画像Aを構成する各画
素の値a(x,y)は、式(1)によって表される。
【0040】
【数1】
【0041】但し、dは多値画像データのビット数であ
り、nは多値画像Aのx方向の画素数であり、mは同じ
く多値画像Aのy方向の画素数である。また、a
i(x,y)(但し、0≦i≦d−1)は、画素値a
(x,y)を2進数で表現したときに、2iの重みを持
つビット値である。
【0042】また、このビット値ai(x,y)から成
る平面Aiをビットプレーンと称し、式(2)によって
表される。
【0043】
【数2】
【0044】例えば、読み出した多値画像データのビッ
ト数dが4であるとすると、下位ビットから順番に4枚
のビットプレーンA0,A1,A2,A3が成立することに
なる。
【0045】図3は4ビットの多値画像データから4枚
のビットプレーンが成立する様子を示す説明図である。
図3において、(a)は4ビットの多値画像データで表
される多値画像Aであり、(b)はその多値画像Aから
抽出される4枚のビットプレーンA0,A1,A2,A3
ある。なお、図3では、図面を見やすくするために、多
値画像Aを構成する画素はa(0,0)〜a(2,2)
の9つの画素しか示していないが、実際には、x方向に
n個、y方向にm個の合計n×m個の画素が存在してい
る。
【0046】図3(a)において、例えば、(0,0)
の位置にある画素の値a(0,0)は、「6」であるの
で、式(1)に従うと、次のように表される。
【0047】a(0,0)=6=0・23+1・22+1
・21+0・20 従って、画素値a(0,0)の各ビット値は、上位ビッ
トから順番に、a3(0,0)=0,a2(0,0)=
1,a1(0,0)=1,a0(0,0)=0となる。
【0048】よって、図3(b)に示すように、ビット
プレーンA3における(0,0)の値はビット値a
3(0,0)=0となり、ビットプレーンA2における
(0,0)の値はa2(0,0)=1となり、ビットプ
レーンA1における(0,0)の値はa1(0,0)=1
となり、ビットプレーンA0における(0,0)の値は
0(0,0)=0となる。
【0049】以上、(0,0)の位置にある画素を代表
例として説明したが、他の位置(x,y)にある画素に
ついても同様に、各ビット値a3(x,y),a2(x,
y),a1(x,y),a0(x,y)がそれぞれ得ら
れ、各ビットプレーンA3,A2,A2,A0における
(x,y)の値を構成する。
【0050】以上のようにして、ビットプレーン抽出部
41は、読み出した多値画像データから各ビットプレー
ンのデータを抽出する。
【0051】次に、ブロック分割部42は、抽出した4
つのビットプレーンのデータのうち、或るビットプレー
ンのデータを複数のブロックに分割する(ステップS1
06)。このとき、1つのブロックは、図4に示すよう
に、x方向にN個、y方向にN個の合計N×N個の画素
から成るブロックとし、各ブロックは、1行毎に、x方
向に画素N/2個分ずれるように分割される。図4はビ
ットプレーンを複数のブロックに分割したときのブロッ
ク分割構造を示す説明図である。図4において、B
ij(j=0〜7)は、ビットプレーンAiの分割された
ブロックを示している。
【0052】図5は多値画像Aから4つのビットプレー
ンA0〜A3を抽出し、さらに複数のブロックに分割した
様子を示す説明図である。図5において、(a)は多値
画像Aを構成している複数の画素を示し、(b)は4つ
のビットプレーンA0〜A3が複数のブロックに分割され
ている様子を示している。
【0053】図5(b)に示すように、例えば、N=2
であるとすると、1つのブロックは、2×2の合計4個
の画素から成るブロックとなり、1行毎にx方向に1画
素ずつずれることになる。
【0054】続いて、パリティ演算部43は、分割した
複数のブロックのうち、或るブロックを選択し、そのブ
ロックに含まれるN×N個の画素のビット値を用いて、
そのブロックのパリティ値を下記の演算により求める
(ステップS108)。
【0055】即ち、対象となるブロックBijとし、その
ブロックBijの基点となる左上隅の位置を(xj,yj
とすると、そのブロックBijのパリティ値Pb
ij(xj,yj)は、式(3)により求められる。
【0056】
【数3】
【0057】例えば、今、ステップS106で選択した
ビットプレーンが最上位ビットに対応するA3であり、
そのビットプレーンA3における各画素のビット値が、
図6(a)に示す如くであるとする。
【0058】図6はビットプレーンA3の各ブロックに
対して行われる処理の手順を示す説明図である。
【0059】対象となるブロックがB30である場合、図
6(a)に示すように、4つの画素のビット値は、左
上,右上,左下,右下の順に、(1,0,1,1)であ
るため、そのブロックB30のパリティ値Pb30(x0
0)は、式(3)に従うと、次のように表される。
【0060】Pb30(x0,y0)=(1+0+1+1)
mod2=1
【0061】また、対象となるブロックがB31である場
合、図6(a)に示すように、4つの画素のビット値
は、(0,0,0,0)であるため、そのブロックB31
のパリティ値Pb31(x1,y1)は、式(3)に従う
と、次のように表される。
【0062】Pb31(x1,y1)=(0+0+0+0)
mod2=0
【0063】同様に、残りの6つのブロックB32〜B37
のパリティ値Pb32(x2,y2)〜Pb37(x7,y7
も、次のように表される。
【0064】Pb32(x2,y2)=(0+1+0+1)
mod2=0 Pb33(x3,y3)=(1+1+0+1)mod2=1 Pb34(x4,y4)=(1+0+1+0)mod2=0 Pb35(x5,y5)=(0+0+0+0)mod2=0 Pb36(x6,y6)=(0+1+0+0)mod2=1 Pb37(x7,y7)=(1+0+1+1)mod2=1
【0065】以上の結果、各ブロックのパリティ値は、
図6(b)に示すごとくになる。
【0066】次に、条件判定部44は、演算により求め
たそのブロックのパリティ値が、予め設定されたパリテ
ィ制御値と一致しているか否かを判定する(ステップS
110)。パリティ制御値Cは、「0」か「1」の何れ
かを設定することができる。本実施例では、背景色を低
レベルの濃度値、改竄検出の対象部分を高レベルの濃度
値として、パリティ検出を行うために、パリティ制御値
をC=0に設定する。このように、パリティ制御値をC
=0に設定することにより、ノイズの増大を防ぐことが
可能となる。なぜなら、電子文書では、一般に、ビット
プレーン上において、情報を持たないビット値「0」の
連続した領域が、かなりの部分を占めるため、仮に、パ
リティ制御値をC=1に設定すると、その「0」の連続
した領域が、奇数パリティに制御されてしまって(即
ち、1ブロック中の4つの画素のうち、何れかの画素の
ビット値が「0」から「1」に変更されてしまって)、
その「0」の連続した領域の中に、情報を持ったビット
値「1」の点が出現することになり、ノイズが増大する
ように見えるからである。
【0067】但し、本発明は、パリティ制御値をC=0
に限定するものではなく、C=1を採り得ることは言う
までもない。また、パリティ制御値は、ビットプレーン
毎にその設定を変えるようにしても良い。
【0068】さて、図6(b)に示したとおり、ビット
プレーンA3における各ブロックB3 0〜B37のパリティ
値は、(1,0,0,1,0,0,1,1)であるの
で、上記の判定の結果、パリティ値がパリティ制御値C
=0と一致しないのは、B30,B33,B36,B37の4つ
のブロックであり、それ以外のブロックはすべて一致す
る。
【0069】そこで、一致すると判定されたブロックに
ついては、そのまま何も処理を施さないが、一致しない
と判定された上記4つのブロックについては、ビット値
変更部45が、次のような処理を施す。
【0070】即ち、ビット値変更部45は、パリティ値
がパリティ制御値と一致していないブロックについて、
そのブロック内の4つの画素のうち、何れか1つの画素
のビット値を「0」から「1」に、または、「1」から
「0」に変更する(ステップS112)。なお、4つの
画素のうち、ビット値を変更すべき画素としては、電子
文書に記載されている文字におけるエッジの部分に相当
する画素を優先的に選ぶようにする。これは、ビット値
の変更によって生じるノイズの違和感を局限するためで
ある。
【0071】そこで、一致しないと判定された上記4つ
のブロックのうち、例えば、ブロックB30については、
図6(c)に示すように、そのブロック内の4つの画素
のうち、左下の画素のビット値を「1」から「0」に変
更する。すると、そのブロックB30の変更後のパリティ
値Pb30(x0,y0)は、次のように表され、そのパリ
ティ値はパリティ制御値C=0と一致することになる。
【0072】Pb30(x0,y0)=(1+0+0+1)
mod2=0
【0073】なお、図6(c),(d)において、斜体
の数字は、その値が変更されたことを示している。
【0074】そして、残り3つのブロックについても同
様に、ブロックB33については、右下の画素のビット値
を「1」から「0」に、ブロックB36については、右上
の画素のビット値を「1」から「0」に、ブロックB37
については、左下の画素のビット値を「1」から「0」
に、それぞれ変更する。すると、それらB33,B36,B
37の変更後のパリティ値Pb33(x3,y3),Pb
36(x6,y6),Pb37(x7,y7)も、それぞれ、次
のように表され、そのパリティ値は何れもパリティ制御
値C=0と一致することになる。
【0075】Pb33(x3,y3)=(1+1+0+0)
mod2=0 Pb36(x6,y6)=(0+0+0+0)mod2=0 Pb37(x7,y7)=(1+0+1+0)mod2=0
【0076】こうして、選択したビットプレーンA3
おけるすべてのブロックについて処理が終了する(ステ
ップS114)と、すべてのブロックのパリティ値は、
図6(d)に示すように、パリティ制御値C=0と一致
するようになる。
【0077】続いて、次のビットプレーンA2を選択
し、上記したステップS106からS114までの処理
を繰り返す。
【0078】図7はビットプレーンA2の各ブロックに
対して行われる処理の手順を示す説明図である。
【0079】ビットプレーンA2における各画素のビッ
ト値が、図7(a)に示す如くであるとすると、各ブロ
ックB20〜B27のパリティ値Pb20(x0,y0)〜Pb
27(x7,y7)は、次のように表される。
【0080】Pb20(x0,y0)=(1+1+1+1)
mod2=0 Pb21(x1,y1)=(0+0+1+1)mod2=0 Pb22(x2,y2)=(0+1+1+1)mod2=1 Pb23(x3,y3)=(1+1+1+1)mod2=0 Pb24(x4,y4)=(1+1+1+1)mod2=0 Pb25(x5,y5)=(0+0+0+0)mod2=0 Pb26(x6,y6)=(1+1+0+1)mod2=1 Pb27(x7,y7)=(1+1+1+1)mod2=0
【0081】以上の結果、各ブロックのパリティ値は、
図7(b)に示すごとくになる。
【0082】そこで、次に、各ブロックB20〜B27にお
けるパリティ値をパリティ制御値C=0と比較すると、
パリティ値は(0,0,1,0,0,0,1,0)であ
るので、パリティ値がパリティ制御値と一致しないの
は、B22,B26の2つのブロックである。
【0083】続いて、一致しないと判定された2つのブ
ロックB22,B26のうち、例えば、ブロックB22につい
ては、図7(c)に示すように、右下の画素のビット値
を「1」から「0」に、ブロックB26についても、右下
の画素のビット値を「1」から「0」に、それぞれ変更
する。すると、それらB22,B36の変更後のパリティ値
Pb22(x2,y2),Pb26(x6,y6)は、それぞ
れ、次のように表され、そのパリティ値は何れもパリテ
ィ制御値C=0と一致することになる。
【0084】Pb22(x2,y2)=(0+1+1+0)
mod2=0 Pb26(x6,y6)=(1+1+0+0)mod2=0
【0085】こうして、選択したビットプレーンA2
おけるすべてのブロックについて処理が終了すると、す
べてのブロックのパリティ値は、図7(d)に示すよう
に、パリティ制御値C=0と一致するようになる。
【0086】同様に、残りの2つのビットプレーン
1,A0についても、それぞれ、上記したステップS1
06からS114までの処理を繰り返す。すると、ビッ
トプレーンA1,A0におけるすべてのブロックについ
て、上記処理が終了した段階で、すべてのブロックのパ
リティ値はパリティ制御値C=0と一致するようにな
る。
【0087】以上のようにして、抽出した4つのすべて
のビットプレーンについて、処理が終了したら(ステッ
プS116)、次に、ビットプレーン抽出部41は、ス
テップS104の処理とは逆の処理を行って、4つのす
べてのビットプレーンのデータを合成して、多値画像デ
ータを復元する(ステップS118)。
【0088】続いて、ブロック分割部42が、ステップ
106で分割したブロックに関する情報を暗号化した上
で、電子透かしによって、復元した多値画像データに埋
め込む(ステップS120)。ブロックに関する情報と
は、具体的には、ブロックのサイズ(即ち、x方向にN
画素分、y方向にN画素分の大きさ)や、各ブロックの
1行毎のずれ量(即ち、x方向に画素N/2個分のず
れ)などである。
【0089】以上によって、図2に示した一連の改竄検
出前処理は終了する。
【0090】このようにして改竄検出前処理の施された
多値画像データは、その後、通信装置38からコンピュ
ータネットワークを介して、その電子文書を必要とする
利用者に送信される。
【0091】C.電子文書改竄検出処理 一方、受信側においても、図1に示した装置と同様の装
置が用意されており、上記のようにして送信された多値
画像データは、コンピュータネットワークを介して通信
装置38で受信され、ハードディスク装置36に格納さ
れる。
【0092】このように、多値画像データが送信側から
受信側にコンピュータネットワークを介して転送される
場合、そのデータは様々なネットワークを通過すること
になるため、その転送途中で、不正な意図を有する者に
よって、そのデータの表す電子文書の内容が改竄される
場合があり得る。そこで、受信側では、図1に示した装
置によって、受信しハードディスク装置36に格納され
た多値画像データに対し、下記に述べるような改竄検出
処理を施す。
【0093】図8は図1のビットプレーン抽出部41、
ブロック分割部42、パリティ演算部43、条件判定部
44、及び改竄検出部46が行う電子文書改竄検出処理
の手順を示すフローチャートである。この処理は、ビッ
トプレーン抽出部41、ブロック分割部42、パリティ
演算部43、条件判定部44、及び改竄検出部46の処
理として実現されている。
【0094】そこで、図8に示すように、この改竄検出
処理が起動されると、まず、ブロック分割部42が、対
象となる多値画像データをハードディスク装置36から
読み出し(ステップS202)、その読み出した多値画
像データから、埋め込まれている電子透かしを取り出
し、そこに記載されている暗号化された情報を復号化し
て、ブロックに関する情報を取得する(ステップS20
4)。ブロック情報としては、前述したとおり、ブロッ
クのサイズ(即ち、x方向にN画素分、y方向にN画素
分の大きさ)や、各ブロックの1行毎のずれ量(即ち、
x方向に画素N/2個分のずれ)などが取得される。
【0095】次に、ビットプレーン抽出部41は、上記
した多値画像データからビットプレーンのデータを抽出
し(ステップS206)、続いて、ブロック分割部42
が、抽出した4つのビットプレーンのデータのうち、或
るビットプレーンのデータを選択し、ステップS204
で取得したブロック情報に基づいて、その選択したビッ
トプレーンを複数のブロックに分割する(ステップS2
08)。
【0096】そして、パリティ演算部43は、分割した
複数のブロックのうち、或るブロックを選択し、そのブ
ロックに含まれるN×N個の画素のビット値を用いて、
そのブロックのパリティ値を前述の式(3)に示した演
算により求める(ステップS210)。次に、条件判定
部44は、演算により求めたそのブロックのパリティ値
が、予め設定されたパリティ制御値と一致しているか否
かを判定する(ステップS212)。なお、本実施例で
は、前述したとおり、パリティ制御値はC=0に設定さ
れている。
【0097】判定の結果、一致すると判定されたブロッ
クについては、そのまま何も処理しないが、一致しない
と判定されたブロックについては、改竄検出部46が、
そのブロックを改竄された部分であると特定し、別に用
意された改竄部分表示データにおいて、そのブロックに
×印を付する(ステップS214)。
【0098】例えば、今、ステップS208で選択した
ビットプレーンが最上位ビットに対応するA3であり、
そのビットプレーンA3における各画素のビット値と、
分割した各ブロックが、図9(a)に示す如くであると
する。
【0099】図9はビットプレーンA3の各ブロックに
対して行われる処理の手順を示す説明図である。
【0100】図9(a)において、斜線ハッチで示され
た画素は、転送途中で、不正な意図を有する者によっ
て、改竄された画素である。
【0101】そこで、各ブロックB30〜B37のパリティ
値Pb30(x0,y0)〜Pb37(x 7,y7)を、式
(3)に従って求めると、次のように表される。
【0102】Pb30(x0,y0)=(1+0+0+1)
mod2=0 Pb31(x1,y1)=(0+0+0+0)mod2=0 Pb32(x2,y2)=(0+1+1+0)mod2=0 Pb33(x3,y3)=(1+1+1+1)mod2=1 Pb34(x4,y4)=(1+0+1+0)mod2=0 Pb35(x5,y5)=(0+1+0+0)mod2=1 Pb36(x6,y6)=(1+0+0+0)mod2=1 Pb37(x7,y7)=(1+0+0+1)mod2=0
【0103】以上の結果、各ブロックのパリティ値は、
図9(b)に示すごとくになる。そこで、さらに、各ブ
ロックのパリティ値をパリティ制御値C=0と比較し
て、一致しているか否かを判定すると、パリティ値がパ
リティ制御値C=0と一致していないのは、B33
35,B36の3つのブロックであることがわかる。
【0104】従って、これら一致していない3つのブロ
ックについては、改竄された画素が含まれており、改竄
された部分であるとして、図9(c)に示すように、別
に用意された改竄部分表示データにおいて、そのブロッ
クの部分に×印を付する。
【0105】こうして、選択したビットプレーンA3
おけるすべてのブロックについて処理が終了する(ステ
ップS216)と、続いて、次のビットプレーンA2
選択し、上記したステップS208からS216までの
処理を繰り返す。
【0106】図10はビットプレーンA2の各ブロック
に対して行われる処理の手順を示す説明図である。
【0107】ビットプレーンA2における各画素のビッ
ト値が、図10(a)に示す如くであるとすると、各ブ
ロックB20〜B27のパリティ値Pb20(x0,y0)〜P
27(x7,y7)は、次のように表される。
【0108】Pb20(x0,y0)=(1+1+1+1)
mod2=0 Pb21(x1,y1)=(0+0+1+1)mod2=0 Pb22(x2,y2)=(0+1+1+0)mod2=0 Pb23(x3,y3)=(1+1+1+1)mod2=0 Pb24(x4,y4)=(1+1+1+0)mod2=1 Pb25(x5,y5)=(0+0+0+0)mod2=0 Pb26(x6,y6)=(1+1+0+1)mod2=1 Pb27(x7,y7)=(1+1+0+1)mod2=1
【0109】以上の結果、各ブロックのパリティ値は、
図10(b)に示すごとくになる。そこで、さらに、各
ブロックのパリティ値をパリティ制御値C=0と比較し
て、一致しているか否かを判定すると、パリティ値がパ
リティ制御値C=0と一致していないのは、B24
26,B27の3つのブロックであることがわかる。
【0110】従って、これら一致していない3つのブロ
ックについては、改竄された画素が含まれており、改竄
された部分であるとして、図10(c)に示すように、
別に用意された改竄部分表示データにおいて、そのブロ
ックの部分に×印を付する。
【0111】同様に、残りの2つのビットプレーン
1,A0についても、それぞれ、上記したステップS2
08からS216までの処理を繰り返す。その結果、ビ
ットプレーンA1,A0についても、同様の改竄部分表示
データを得ることができる。
【0112】以上のようにして、抽出した4つのすべて
のビットプレーンについて、処理が終了したら(ステッ
プS218)、次に、改竄検出部46は、4つのビット
プレーンについてそれぞれ得られた改竄部分表示データ
に基づいて、各ビットプレーン毎に、改竄部分表示画面
(図示せず)を表示装置34に表示させる(ステップS
220)。以上により、図8に示した一連の改竄検出処
理は終了する。
【0113】D.改竄検出の実験結果 次に、実験を行って、上記した電子文書改竄検出前処理
や電子文書改竄検出処理により、改竄された電子文書に
ついて、その改竄部分を検出できるかどうかを、実際に
検討した。
【0114】D−1.実験1 実験1では、まず、ワープロソフトにより表示装置34
の画面上に文書を表示した際に、その表示データを抽出
し、その抽出した多値画像データに対して、図2に示し
た電子文書改竄検出前処理を行った。そして、次に、そ
の多値画像データの示す電子文書に対して改竄を施し、
続いて、図8に示した電子文書改竄検出処理を行って、
その改竄部分が検出できるかどうかについて検討した。
なお、この実験1では、分割するブロックのサイズがN
=50の場合とN=20の場合とに分けて実験を行い、
両者の場合とも、同様の改竄を施すようにした。
【0115】図11は改竄前の電子文書を示す説明図、
図12はブロックサイズがN=50の場合における改竄
後の電子文書とその改竄部分の検出結果を示す説明図、
図13はブロックサイズがN=20の場合における改竄
後の電子文書とその改竄部分の検出結果を示す説明図で
ある。図12,図13において、(a)は改竄後の電子
文書を示し、(b)は改竄部分の検出結果を示してい
る。
【0116】図11と図12(a)及び図13(a)と
を比較すれば明らかなように、電子文書中において、
「¥ 25,000」の部分のうち、2箇所が改竄され
て(具体的には、万の位の「2」が削除されると共に、
百の位の「0」が「5」に変更されている。)、結果と
して、「¥ 5,500」となっている。
【0117】これに対し、ブロックサイズがN=50の
場合は、図12(b)に示すように、改竄された2箇所
に、それぞれ、改竄部分を表す×印が2つずつ表示され
ている。一方、ブロックサイズがN=20の場合は、図
13(b)に示すように、改竄された2箇所のうち、変
更された部分に多数の×印が表示されている。しかしな
がら、削除された部分には×印は表示されていない。こ
れは、次の理由による。本実施例で用いているパリティ
検出は、本来、「1」,「0」がx,y方向に或る程度
分散していないと、精度よく検出することは難しい。従
って、電子文書に記載された文字のエッジ部分では精度
よく検出することができるが、文字の内部では精度よく
検出することができない。即ち、上記したブロックサイ
ズがN=20の場合、ブロックサイズが小さいために、
電子文書に記載された文字の内部に、それらブロックが
含まれてしまい、それにより、精度よく検出することが
できなかったのである。
【0118】よって、分割するブロックのサイズは、電
子文書に記載されている文字のサイズに応じて設定する
のが好ましい。
【0119】D−2.実験2 実験2では、まず、印刷文書をスキャナ39によって読
み取って、それにより得られた多値画像データに対し
て、図2に示した電子文書改竄検出前処理を行った。そ
して、次に、その多値画像データの示す電子文書に対し
て改竄を施し、図8に示した電子文書改竄検出処理を行
って、その改竄部分が検出できるかどうかについて検討
した。なお、この実験2では、分割するブロックのサイ
ズはN=20とした。
【0120】図14は改竄前の電子文書を示す説明図、
図15はブロックサイズがN=20の場合における改竄
後の電子文書とその改竄部分の検出結果を示す説明図で
ある。図15において、(a)は改竄後の電子文書を示
し、(b)は改竄部分の検出結果を示している。
【0121】図14と図15(a)とを比較すれば明ら
かなように、電子文書中において、「30127−72
72628」の部分のうち、2箇所が改竄されて(具体
的には、前半5桁の後尾の「7」が「1」に変更される
と共に、後半6桁の先頭の「7」が削除されてい
る。)、結果として、「30121− 272628」
となっている。
【0122】これに対し、改竄検出の結果としては、図
15(b)に示すように、改竄された2箇所に、それぞ
れ、改竄部分を表す×印が多数表示され、改竄部分を精
度よく検出していることがわかる。
【0123】このように、スキャナで読み取って得られ
た多値画像データは、スキャナで読み取る際に、濃度値
が不特定に変化し、ノイズも混入するという特徴を有す
る。これらのランダムな歪によって、すべてのブロック
内には、ビット値が「1」となる画素が存在するため、
ブロックサイズを気にすることなく、本実施例で用いて
いるパリティ検出を適用することができる。図15
(b)に示した結果からも明らかなように、本実施例で
用いているパリティ検出は、このようなノイズが混在す
るスキャナ読み取り画像データに対して、より好適に適
用することができる。
【0124】E.実施例の効果 以上説明したように、本実施例によれば、電子文書を表
す多値画像データに対し、図2に示した電子文書改竄検
出前処理さえ行っておけば、その後、その多値画像デー
タがコンピュータネットワークなどを介して転送される
途中で、そのデータの表す電子文書の内容が改竄されて
も、図8に示した電子文書改竄検出処理を行うことによ
って、改竄の有無だけでなく、改竄された部分も容易に
検出することができる。従って、電子文書を利用する場
合のデータの信憑性を保証することができ、改竄などの
不正行為の未然防止につなげることができる。
【0125】また、本実施例では、ブロックに関する情
報を暗号化した上で電子透かしで埋め込んでいるため、
不正な意図を有する者が、そのブロック情報を取得する
のは困難であり、電子文書に対し、ブロック構造を考慮
した巧妙な改竄を行うことは不可能となる。また、電子
文書の内容が改竄された場合でも、ブロック情報は埋め
込まれているので、ブロック情報まで破壊されることを
回避することができる。また、暗号や電子透かしの存在
によって、その電子文書に対するデータの信憑性をさら
に保証することができる。
【0126】F.変形例 なお、この発明は上記の実施例や実施形態に限られるも
のではなく、その要旨を逸脱しない範囲において種々の
態様において実施することが可能であり、例えば次のよ
うな変形も可能である。
【0127】F−1.変形例1 上記した実施例においては、多値画像データから抽出し
た4つのすべてのビットプレーンのデータに対して、そ
れぞれ、一連の処理(即ち、図2のステップS106〜
S114、図8のステップS208〜S216の処理)
を施したが、本発明はこれに限定されるものではなく、
一部のビットプレーンのデータに対してのみ、そのよう
な処理を施すようにしても良い。その場合には、最終的
に、それら一部のビットプレーンについてのみ、検出し
た改竄部分の表示を行うことができる。
【0128】また、図2に示した電子文書改竄検出前処
理では、パリティ値がバリティ制御値と一致いないブロ
ックについては、ブロック内の画素のビット値を変更す
ることになる(ステップS112)。しかし、そのビッ
トプレーンが多値画像データにおける上位ビットのビッ
トプレーン(例えば、図3(b),図5(b)に示すA
3やA2など)である場合には、下位ビットのビットプレ
ーン(例えば、図3(b),図5(b)に示すA1やA0
など)の場合に比較して、そのような画素のビット値の
変更は、その画素の濃度値に与える影響が大きい。
【0129】即ち、多値画像データが4ビットである場
合、或る画素の濃度値は4ビットで表現されることにな
る。従って、その画素の濃度値が「1111」であると
すると、その4ビットのうち、最下位ビットのビット値
を「0」に変更しても、その画素の濃度値は「111
0」となってほとんど変化がないが、最上位ビットのビ
ット値を「0」に変更すると、その画素の濃度値は「0
111」となって大きく変わってしまうことになるから
である。
【0130】従って、一部のビットプレーンのデータに
対してのみ、上記実施例に示した処理(即ち、図2のス
テップS106〜S114の処理)を行う場合には、比
較的下位ビットのビットプレーンについて行う方が、濃
度値に与える影響が少ないので、好ましい。
【0131】F−2.変形例2 上記した実施例では、各ビットプレーン毎に複数のブロ
ックに分割し、各々のブロックのパリティ値を求めてい
たが、本発明は、これに限定されるものではない。
【0132】図16はブロックの分割の仕方として種々
の方法を説明するための説明図である。
【0133】即ち、上記した実施例では、図16(a)
に示すように、多値画像データから抽出された4つのビ
ットプレーンA0〜A3について、各ビットプレーンAi
毎に、複数のブロックBijに分割していた。
【0134】しかしながら、図16(b)に示すよう
に、4つのすべてのビットプレーンA 0〜A3を統合し、
その統合したビットプレーンについて、ブロック分割を
行い、ブロックBjのような、4つのビットプレーンの
ビット値を含むブロックを得るようにしてもよい。ま
た、図16(c)に示すように、4つのビットプレーン
0〜A3のうち、任意の2つのビットプレーンAi,Ap
を統合し、その統合したビットプレーンについて、ブロ
ック分割を行い、ブロックB’jのような、2つのビッ
トプレーンのビット値を含むブロックを得るようにして
もよい。
【0135】なお、図16(a),(b),(c)に示
すブロックBij,Bj,B’jは、何れも、2×2の合計
4個の画素から成っている。しかし、図16(a)に示
すブロックBijには、上記した実施例で説明したとお
り、ai(xj,yj),ai(x j+1,yj),a
i(xj,yj+1),ai(xj+1,yj+1)の4つの
ビット値しか含まないのに対し、図16(b)に示すブ
ロックBjには、上述したとおり、ビットプレーンA3
4つのビット値a3(xj,yj),a3(xj+1,
j),a3(xj,yj+1),a3(xj+1,yj
1)と、ビットプレーンA2の4つのビット値a
2(xj,yj),a2(xj+1,yj),a2(xj,yj
+1),a2(xj+1,yj+1)と、ビットプレーン
1の4つのビット値a1(xj,yj),a1(xj+1,
j),a1(xj,yj+1),a1(xj+1,yj
1)と、ビットプレーンA0の4つのビット値a
0(xj,yj),a0(xj+1,yj),a0(xj,yj
+1),a0(xj+1,yj+1)の合計16個のビッ
ト値を含むことになる。また、図16(c)に示すブロ
ックB’jには、ビットプレーンAiの4つのビット値a
i(xj,yj),ai(xj+1,yj),ai(xj,yj
+1),ai(xj+1,yj+1)と、ビットプレーン
pの4つのビット値ap(xj,yj),ap(xj+1,
j),ap(xj,yj+1),ap(xj+1,y j
1)の合計8つのビット値を含むことになる。
【0136】よって、図16(a)に示すブロックBij
のパリティ値は、上記した4つのビット値の和を2で除
した余りであった(式(3)参照)のに対し、図16
(b)に示すブロックBjのパリティ値は、上記した1
6個のビット値の和を2で除した余りとなり、図16
(c)に示すブロックB’jのパリティ値は、上記した
8つのビット値の和を2で除した余りとなる。
【0137】このように、1つのビットプレーンについ
て、ブロック分割を行ってもよいし、また、複数のビッ
トプレーンを統合し、その統合したビットプレーンに対
してブロック分割を行ってもよく、少なくとも、各ブロ
ックは、1以上の画素を単位とするブロックであればよ
い。
【0138】また、図16(b),(c)に示すブロッ
クBj,B’jの場合、上記のごとく得られパリティ値が
パリティ制御値と一致しない場合、ブロック内の何れか
1つビット値を変更することになるが、画素の濃度値に
できる限り影響を与えないようにするために、図16
(b)に示すブロックBjでは、最下位ビットのビット
プレーンA0のビット値を、図16(c)に示すブロッ
クB’jでは、下位ビットの方のビットプレーンのビッ
ト値を、それぞれ、変更することが好ましい。
【0139】また、上記した実施例では、x,y方向に
対するブロックの形状は、正方形であったが、本発明は
これに限定されるものではなく、任意の四辺形であって
も良く、また、図17に示すように、任意の三角形であ
ってもよい。また、その他、多角形であってもよく、い
かなる形状であってもよい。図17はブロックの分割の
仕方として他の例を示す説明図である。
【0140】F−3.変形例3 上記した実施例では、改竄部分を検出するための手法と
して、パリティ検出を利用したが、本発明は、これに限
定されるものではなく、例えば、ハミング(Hammin
g),巡回(cyclic),BCH(Bose-Chaudhuri-Hocque
nghem),ファイア(Fire)など、種々の符号誤り検出
や符号誤り訂正の手法を利用することができる。
【0141】また、このような他の手法を利用する場合
には、当然に、図2のステップS108や図8のステッ
プS210で行う演算や、ステップS110やステップ
S212で判定の基準となる条件として、それぞれ、そ
の手法に対応した演算や条件が適用されることになる。
【0142】F−4.変形例4 上記した実施例では、ブロックに関する情報は、暗号化
した上で電子透かしにより多値画像データに埋め込まれ
ていたが、本発明は、これに限定されるものではない。
例えば、ブロックに関する情報を暗号化することなく、
そのまま、電子透かしで多値画像データに埋め込むよう
にしても良い。その場合、受信側では、多値画像データ
から、埋め込まれたブロック情報をそのまま取り出すよ
うにする。また、ブロック情報を暗号化して、多値画像
データに埋め込まずに、単に付加するようにしても良
い。その場合、受信側では、多値画像データから、付加
されたブロック情報を取り出し、復号化するようにす
る。このように、ブロック情報は、多値画像データに、
どのような形態で組み込ませるようにしてもよい。
【図面の簡単な説明】
【図1】本発明の一実施例として電子文書改竄検出前処
理及び電子文書改竄検出処理を実行する電子文書改竄検
出装置10の構成を示すブロック図である。
【図2】図1のビットプレーン抽出部41、ブロック分
割部42、パリティ演算部43、条件判定部44、及び
ビット値変更部45が行う電子文書改竄検出前処理の手
順を示すフローチャートである。
【図3】4ビットの多値画像データから4枚のビットプ
レーンが成立する様子を示す説明図である。
【図4】ビットプレーンを複数のブロックに分割したと
きのブロック分割構造を示す説明図である。
【図5】多値画像Aから4つのビットプレーンA0〜A3
を抽出し、さらに複数のブロックに分割した様子を示す
説明図である。
【図6】ビットプレーンA3の各ブロックに対して行わ
れる処理の手順を示す説明図である。
【図7】ビットプレーンA2の各ブロックに対して行わ
れる処理の手順を示す説明図である。
【図8】図1のビットプレーン抽出部41、ブロック分
割部42、パリティ演算部43、条件判定部44、及び
改竄検出部46が行う電子文書改竄検出処理の手順を示
すフローチャートである。
【図9】ビットプレーンA3の各ブロックに対して行わ
れる処理の手順を示す説明図である。
【図10】ビットプレーンA2の各ブロックに対して行
われる処理の手順を示す説明図である。
【図11】改竄前の電子文書を示す説明図である。
【図12】ブロックサイズがN=50の場合における改
竄後の電子文書とその改竄部分の検出結果を示す説明図
である。
【図13】ブロックサイズがN=20の場合における改
竄後の電子文書とその改竄部分の検出結果を示す説明図
である。
【図14】改竄前の電子文書を示す説明図である。
【図15】ブロックサイズがN=20の場合における改
竄後の電子文書とその改竄部分の検出結果を示す説明図
である。
【図16】ブロックの分割の仕方として種々の方法を説
明するための説明図である。
【図17】ブロックの分割の仕方として他の例を示す説
明図である。
【符号の説明】
10…電子文書改竄検出装置 22…CPU 24…RAM 26…ROM 30…キーボード 32…マウス 34…表示装置 36…ハードディスク装置 38…通信装置 39…スキャナ 40…バス 41…ビットプレーン抽出部 42…ブロック分割部 43…パリティ演算部 44…条件判定部 45…ビット値変更部 46…改竄検出部

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 電子文書に対する改竄を検出するための
    前処理を行う電子文書改竄検出前処理方法であって、 (a)前記電子文書を表す多値画像データに含まれるデ
    ータを、1以上の画素を単位とする複数のブロックに分
    割する工程と、 (b)分割した各ブロック毎に、そのブロックに含まれ
    る画素の値を用いて所定の演算を行う工程と、 (c)各ブロック毎に、前記演算結果が所定の条件を満
    たしているか否かを判定する工程と、 (d)前記演算結果が前記所定の条件を満たしていない
    ブロックについては、演算結果が前記所定の条件を満た
    し得るように、そのブロックに含まれる少なくとも1つ
    の画素の値を変更する工程と、 を備える電子文書改竄検出前処理方法。
  2. 【請求項2】 請求項1に記載の電子文書改竄検出前処
    理方法において、 前記多値画像データに含まれる前記データは、画素にお
    ける或るビットの値を表すビットプレーンのデータであ
    ることを特徴とする電子文書改竄検出前処理方法。
  3. 【請求項3】 請求項2に記載の電子文書改竄検出前処
    理方法において、 前記ビットプレーンのデータは、比較的下位のビットの
    値を表すビットプレーンのデータであることを特徴とす
    る電子文書改竄検出前処理方法。
  4. 【請求項4】 請求項1に記載の電子文書改竄検出前処
    理方法において、 前記多値画像データに含まれる前記データは、画素にお
    ける複数のビットの値をそれぞれ表す複数のビットプレ
    ーンを統合したデータであることを特徴とする電子文書
    改竄検出前処理方法。
  5. 【請求項5】 請求項1に記載の電子文書改竄検出前処
    理方法において、 前記所定の演算は、前記ブロックに含まれる画素のビッ
    トの値の和が奇数であるか偶数であるかを求める演算で
    あって、 前記所定の条件は、前記演算結果が偶数であることを特
    徴とする電子文書改竄検出前処理方法。
  6. 【請求項6】 請求項1に記載の電子文書改竄検出前処
    理方法において、 前記所定の演算は、前記ブロックに含まれる画素のビッ
    トの値の和が奇数であるか偶数であるかを求める演算で
    あって、 前記所定の条件は、前記演算結果が奇数であることを特
    徴とする電子文書改竄検出前処理方法。
  7. 【請求項7】 請求項1に記載の電子文書改竄検出前処
    理方法において、 (e)前記工程(a)〜(d)の各処理を施した前記多
    値画像データに、前記ブロックに関する情報を電子透か
    しで埋め込む工程をさらに備える電子文書改竄検出前処
    理方法。
  8. 【請求項8】 請求項1に記載の電子文書改竄検出前処
    理方法において、 (e)前記ブロックに関する情報を暗号化すると共に、
    該情報を、前記工程(a)〜(d)の各処理を施した前
    記多値画像データに付加する工程をさらに備える電子文
    書改竄検出前処理方法。
  9. 【請求項9】 請求項1に記載の電子文書改竄検出前処
    理方法において、 (e)前記ブロックに関する情報を暗号化すると共に、
    該情報を、前記工程(a)〜(d)の各処理を施した前
    記多値画像データに電子透かしで埋め込む工程をさらに
    備える電子文書改竄検出前処理方法。
  10. 【請求項10】 電子文書に対する改竄を検出する電子
    文書改竄検出方法であって、 (a)前記電子文書を表す多値画像データに含まれるデ
    ータを、1以上の画素を単位とする複数のブロックに分
    割する工程と、 (b)分割した各ブロック毎に、そのブロックに含まれ
    る画素の値を用いて所定の演算を行う工程と、 (c)各ブロック毎に、前記演算結果が所定の条件を満
    たしているか否かを判定する工程と、 (d)前記演算結果が前記所定の条件を満たしていない
    ブロックについて、前記電子文書における該ブロックに
    関わる部分が改竄された部分であると特定する工程と、 を備える電子文書改竄検出方法。
  11. 【請求項11】 請求項10に記載の電子文書改竄検出
    方法において、 (e)前記多値画像データに、前記ブロックに関する情
    報が電子透かしで埋め込まれている場合に、前記多値画
    像データから前記情報を取り出す工程をさらに備える電
    子文書改竄検出前処理方法。
  12. 【請求項12】 請求項10に記載の電子文書改竄検出
    方法において、 (e)前記多値画像データに、前記ブロックに関する情
    報が暗号化されて付加されている場合に、前記多値画像
    データから前記情報を取り出して復号化する工程をさら
    に備える電子文書改竄検出前処理方法。
  13. 【請求項13】 請求項10に記載の電子文書改竄検出
    方法において、 (e)前記多値画像データに、前記ブロックに関する情
    報が暗号化されて電子透かしで埋め込まれている場合
    に、前記多値画像データから前記情報を取り出して復号
    化する工程をさらに備える電子文書改竄検出前処理方
    法。
  14. 【請求項14】 電子文書に対する改竄を検出するため
    の前処理を行う電子文書改竄検出前処理装置であって、 前記電子文書を表す多値画像データに含まれるデータ
    を、1以上の画素を単位とする複数のブロックに分割す
    るブロック分割手段と、 分割した各ブロック毎に、そのブロックに含まれる画素
    の値を用いて所定の演算を行う演算手段と、 各ブロック毎に、前記演算結果が所定の条件を満たして
    いるか否かを判定する条件判定手段と、 前記演算結果が前記所定の条件を満たしていないブロッ
    クについては、演算結果が前記所定の条件を満たし得る
    ように、そのブロックに含まれる少なくとも1つの画素
    の値を変更する値変更手段と、 を備える電子文書改竄検出前処理装置。
  15. 【請求項15】 電子文書に対する改竄を検出する電子
    文書改竄検出装置であって、 前記電子文書を表す多値画像データに含まれるデータ
    を、1以上の画素を単位とする複数のブロックに分割す
    るブロック分割手段と、 分割した各ブロック毎に、そのブロックに含まれる画素
    の値を用いて所定の演算を行う演算手段と、 各ブロック毎に、前記演算結果が所定の条件を満たして
    いるか否かを判定する条件判定手段と、 前記演算結果が前記所定の条件を満たしていないブロッ
    クについて、前記電子文書における該ブロックに関わる
    部分が改竄された部分であると特定する改竄部分特定手
    段と、 を備える電子文書改竄検出装置。
  16. 【請求項16】 電子文書に対する改竄を検出すべく前
    処理を行わせるためのコンピュータプログラムを記録し
    たコンピュータ読み取り可能な記録媒体であって、 前記電子文書を表す多値画像データに含まれるデータ
    を、1以上の画素を単位とする複数のブロックに分割す
    る機能と、 分割した各ブロック毎に、そのブロックに含まれる画素
    の値を用いて所定の演算を行う機能と、 各ブロック毎に、前記演算結果が所定の条件を満たして
    いるか否かを判定する機能と、 前記演算結果が前記所定の条件を満たしていないブロッ
    クについては、演算結果が前記所定の条件を満たし得る
    ように、そのブロックに含まれる少なくとも1つの画素
    の値を変更する機能と、 を前記コンピュータに実現させるためのコンピュータプ
    ログラムを記録した記録媒体。
  17. 【請求項17】 電子文書に対する改竄を検出させるた
    めのコンピュータプログラムを記録したコンピュータ読
    み取り可能な記録媒体であって、 前記電子文書を表す多値画像データに含まれるデータ
    を、1以上の画素を単位とする複数のブロックに分割す
    る機能と、 分割した各ブロック毎に、そのブロックに含まれる画素
    の値を用いて所定の演算を行う機能と、 各ブロック毎に、前記演算結果が所定の条件を満たして
    いるか否かを判定する機能と、 前記演算結果が前記所定の条件を満たしていないブロッ
    クについて、前記電子文書における該ブロックに関わる
    部分が改竄された部分であると特定する機能と、 を前記コンピュータに実現させるためのコンピュータプ
    ログラムを記録した記録媒体。
JP2000220017A 2000-07-21 2000-07-21 電子文書改竄検出方法及びその装置 Expired - Fee Related JP4220661B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000220017A JP4220661B2 (ja) 2000-07-21 2000-07-21 電子文書改竄検出方法及びその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000220017A JP4220661B2 (ja) 2000-07-21 2000-07-21 電子文書改竄検出方法及びその装置

Publications (2)

Publication Number Publication Date
JP2002044429A true JP2002044429A (ja) 2002-02-08
JP4220661B2 JP4220661B2 (ja) 2009-02-04

Family

ID=18714698

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000220017A Expired - Fee Related JP4220661B2 (ja) 2000-07-21 2000-07-21 電子文書改竄検出方法及びその装置

Country Status (1)

Country Link
JP (1) JP4220661B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004040902A1 (ja) * 2002-10-30 2004-05-13 Japan Science And Technology Agency 改ざん検出方法、改ざん検出プログラム及びそのプログラムを記録した記録媒体
EP1441502A2 (en) * 2003-01-21 2004-07-28 Victor Company Of Japan, Ltd. Recording and reproduction apparatus and method for imperceptible information to be embedded in digital image data
JP2006081169A (ja) * 2004-08-17 2006-03-23 Sony Corp デジタルデータにウォータマークを付与するための方法及び装置
US7440143B2 (en) 2002-03-08 2008-10-21 Oki Electric Industry Co., Ltd. Tampering judgement system, encrypting system for judgement of tampering and tampering judgement method
US7590289B2 (en) 2003-06-19 2009-09-15 Ricoh Company, Ltd. Method, apparatus, and program for image processing capable of preventing and detecting tampering, and a medium storing the program
KR101027411B1 (ko) * 2008-06-27 2011-04-11 캐논 가부시끼가이샤 정보처리장치 및 정보처리방법
JP2019082967A (ja) * 2017-10-31 2019-05-30 富士通株式会社 変更検出プログラム、変更検出方法および変更検出装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7440143B2 (en) 2002-03-08 2008-10-21 Oki Electric Industry Co., Ltd. Tampering judgement system, encrypting system for judgement of tampering and tampering judgement method
WO2004040902A1 (ja) * 2002-10-30 2004-05-13 Japan Science And Technology Agency 改ざん検出方法、改ざん検出プログラム及びそのプログラムを記録した記録媒体
US7310429B2 (en) 2002-10-30 2007-12-18 Japan Science And Technology Agency Unauthorized-alteration detecting method, unauthorized-alteration detecting program, and recording medium having recorded the program
EP1441502A2 (en) * 2003-01-21 2004-07-28 Victor Company Of Japan, Ltd. Recording and reproduction apparatus and method for imperceptible information to be embedded in digital image data
EP1441502A3 (en) * 2003-01-21 2005-08-31 Victor Company Of Japan, Ltd. Recording and reproduction apparatus and method for imperceptible information to be embedded in digital image data
US7356159B2 (en) 2003-01-21 2008-04-08 Victor Company Of Japan, Ltd. Recording and reproduction apparatus, recording and reproduction method, recording and reproduction program for imperceptible information to be embedded in digital image data
US7590289B2 (en) 2003-06-19 2009-09-15 Ricoh Company, Ltd. Method, apparatus, and program for image processing capable of preventing and detecting tampering, and a medium storing the program
JP2006081169A (ja) * 2004-08-17 2006-03-23 Sony Corp デジタルデータにウォータマークを付与するための方法及び装置
JP4696777B2 (ja) * 2004-08-17 2011-06-08 ソニー株式会社 デジタルデータにウォータマークを付す方法及び装置
KR101027411B1 (ko) * 2008-06-27 2011-04-11 캐논 가부시끼가이샤 정보처리장치 및 정보처리방법
JP2019082967A (ja) * 2017-10-31 2019-05-30 富士通株式会社 変更検出プログラム、変更検出方法および変更検出装置

Also Published As

Publication number Publication date
JP4220661B2 (ja) 2009-02-04

Similar Documents

Publication Publication Date Title
Chang et al. A secure fragile watermarking scheme based on chaos-and-hamming code
Lin et al. A hierarchical digital watermarking method for image tamper detection and recovery
Fridrich et al. New fragile authentication watermark for images
JP4669187B2 (ja) 圧縮イメージ内に透かしを組み込む方法、圧縮されたイメージからすかしを回復する方法、ならびに記録媒体
US7146502B2 (en) Information processing apparatus and its control method, computer program, and storage medium
KR100335308B1 (ko) 워터마크를 이용한 인간 지각가능 데이터 세트의 배포와 인증 방법 및 그 장치
US7222235B1 (en) Image processing system utilizing digital watermarks in predetermined regions
EP1078312B1 (en) Apparatus for making and apparatus for reading a digital watermark and method of making and reading a digital watermark
JP3804012B2 (ja) 文書画像の改ざん判定方法及びシステム、並びにその制御用プログラム
EP1291819A2 (en) Digital watermark embeddig
IL176380A (en) A method and system for controlling the creation of an encoded image using image signatures
JPH10191036A (ja) デジタルコンテンツに対するidの刷込および読出方法
WO2005124681A1 (en) Systems and methods for digital content security
US6742712B1 (en) Information card and information card system
JP2001186326A (ja) 画像の改ざん検証データ埋め込み方法、画像の改ざん検証方法、画像の改ざん検証装置および記録媒体
JP4143441B2 (ja) 情報処理方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
Chang et al. Robust image authentication using content based compression
Boucherkha et al. A Lossless Watermarking Based Authentication System For Medical Images.
JP2002044429A (ja) 電子文書改竄検出方法及びその装置
JP2001126046A (ja) Icカード、icカード認証システム、及びその認証方法
JP3854804B2 (ja) 情報処理装置及びその制御方法及びコンピュータプログラム及び記憶媒体
KR100338348B1 (ko) 부가 정보 검출 방법 및 시스템
US20040123100A1 (en) Certificate issuing method and certificate verifying method
Dadkhah et al. Efficient image authentication and tamper localization algorithm using active watermarking
US11954756B1 (en) Anti-leak digital document marking system and method using distributed ledger

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070713

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080704

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080715

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080903

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081028

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081114

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121121

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121121

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131121

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees