以下参照附图,根据理想的实施形式详细地说明本发明。
第1实施形式
图1是示出本实施形式中的电子水印嵌入装置的基本结构的框图。 图1中,2是输入电子水印嵌入对象文件的由扫描仪、
照相机,输入嵌 入对象文件图像的网络、文件读取装置构成的输入单元,将文本数据, 矢量数据等电子文件数据展开(rasterize)。4是进行各种处理的处理器, 6是输入对于处理器4的命令的
键盘,8是保存读入的文件图像的盘, 10是暂时存储在
存储器4中进行的各种处理的数据,或者存储由输入单 元2读入的文件图像的存储器,12是显示对于处理器4的输入命令以及 处理状态的显示器,14是输出嵌入了数字署名信息的文件图像的打印 机,网络等输出单元。
另一方面,图2示出从由图1所示的电子水印嵌入装置进行了电子 水印嵌入的文件的图像数据中,进行电子水印抽取(读出)的电子水印 抽取装置的基本结构的框图。另外,在本实施形式中,电子水印嵌入装 置和电子水印抽取装置作为单独的装置来处理,但是并不限于这种形 态,也可以作为同一装置内的各部分(电子水印嵌入部
门,电子水印抽 取部分)来使用。
图2中,22是输入嵌入了电子水印的文件的由扫描仪、照相机,输 入嵌入了电子水印文件图像的网络、文件读取装置构成的输入单元,将 文本数据、矢量数据展开(rasterize)。24是进行各种处理的处理器, 26是输入对于处理器24的命令的键盘,28是用于保存读入的文件图像, 或者用于读入的文件的原始文件检索的盘,30是暂时存储在处理器24 中进行的各种处理用的数据,或者存储由输入单元22读入的文件图像 的存储器,32是示出对于处理器24的输入命令以及处理状态的显示器, 34、36分别是用于文件图像的输入输出的网络
接口、打印机。
下面,使用图3、4,说明本实施形式中的电子水印的嵌入以及抽取 的处理。图3是进行电子水印嵌入的处理的流程图,图4是电子水印抽 取的处理的流程图。
首先,说明电子水印的嵌入处理。在步骤S200中,把原稿(纸或 者电子数据)输入到输入单元2,进行图像化的同时,输入原稿特有的 识别区。
作为这里的原稿,指的是用于向第3者提供某种信息的由人填写或 者制成的票据类。更具体地讲,原稿是如果所记录的信息被篡改,制成 人将蒙受利益损失的票据类,是收据,户头转帐
委托书,保险
申请书等 有价
证券类。
另外,作为原稿特有的识别区,是以下在步骤S202中说明的记载 着应嵌入的文件识别信息(文字,符号串)的区域,所谓输入识别区, 指的是把有可能被篡改的某部分(在记载了文件识别信息的
位置,依每 种票据而不同)的位置信息,大小信息直接使用上述键盘6等进行输入, 或者将存储有这种信息的模板进行输入。
另外,在原稿的图像中,在预先明确识别区的位置,大小的情况下, 也可以把这些信息预先作为摸板存储在盘8中,并且根据需要进行读出。
在步骤S202中,从在步骤S200中图像化了的原稿中的上述识别区 抽取出应嵌入的文件识别信息(ID,金额,地址,姓名,出生年月日等 文字,符号串)。该抽取可以使用众所周知的文字识别(所谓OCR) 技术实现。
在步骤S204中,根据需要把在步骤S202中抽取出的信息进行数字 署名化(详细情况后述)。
另外,在本发明中,上述数字署名化不是必须的,是为了进一步提 高作为电子水印嵌入的信息的可靠性的处理。从而,也可以省略数字署 名化的处理(从处理顺序去除步骤S204)。
在步骤S206中,在图像化了的原稿中作为电子水印嵌入在步骤 S204中电子署名化了的信息(数字署名数据)。在步骤S208中,经过 输出单元14把在步骤S206中嵌入的文件图像输出到电子水印抽取装 置。但是并不限定于此,也可以保存在盘8内。
其次,说明电子水印的抽取处理。在步骤S300中,输入原稿(纸 或者电子数据),进行图像化的同时,输入原稿特有的识别中。所谓输 入识别区,指的是把有可能被篡改的部分(记载着文件识别信息的位置, 依每种票据类而不同)的位置信息,大小信息直接使用上述键盘26进 行输入,或者将存储着这种信息的摸板进行输入。
另外,在原稿的图像中,在预先明确识别区的位置,大小的情况下, 也可以把这些信息预先作为摸板存储在盘28中,并且根据需要进行读出。
在本实施形式中,把通过电子水印嵌入装置进行了上述的处理(遵 从图3所示的流程的处理)所生成的原稿输入到电子水印抽取装置中。
在步骤S302中,从在步骤S300中图像化了的原稿文件中的上述识 别区抽取出要读取的文件识别信息(ID,金额,地址,姓名,出生年月 日等文字,符号串)。该抽取与嵌入时相同使用众所周知的OCR技术。 在步骤S304中,把在步骤S302中抽取出的文件识别信息变换为散列值 (散列变换)(详细情况后述)。在步骤S306中,从在步骤S300中图 像化了的原稿读出作为电子水印被嵌入的电子署名数据(详细情况后 述)。
另外,在嵌入时没有进行电子署名化的情况下,在步骤S300中读 出的数据是在上述嵌入时刚刚进行了散列变换后的散列值。在这种情况 下,不存在后述的步骤S308。
在步骤S308中,从在步骤S306读出的数字署名数据,复原紧接数 字署名化之前的数据,即,在嵌入时刚刚进行了散列变换后的散列值(详 细情况后述。)。在步骤S310中,把在步骤S304中生成的散列值与在 步骤S308中复原的散列值进行比较。具体地讲,在本实施形式中,进 行各个散列值是否相同的判断。在步骤S312中,根据在步骤S310中的 比较结果进行各种控制。这里,所谓各种控制,可以是把篡改检测结果 通报到外部等,例如,在显示器32上显示其结果,或者从打印机36在 纸上打印其结果。在步骤S312中,如果各个散列值相同,则由于没有 被篡改,因此向外部通知该意思,如果各个散列值不同,则由于被篡改, 因此向外部通知该意思。
另外,上述的电子水印的嵌入处理(步骤S206)和电子水印的抽 取处理(步骤S306),如果是不可视电子水印,则方法不限。
其次,说明从输入的原稿抽取出文件识别信息(步骤S202,步骤 S302)的处理。图5示出该处理的详细流程。
在步骤S400中,从在步骤S200、S300中输入的文件图像中,根据 输入的识别区,进行图像区域的切取。在步骤S402中是对于在步骤S400 中切取出的区域内的图像施行文字识别的程序。这里,在应进行文字识 别的区域有多个的情况下,进行多次文字识别,在对象文字不同的情况 下,切换为对其最合适的文字识别方法,取出文字,符号串。这里所得 到的文字,符号串成为文字识别信息。
其次,说明数字署名化的处理(步骤S204)。图6中示出数字署 名化的处理的详细流程。在步骤S500中,计算在步骤S202中抽取出的 文件识别信息的后述的散列值。步骤S502是使用署名生成者的加密密 钥,从在步骤S500中得到的散列值生成后述的数字署名数据的流程。
另外,从数字署名数据复原刚刚进行散列变换后的文件识别信息的 处理(步骤S308)与步骤S502相同,使用署名生成者的加密密钥,从 署名数据复原署名化之前的原始信息,即散列值。
这里,关于散列值说明如下。所谓散列值是作为单变量函数的散列 函数h的输出值,所谓散列函数,指的是来自不同的原始数据的变换结 果之间难以引起冲突的变换函数。这里,所谓冲突是对于不同的输入值 x1,x2,成为h(x1)=h(x2)。另外,该变换函数是把任意比特长度 的比特串变换为某个固定长度的比特串的函数。从而,所谓散列函数是 把任意比特长度的比特串变换为某个长度的比特串的函数,不容易发现 满足h(x1)=h(x2)的x1,x2。作为散列函数的代表性函数,有MD5 (Message Digest 5),SHA(Secure Hash Algorithm)等。
其次,对数字署名数据说明如下。作为数字署名数据的生成(数字 署名化),可以考虑使用了公开密钥加密方式的加密处理等,而本实施 形式中并不特别限定。以下,简单地说明使用了公开密钥加密方式的署 名方式。
公开密钥加密方式的加密密钥与解密密钥不同,是把加密密钥公 开,而秘密地保持解密密钥的加密方式。
对于信息M,如果把使用了公开的加密密钥kp的加密操作记为E (kp,M),把使用了秘密的解密密钥ks的解密操作记为D(ks,M), 则公开密钥加密算法满足以下3个条件。
(1)当提供了kp时,容易进行E(kp,M)的计算。当提供了ks 时,容易进行D(ks,M)的计算。
(2)如果不知道ks,则即使知道kp和E的计算顺序以及C=E(kp, M),则在计算量方面也难以决定M。
(3)对于全部的信息(纯文本)M,能够定义E(kp,M),D(ks, E(kp,M))=M成立。
使用满足以上性质的公开密钥加密方式,用户P对于文件M进行 署名,即,证明M的确是P生成的文件的方式如下。
P用自己的加密密钥ks生成发送文S=D(ks,M),与M一起发 送到用户V。
V用P的公开密钥ks把S进行复原变换M’=E(kpA,S),确 认M’与文件M是否一致。把该V的操作称为署名的检验。
一般,由于采用公开密钥密码的加密存在花费时间多的缺点,因此 不是在文件M自身上实施上述运算,大多是在使用一次散列函数把数 据变换了的
基础上进行署名处理,在本实施形式中也采用该方式。
如以上叙述的那样,如果依据本实施形式的图像处理装置以及图像 处理方法,则通过文字识别抽取出图像中的文件识别信息,使用散列变 换等从原来的信息变换结果单值地确定的变换算法,把文件识别信息进 行变换,并且根据需要用数字署名加密了以后,把其作为电子水印嵌入 到图像中,即使文件识别信息多,也能够应用不可视的电子水印。
而且,从嵌入了电子水印后的图像,根据来自用电子水印嵌入了的 文件识别信息的变换后数据和从该图像通过文字识别直接得到的文件 识别信息这两个信息,能够检查图像中通常存在的后者的文件识别信息 的可靠性,即是否被篡改。
另外,在上述说明中,作为从文件识别信息变换结果单值地确定的 变换算法,以散列变换为例进行了说明,而在上述实施形式中即使使用 与其相类似的其它的众所周知的变换也能够达到本发明的目的。
另外,作为该变换,不单是函数变换,还能够应用熟知的文字,符 号串的压缩技术。
例如,在作为上述文件识别信息的电子水印进行嵌入时,代替上述 散列变换,使用LZW,ZIP等众所周知的文字,符号串的压缩技术进行 可逆压缩(变换)以后,根据需要也进行数字署名化,把由此得到的结 果作为电子水印进行嵌入也能够达到本发明的目的。
这种情况下,在篡改检测方(电子水印抽取方)中,在嵌入方进行 了数字署名化的情况下,通过从数字署名化(加密)了的数据复原为数 字署名化前的数据,得到上述嵌入方的刚进行了可逆压缩后的压缩数 据,通过把该压缩数据扩展,取得紧接可逆压缩之前的文字串,即文件 识别信息。另一方面,通过从原稿图像进行文字识别(OCR处理)也 能够取得文件识别信息。而且,通过把各个文件识别信息进行比较能够 进行篡改检测。在这种情况下,虽然进行比较的状态与第1实施形式(在 第1实施形式中是文字识别信息的(散列)变换后的数字之间,在
变形 例中是文字识别信息之间)不同,但是双方都成为在作为电子水印嵌入 的数字署名数据多的情况下能够相互对应的形态。
第2实施形式
在第1实施形式中,作为原稿特有的识别区的特定装置,使用键盘 6等直接输入位置信息和大小信息,或者输入存储了这种信息的摸板, 然而并不限定于此,除此以外例如也可以使用后述的装置输入上述识别 区。
即,与原稿输入的同时在原稿中,求各个文字(符号)串区域。该 处理例如通过众所周知的技术求出各文字(符号)的外接矩形,进而把 预定距离以内的矩形群汇总为一个,把所汇总的矩形群作为1个矩形, 把该矩形区作为上述文字(符号)串区域求出。而且,作为上述识别区 输入所求出的文字(符号)串区域。
除此以外,例如与原稿输入的同时,也可以使用自动识别该原稿的 票据识别技术,使用不经过人工而输入摸板的装置。
第3实施形式
在第1实施形式中,没有特别地进行文件识别信息的电子水印嵌入 位置的特定,例如,也可以设定在与文字识别区相同的区域中,或者也 可以经过预先设定的摸板进行嵌入位置的特定。
其它的实施形式
进而,本发明并不限于用于实现上述实施形式的装置以及方法,在 上述系统或者装置内的计算机(CPU或者MPU)中,供给用于实现上 述实施形式的
软件的程序代码,通过根据该程序代码使上述系统或者装 置的计算机的上述各种器件进行动作,实现上述实施形式的情况也包含 在本发明的范畴之内。
另外,这种情况下,上述软件的程序代码自身实现上述实施形式的 功能,该程序代码自身以及用于把该程序代码供给到计算机的装置,具 体地讲存储上述程序代码的存储媒体也包含在本发明的范畴之内。
作为存储这样的程序代码的存储媒体,例如能够使用
软盘(floppy 注册商标),
硬盘,光盘,光磁盘,CD-ROM,磁带,非易失性存储 卡,ROM等。
另外,并不只是上述计算机仅根据所供给的程序代码控制各种器 件,实现上述实施形式的功能的情况,在上述程序代码与在计算机上工 作的OS(
操作系统)或者其它的
应用软件等一起实现上述实施形式的 情况下,这样的程序代码也包含在本发明的范畴之内。
进而,该被供给的程序代码存储到计算机的功能扩展板或者计算机 所连接的功能扩展单元中所具备的存储器中以后,根据其程序代码的指 示,该功能扩展板或者功能存储单元所具备的CPU等进行实际处理的 一部分或者全部,并且根据其处理实现上述实施形式的情况也包括在本 发明的范畴之内。
根据以上的说明,依据本发明,即使要嵌入的文件识别信息的数量 很多,也能够可靠地在不可视的电子水印原稿中进行嵌入。