原本性保证系统、信息嵌入和篡改检测装置和方法及记录介质的制作方法

文档序号:6381725阅读:168来源:国知局
专利名称:原本性保证系统、信息嵌入和篡改检测装置和方法及记录介质的制作方法
技术领域
本发明涉及用于主要针对数据结构的描述方法利用存在的冗余性来嵌入信息并对数据的篡改或正当性进行检测的信息嵌入和篡改检测装置及信息嵌入和篡改检测方法以及存储有信息嵌入和篡改检测程序的计算机可读取的记录介质。本发明具体涉及用于检测把信息嵌入到由三维图形或CAD等生成的三维设计数据等描述三维形状的数据内的三维形状数据的篡改或正当性进行检测的技术,该三维形状数据是作为数据隐藏技术、多面体或旋转体等基元几何学形状的组合而构成的。
背景技术
迄今,作为电子水印技术和数据隐藏技术,以下技术是公知的。
例如,在专利文献1内记载了通过变更三维形状模型的几何参数来嵌入信息的技术。
具体地说,在该常规技术中,采用以下方法,即通过变更三维形状模型的几何参数、即用于定义几何形状的描述,在可见或不可见的状态下把各种信息嵌入到上述三维形状模型内。
作为嵌入对象的三维形状模型通常由作为其基元(构成要素)的多面体、直线、点的集合或者曲面构成。并且,各基元由几何参数来定义。因此,三维形状模型通过许多几何参数的集合来定义其整体的几何形状。
因此,在该常规技术中记载有通过变更构成三维形状模型的多个基元的几何参数来嵌入信息。
并且,在该常规技术中记载有通过把几何参数分成数值参数和相位,并将其各自变更来嵌入信息,反过来,抽出是指通过对上述变更的几何参数进行检测来取出所嵌入的信息。
并且,在专利文献2内记载了通过对三维形状模型的数据进行小波变换,并把信息嵌入到该结果内的技术。
具体地说,根据该常规例,三维形状变换单元对原始模型V0的数据进行小波变换处理,电子水印嵌入单元把透明数据嵌入到由小波变换处理生成的WT系数矢量内,根据该WT系数矢量,三维形状逆变换单元生成嵌入有透明数据的三维形状模型(流通模型V’0)的数据。
因此,根据该常规技术,记载了以下方法,即当把包含著作权信息等的电子信息数据嵌入到三维形状数据内时,考虑到所嵌入的三维形状模型的视觉变化,可进行误差控制,并且,即使在接受形状模型的删除或变形的情况下,也能进行顽强的电子信息数据嵌入。
特开平10-334272号公报[专利文献2]特开2000-82156号公报另一方面,作为有关电子水印技术和数据隐藏技术的设计要求,列举如下等·透明信息针对编辑、压缩、传送等的各种处理不变质或不消失;·伴随透明信息嵌入的内容劣化为最小限度;·配置成不集中在首部或特定区域,而是分散在内容全域;·对于电子水印的篡改或消失等的具有恶意的攻击有抵抗力;·透明信息的嵌入和检测处理简便,处理所需时间短。
针对在上述在先技术文献1内记载的发明,存在以下问题,即为了嵌入信息而有必要变更原来的几何数据,并且透明信息的检测算法复杂化。
并且,针对在上述在先技术文献2内记载的发明,存在以下问题,即尽管作为具体运算方法,特征是使用小波变换,然而在本发明的情况下,数据与原始数据不同。

发明内容
本发明是考虑到这种情况而提出的,本发明的目的是提供用于完全不改变所表现的数据的“意义”和“品质”就能嵌入和读出信息的信息嵌入和篡改检测装置及信息嵌入和篡改检测方法以及存储有信息嵌入和篡改检测程序的计算机可读取的记录介质。
由于本发明是为解决上述问题而提出的,因而本发明的特征在于,一种原本性保证系统,其包括信息嵌入装置,用于把信息嵌入到多个结构体数据内;以及信息篡改检测装置,用于对该信息嵌入装置嵌入信息的多个结构体数据的篡改进行检测;上述信息嵌入装置具有数据标准化单元,用于根据第1规则,把上述多个结构体数据进行排序;信息摘要(message digest)生成单元,用于针对由该数据标准化单元排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;以及数据变换单元,用于把该信息摘要生成单元算出的信息摘要作为关键字(key),根据与上述第1规则不同的第2规则,把上述数据标准化单元排序的多个结构体数据进行排序;上述信息篡改检测装置具有数据标准化单元,用于根据上述第1规则,把多个结构体数据进行排序;信息摘要生成单元,用于针对由该数据标准化单元排序的多个结构体数据组成的位流,使用上述散列函数算出信息摘要;数据变换单元,用于把该信息摘要生成单元算出的信息摘要作为关键字,根据上述第2规则,把上述数据标准化单元排序的多个结构体数据进行排序;以及判定单元,用于把该数据变换单元排序的多个结构体数据和上述数据标准化单元排序前的多个结构体数据进行比较,如果该多个结构体数据一致,则判定为上述数据标准化单元排序前的多个结构体数据未被篡改,如果该多个结构体数据不一致,则判定为上述数据标准化单元排序前的多个结构体数据被篡改。
并且,本发明的特征在于,具有数据标准化单元,用于根据规定的规则,把多个结构体数据进行排序;信息摘要生成单元,用于针对由该数据标准化单元排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;以及数据变换单元,用于把该信息摘要生成单元算出的信息摘要作为关键字,根据与上述规则不同的规则,把上述数据标准化单元排序的多个结构体数据进行排序。
并且,本发明的特征在于,具有数据标准化单元,用于根据与信息嵌入装置的数据标准化单元相同的第1规则,把多个结构体数据进行排序;信息摘要生成单元,用于针对由该数据标准化单元排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;数据变换单元,用于把该信息摘要生成单元算出的信息摘要作为关键字,根据与上述信息嵌入装置的数据变换单元相同的规则且与上述第1规则不同的规则,把上述数据标准化单元排序的多个结构体数据进行排序;以及判定单元,用于把该数据变换单元排序的多个结构体数据和上述数据标准化单元排序前的多个结构体数据进行比较,如果该多个结构体数据一致,则判定为上述数据标准化单元排序前的多个结构体数据未被篡改,如果该多个结构体数据不一致,则判定为上述数据标准化单元排序前的多个结构体数据被篡改。
并且,本发明的特征在于,根据第1规则,把多个结构体数据进行排序;针对由该排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;把该算出的信息摘要作为关键字,根据与上述第1规则不同的第2规则,把上述排序的多个结构体数据进行排序。
并且,本发明的特征在于,根据信息嵌入方法中的第1规则,把多个结构体数据进行排序;针对由该排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;把该算出的信息摘要作为关键字,根据上述信息嵌入方法中的第2规则,把上述排序的多个结构体数据进行排序;把根据该第2规则排序的多个结构体数据和根据上述第1规则排序前的多个结构体数据进行比较,如果该多个结构体数据一致,则判定为根据上述第1规则排序前的多个结构体数据未被篡改,如果该多个结构体数据不一致,则判定为根据上述第1规则排序前的多个结构体数据被篡改。
并且,本发明是一种存储有信息嵌入程序的计算机可读取的记录介质,该信息嵌入程序用于使计算机执行下述处理根据第1规则,把多个结构体数据进行排序;针对由该排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;把该算出的信息摘要作为关键字,根据与上述第1规则不同的第2规则,把上述排序的多个结构体数据进行排序。
并且,本发明是一种存储有信息篡改检测程序的计算机可读取的记录介质,该信息篡改检测程序用于使计算机执行下述处理根据使计算机执行信息嵌入程序来执行的排序处理中的第1规则,把多个结构体数据进行排序;针对由该排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;把该算出的信息摘要作为关键字,根据上述信息嵌入方法中的第2规则,把上述排序的多个结构体数据进行排序;把根据该第2规则排序的多个结构体数据和根据上述第1规则排序前的多个结构体数据进行比较,如果该多个结构体数据一致,则判定为根据上述第1规则排序前的多个结构体数据未被篡改,如果该多个结构体数据不一致,则判定为根据上述第1规则排序前的多个结构体数据被篡改。


图1是示出本实施方式的信息嵌入装置的构成的构成图。
图2是示出用xyz坐标系描述的6多角形的VRML格式的示例的图。
图3是示出用xyz坐标系描述的3角形的Raw Triangle格式的示例图。
图4是示出本实施方式的信息篡改检测装置的构成的构成图。
图5是示出本实施方式的原本性保证系统的信息嵌入处理过程的流程图。
图6是示出信息篡改检测处理过程的流程图。
1、11 控制部2、12 输入部3、13 输出部4、14 存储部5、15 数据标准化处理部6、16 附加信息赋予处理部
7、17 信息摘要处理部8、18 数据变换部19篡改判定处理部具体实施方式
以下,参照附图,对应用本发明的信息嵌入和篡改检测装置的数据原本性保证系统的第1实施方式进行说明。本实施方式的数据原本性保证系统由以下部分构成,即信息嵌入装置,用于把信息嵌入到多个结构体数据(后述)内;以及信息篡改检测装置,用于对信息嵌入装置嵌入信息的多个结构体数据的篡改进行检测。
图1是示出本实施方式的信息嵌入装置的构成的构成图。
本实施方式的信息嵌入装置的构成为使控制部1、输入部2、输出部3、存储部4、数据标准化处理部5、附加信息赋予处理部6、信息摘要处理部7以及数据变换处理部8通过总线10连接。
控制部1对输入部2、输出部3、存储部4、数据标准化处理部5、附加信息赋予处理部6、信息摘要处理部7以及数据变换处理部8中的数据输入输出进行控制。
输入部2是用于接收由作为嵌入透明信息的对象数据的多个结构体数据组成的对象(object)的输入的接口部。
此处,结构体数据是指具有由1个或多个参数描述的数据结构的数据,并且是可按该参数值排序的数据。具体地说,是指把数据按多个块划分和保持的形式的声音数据,把图形形状等的描述数据按多个块划分和保持的形式的二维图像数据和三维图像数据,把声音数据和图像数据按多个块划分和保持的形式的动态图像数据等,该数据的结构为即使把该顺序重新排列,数据具有的意义也不会改变。
以下,作为三维图像数据,以由三维图形或CAD等生成的几何形状数据为例进行说明。作为用于描述三维形状的格式,例如有·VRML(虚拟现实建模语言Virtual Reality Modeling Language)由万维网(Web)等使用的三维描述方式;
·X3D(可扩展3DExtensible 3D)把VRML与XML整合的新的描述形式;·DXF/DWG使用CAD的实际(de facto)标准的格式;·HPGL HP的图形格式;·Raw Triangle用ASCII TEXT仅书写三角形坐标的格式;等。
作为结构体数据,图2和图3示出了用于描述三维形状的对象的格式的一例。图2示出了用xyz坐标系描述的6多角形的VRML格式的示例。在本发明的观点中,VRML格式是具有用1个参数即xyz坐标值描述的数据结构的文本数据,并且是可按该参数值排序的数据(详情后述)。
并且,图3示出了同样用xyz坐标系描述的三角形的Raw Triangle格式的示例。Raw Triangle也同样是用xyz坐标描述的3个点表示1个三角形。
这样,对象描述格式由用于决定对象的种类、大小、位置和方向的几何参数组成。
输出部3是用于输出由嵌入有透明信息的多个结构体数据组成的对象的接口部。
作为首部附加信息,存储部4存储有·表示生成者或权利者的信息(姓名,某些ID或邮件地址,URL等);·与处理该数据的软件或装置有关的信息(序列号或软件的版本信息等);·生成日期和时间或数据大小等的信息。
数据标准化处理部5根据规定的规则(以下,称为第1规则),把多个结构体数据进行排序。
此处,数据标准化处理部5使用的规则,即排序算法及其安装形式虽然可考虑几种方法,然而基本上是使用按某些基准进行重新排列的方法。
作为排序算法的应用对象,即重新排列对象,有以下2种A.使对象自身的描述内容标准化;
B.使文件(流)内的对象的记载顺序标准化;作为与各自有关的具体安装示例,考虑了例如以下方法。
A.构成对象的结构体数据的描述内容的标准化1).例如象多边形那样,如果是作为点的顺序集合所表现的形式的结构体数据,则针对从哪个点开始描述,即使变更顺序,作为对象的意义也不会变更。因此,该顺序存在自由度。也就是说,例如,作为第1规则,可以考虑距离预先任意决定的基准点最近的点或最远的点作为描述开始点。
2).在cylinder(柱)或旋转体那样的数据结构的情况下,具有轴,该轴使用表示线段的数据来描述。也就是说,该描述内容也同样存在自由度,可以考虑用基点和方向矢量来描述,或者用始端和终端这2点来描述。
B.把对象进行排序1).按照从对象到预先任意决定的基准点的距离近的顺序或者远的顺序进行重新排列。此时,可以仅对特定坐标应用重新排列处理,或者也可以对将坐标变换为规定坐标系的坐标应用重新排列处理。也就是说,无论坐标系是否是正交坐标系。
并且,作为用于测定距离的对象的代表点(作为代表的参数值)的选择方法的示例,例如,考虑了如下等·在对象描述中最初出现的点·对象的重心·在对象中,最接近基准点的点(或者远点)2).按照与对象特性对应的顺序进行重新排列。
·例如,如果是面对象,则按面积进行排序,如果是具有体积的对象,则按体积进行排序。
·如果对象是具有纹理的对象,则针对表现该纹理的数据定义某些顺序,并按照该顺序进行排序。此处所说的“某些顺序”是指,例如把纹理表现数据解释为数值并导入基于其大小的顺序,或者把纹理表现数据解释为文字串并导入基于词典顺序的顺序,等。
3).按照基于对象位置的相对关系的顺序进行重新排列。
指定1个对象,并根据离该对象的距离构成树状的数据结构。然后,采用根据某些规则追寻该树的方法进行排序。
可以考虑以上等方式,并且,也可考虑将其进行组合。
以下,作为标准化处理部5中的标准化处理的示例,使用RawTriangle的示例进行说明。
也就是说,首先在三维空间内,定义特定的基准点A(Step 0)。
然后,针对全部三角形,变换成从接近基准点A的点描述的形式(Step 1)。也就是说,Step 1的过程是选择1个三角形,并计算从用于描述该选择的三角形的3点中的各点到基准点A的距离。然后,根据各点到基准点A的距离的大小关系,变更三角形的描述,以便最先描述距离最近的点。
然后,在三维空间内,定义特定的基准点B(Step 2)。然后,与Step1同样,针对全部三角形,计算到基准点B的距离。另外,把距离计算的对象作为三角形描述的第1点作为规则。然后,根据到基准点B的距离算出结果,按照到基准点B的距离近的顺序,把三角形进行重新排列。
针对简单示例,示出了基于上述第1规则的标准化处理的示例。
现在,对(0,0,0,1,0,0,0,1,0)的三角形T1以及(0,1,0,1,1,0,1,2,0)的三角形T2加以考虑。在Raw Triangle格式的表述中,描述如下……………000100010010110120………………表述1假定例如基准点A为(10,0,0),则通过上述Step 1,三角形的描述顺序变为T1(1,0,0,0,1,0,0,0,0)T2(1,1,0,1,2,0,0,1,0)(标准化A)。
然后,假定基准点B为(0.10.0),则通过上述Step 2,由于T2接近B,因而三角形的顺序以T2为先。结果,Raw Triangle的表述顺序从上述表述1进行以下重新排列(标准化B)。
……………110120010100010000………………表述2至此,“标准化”完成。也就是说,如果基准点A、B未知,则即使排序算法已知,也不可能正确进行重新排列。
并且,关于距离计算方法,例如可以考虑在变换成极坐标或圆筒坐标系等之后进行加权距离计算等的各种变化。
附加信息赋予处理部6把存储在上述存储部4内的·表示生成者或权利者的信息(姓名,某些ID或邮件地址,URL等)·与处理该数据的软件或装置有关的信息(序列号或软件的版本信息等)·生成日期或数据大小等的信息的附加信息附加给标准化处理部5的输出结果。另外,上述附加信息的内容在嵌入侧和接收侧双方作为共用关键字。
信息摘要处理部7针对由数据标准化处理部5排序的多个结构体数据组成的位流、或附加信息赋予处理部6向其进一步附加了附加信息的位流,使用规定的散列函数算出信息摘要。
作为具体的信息摘要处理,例如,如果输入1位以上的任意位串,则考虑使用固定长度的位串(160位的位模式)被输出的这种MD5规格等。
数据变换处理部8把信息摘要生成单元算出的信息摘要作为关键字,根据与上述第1规则不同的第2规则,把数据标准化单元排序的多个结构体数据进行排序。
作为上述示例的继续,示出以作了标准化的表述2为出发点来决定描述顺序的第2规则的示例。
……………
110120010100010000………………表述2首先,针对由作了标准化的多个结构体数据组成的位流、或附加信息赋予处理部6向其进一步附加了附加信息的位流,如果进行信息摘要处理,则例如假定获得下述位串(二进制表述)的信息摘要值。
1110100110100011110000110101000111…使用该位串,对表述2的描述进行数据变换。
A.各个三角形的顶点的描述顺序的变换首先,从最初每2位取得上述位串。在该情况下,由于是2位,因而考虑了4种组合。
假定最初三角形T1的作了标准化的3顶点为T1a、T1b、T1c,根据所获得的位,按如下进行重新排列。
00T1a,T1b,T1c01T1b,T1c,T1a10T1c,T1a,T1b11T1a,T1b,T1c信息摘要值的先头2位为“11”,保持这种重新排列。其后的2位为“10”,关于第2个三角形,按照(c,a,b)的顺序替换顶点的描述顺序。
B.三角形本身的重新排列接着,决定对象(在该说明中为2个三角形)的顺序。另外,以下,作为更恰当的示例,作为1个实施例,现在,尽管对对象A、B、C、D、E、F、G这7个作了考虑,然而即使在2个三角形的情况下,也可完全同样适用,本发明不限于此。
也就是说,继续信息摘要结果的位流,现在,为“100110”,考虑将其按照从左的顺序来使用。
最初[A]BCDEFG首先,针对先头的对象A,由于先头的位是“1”,因而和相邻的B替换。另外,重新排列操作对象的对象用[]围住。
B[A]CDEFG其后的位是“0”,此次不和相邻的位替换,而是把作为操作对象的对象设定为相邻的C。
BA[C]DEFG由于其后也是“0”,因而把相邻的D设定为操作对象。
BAC[D]EFG由于其后是“1”,因而和相邻的E替换。
BACE[D]FG由于还是“1”,因而也和相邻的F替换。
BACEF[D]G由于最后是“0”,因而结束重新排列。
BACEFDG至此,数据变换处理部8进行的基于信息摘要值的重新排列处理完成,作了重新排列处理的结构体数据被送到输出部3。
也就是说,这样,按照信息摘要函数输出的位串,可唯一决定对象的描述顺序。
图4是示出本实施方式的信息篡改检测装置的构成的构成图。
本实施方式的信息篡改检测装置的构成为使控制部11、输入部12、输出部13、存储部14、数据标准化处理部15、附加信息赋予处理部16、信息摘要处理部17、数据变换处理部18以及篡改判定处理部19通过总线20连接。
控制部11对输入部12、输出部13、存储部14、数据标准化处理部15、附加信息赋予处理部16、信息摘要处理部17、数据变换处理部18以及篡改判定处理部19中的数据输入输出进行控制。
输入部12是用于输入由上述信息嵌入装置嵌入透明信息的多个结构体数据组成的对象的接口部。
输出部13是用于输出由篡改判定处理部19判定有无篡改的判定结果(后述)的接口部。
存储部14与上述信息嵌入装置的存储部4同样,把同一附加信息作为共用关键字来存储。
数据标准化处理部15与数据标准化处理部5同样,根据上述第1规则,把输入到输入部12内的多个结构体数据进行排序。
附加信息赋予处理部16与上述信息嵌入装置的附加信息赋予处理部6同样,把存储部14存储的附加信息附加给标准化处理部5的输出结果。
信息摘要处理部17针对由数据标准化处理部15排序的多个结构体数据组成的位流,使用散列函数算出信息摘要。
数据变换处理部18把信息摘要生成处理部17算出的信息摘要作为关键字,并与上述数据变换处理部8同样,根据上述第2规则,把数据标准化处理部15排序的多个结构体数据或由附加信息赋予处理部16进一步赋予了附加信息的多个结构体数据进行排序。
篡改判定处理部19把数据变换处理部18作了数据变换的多个结构体数据和数据标准化处理部15排序前的多个结构体数据进行比较,如果这2种多个结构体数据一致,则判定为数据标准化处理部15排序前的多个结构体数据,即所输入的多个结构体数据未被篡改,如果这2种多个结构体数据不一致,则判定为数据标准化单元排序前的多个结构体数据被篡改。
并且,篡改判定处理部19针对数据变换处理部18作了数据变换的多个结构体数据,在数据变换前,当被赋予有附加数据时,如果这2种多个结构体数据一致,则判定为该附加数据也未被篡改,如果这2种多个结构体数据不一致,则判定为数据标准化单元排序前的多个结构体数据或者附加数据中的任何一方或者双方被篡改。
然后,参照附图,对本实施方式的数据提供系统的动作进行说明。图5是示出本实施方式的原本性保证系统的信息嵌入处理过程的流程图。并且,图6是示出伴随该过程的信息篡改检测处理过程的流程图。
作为信息嵌入处理,在信息嵌入装置中,首先准备作为由多个结构体数据组成的对象集合的三维形状模型数据。如果该三维形状模型数据被输入到输入部2内,则数据标准化处理部5根据预定的第1规则进行排序,并变换成标准数据表现形式。
然后,附加信息赋予处理部6把首部信息、共用关键字等的附加信息赋予给变换成标准数据表现形式的三维形状模型数据。
然后,信息摘要处理部7针对附加信息、作了标准化处理的三维形状模型数据的全部或一部分等进行信息摘要处理,并获得信息摘要值。
数据变换处理部8按照该信息摘要值的位流,根据第2规则,变换标准数据形式的表现。
至此,信息嵌入处理完成。
然后,作为信息篡改检测处理,在信息篡改检测装置中,准备被认为嵌入有信息的三维形状模型数据。如果该三维形状模型数据被输入到输入部12内,则数据标准化处理部15与数据标准化处理部5同样,根据预定的第1规则进行排序,并变换成标准数据表现形式。
然后,附加信息赋予处理部16与附加信息赋予处理部6同样,把首部信息、共用关键字等的附加信息赋予给变换成标准数据表现形式的三维形状模型数据。
然后,信息摘要处理部17与信息摘要处理部7同样,针对附加信息、作了标准化处理的三维形状模型数据的全部或一部分等进行信息摘要处理,并获得信息摘要值。
数据变换处理部18与数据变换处理部8同样,按照该信息摘要值的位流,根据第2规则,变换标准数据形式的表现。
篡改判定处理部19把数据变换处理部18作了数据变换的多个结构体数据和数据标准化处理部15排序前的多个结构体数据进行比较,如果这2种多个结构体数据一致,则判定为数据标准化处理部15排序前的多个结构体数据,即所输入的多个结构体数据未被篡改,如果这2种多个结构体数据不一致,则判定为数据标准化单元排序前的多个结构体数据被篡改。并且,篡改判定处理部19针对数据变换处理部18作了数据变换的多个结构体数据,在数据变换前,当被赋予有附加数据时,如果这2种多个结构体数据一致,则判定为该附加数据也未被篡改,如果这2种多个结构体数据不一致,则判定为数据标准化单元排序前的多个结构体数据或者附加数据中的任何一方或者双方被篡改。
因此,由于本实施方式的原本性保证系统通过利用原本性保证原理把某些数据的散列值作为关键字来改变对象的描述方法,按照用于表现数据的“冗余性”,即用于描述对象的顺序嵌入信息,因而完全不改变所表现的数据的“意义”和“品质”就能嵌入信息。不是明显地把信息嵌入,而是使数据结构具有意义。当作了篡改时,由于合适结构发生变化,因而具有可检测篡改的效果。
以下,对本实施方式的数据提供系统的更详细动作的示例进行说明。现在,对对象(基元)是三角形集合的情况加以考虑。另外,即使是一般多角形或旋转体、用任意算式模型表现的几何学模型,同样也能适用。
例如,假定有三角形T1~T100,把各自顶点表示为T1(T1_a,T1_b,T1_c)。此处,T1_a等表现三维矢量。
在数据结构中,用于描述T1至T100的顺序,并且,用于在三角形Ti中描述顶点(Ti_a,Ti_b,Ti_c)的顺序具有冗余性。最先,考虑例如任意基准点A,并从各自三角形的重心矢量接近A的一方进行排序。
甚至,对最先描述各自三角形的3个顶点中的哪个,也采用例如把距离任意基准点B最近的点设定为基点的方法,使各个三角形的描述方法也标准化。
这样使数据标准化。
然后,根据附属于该数据的附加信息(记载在首部内)或保密位串、或者被标准化的数据本身以及这些的组合,使用信息摘要函数来获得特定长度的位串。
由于三角形的3顶点的记载顺序考虑了3种,因而针对例如信息摘要位中的各位,决定要最先描述哪个顶点。这样变换被标准化的数据的表现。
此处,通过把基准点A或B的坐标、以及用于计算信息摘要的处理方法、使用什么作为在计算摘要时使用的数据等进行保密,可防止在被篡改的情况下不正当地变换数据。
上述信息嵌入装置和信息篡改检测装置在内部具有计算机系统。
然后,通过把与上述信息嵌入和信息篡改检测有关的一系列处理过程以程序形式存储在计算机可读取的记录介质内,并使计算机读出和执行该程序,进行上述处理。
也就是说,信息嵌入装置和信息篡改检测装置中的各处理单元和处理部是通过使CPU等的中央运算处理装置在ROM或RAM等的主存储装置中读出上述程序,并执行信息的加工和运算处理来实现的。
此处,计算机可读取的记录介质是指磁盘、光磁盘、CD-ROM、DVD-ROM、半导体存储器等。并且,可以把该计算机程序通过通信线路分配给计算机,并可以使收到该分配的计算机执行该程序。
权利要求
1.一种数据原本性保证系统,其包括信息嵌入装置,用于把信息嵌入到多个结构体数据内;以及信息篡改检测装置,用于对该信息嵌入装置嵌入信息的多个结构体数据的篡改进行检测,其特征在于,上述信息嵌入装置具有数据标准化单元,用于根据第1规则,把上述多个结构体数据进行排序;信息摘要生成单元,用于针对由该数据标准化单元排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;以及数据变换单元,用于把该信息摘要生成单元算出的信息摘要作为关键字,根据与上述第1规则不同的第2规则,把上述数据标准化单元排序的多个结构体数据进行排序;上述信息篡改检测装置具有数据标准化单元,用于根据上述第1规则,把多个结构体数据进行排序;信息摘要生成单元,用于针对由该数据标准化单元排序的多个结构体数据组成的位流,使用上述散列函数算出信息摘要;数据变换单元,用于把该信息摘要生成单元算出的信息摘要作为关键字,根据上述第2规则,把上述数据标准化单元排序的多个结构体数据进行排序;以及判定单元,用于把该数据变换单元排序的多个结构体数据和上述数据标准化单元排序前的多个结构体数据进行比较,如果该多个结构体数据一致,则判定为上述数据标准化单元排序前的多个结构体数据未被篡改,如果该多个结构体数据不一致,则判定为上述数据标准化单元排序前的多个结构体数据被篡改。
2.一种信息嵌入装置,其特征在于,该信息嵌入装置具有数据标准化单元,用于根据规定的规则,把多个结构体数据进行排序;信息摘要生成单元,用于针对由该数据标准化单元排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;以及数据变换单元,用于把该信息摘要生成单元算出的信息摘要作为关键字,根据与上述规则不同的规则,把上述数据标准化单元排序的多个结构体数据进行排序。
3.一种信息篡改检测装置,其特征在于,该信息篡改检测装置具有数据标准化单元,用于根据与信息嵌入装置的数据标准化单元相同的第1规则,把多个结构体数据进行排序;信息摘要生成单元,用于针对由该数据标准化单元排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;数据变换单元,用于把该信息摘要生成单元算出的信息摘要作为关键字,根据与上述信息嵌入装置的数据变换单元相同的规则且与上述第1规则不同的规则,把上述数据标准化单元排序的多个结构体数据进行排序;以及判定单元,用于把该数据变换单元排序的多个结构体数据和上述数据标准化单元排序前的多个结构体数据进行比较,如果该多个结构体数据一致,则判定为上述数据标准化单元排序前的多个结构体数据未被篡改,如果该多个结构体数据不一致,则判定为上述数据标准化单元排序前的多个结构体数据被篡改。
4.一种信息嵌入方法,其特征在于根据第1规则,把多个结构体数据进行排序;针对由该排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;把该算出的信息摘要作为关键字,根据与上述第1规则不同的第2规则,把上述排序的多个结构体数据进行排序。
5.一种信息篡改检测方法,其特征在于根据在权利要求4所述的信息嵌入方法中的第1规则,把多个结构体数据进行排序;针对由该排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;把该算出的信息摘要作为关键字,根据上述信息嵌入方法中的第2规则,把上述排序的多个结构体数据进行排序;把根据该第2规则排序的多个结构体数据和根据上述第1规则排序前的多个结构体数据进行比较,如果该多个结构体数据一致,则判定为根据上述第1规则排序前的多个结构体数据未被篡改,如果该多个结构体数据不一致,则判定为根据上述第1规则排序前的多个结构体数据被篡改。
6.一种存储有信息嵌入程序的计算机可读取的记录介质,该信息嵌入程序用于使计算机执行下述处理根据第1规则,把多个结构体数据进行排序;针对由该排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;把该算出的信息摘要作为关键字,根据与上述第1规则不同的第2规则,把上述排序的多个结构体数据进行排序。
7.一种存储有信息篡改检测程序的计算机可读取的记录介质,该信息篡改检测程序用于使计算机执行下述处理根据使计算机执行在权利要求6所述的信息嵌入程序来进行的排序处理中的第1规则,把多个结构体数据进行排序;针对由该排序的多个结构体数据组成的位流,使用规定的散列函数算出信息摘要;把该算出的信息摘要作为关键字,根据上述信息嵌入方法中的第2规则,把上述排序的多个结构体数据进行排序;把根据该第2规则排序的多个结构体数据和根据上述第1规则排序前的多个结构体数据进行比较,如果该多个结构体数据一致,则判定为根据上述第1规则排序前的多个结构体数据未被篡改,如果该多个结构体数据不一致,则判定为根据上述第1规则排序前的多个结构体数据被篡改。
全文摘要
提供了用于完全不改变所表现的数据的“意义”和“品质”就能嵌入和读出信息的信息嵌入和篡改检测装置及信息嵌入和篡改检测方法以及存储有信息嵌入和篡改检测程序的计算机可读取的记录介质。在信息嵌入装置中,根据第1规则,把多个结构体数据进行排序;针对排序结果算出信息摘要;把算出结果作为关键字,并根据与第1规则不同的第2规则进行排序。在信息篡改检测装置中,根据第1规则,把多个结构体数据进行排序;针对排序结果算出信息摘要;把算出结果作为关键字,并根据第2规则进行排序。把该排序结果和根据第1规则排序前的数据进行比较,如果一致,则判定为无篡改,如果不一致,则判定为有篡改。
文档编号G06F21/64GK1532776SQ20041000421
公开日2004年9月29日 申请日期2004年2月10日 优先权日2003年3月26日
发明者长谷川浩 申请人:精工爱普生株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1