基于点阵式字符编码与实体颜色的工程图密写技术研究

2012-04-07 02:15杨玉军杨夷梅尹湘锋
图学学报 2012年4期
关键词:工程图字符校验

杨玉军, 杨夷梅, 尹湘锋

(1. 怀化学院计算机科学与技术系,湖南 怀化 418008;2. 湖南科技大学数学学院,湖南 湘潭 411201)

基于点阵式字符编码与实体颜色的工程图密写技术研究

杨玉军1, 杨夷梅1, 尹湘锋2

(1. 怀化学院计算机科学与技术系,湖南 怀化 418008;2. 湖南科技大学数学学院,湖南 湘潭 411201)

针对数字工程图的版权保护问题和现有密写技术鲁棒性和实用性不强的特点,提出了一种基于点阵式字符编码与实体颜色的工程图密写技术算法。该算法先对要隐藏的信息进行点阵式编码处理,使字符具有图像的特性,然后根据Logistic混沌系统对该点阵式编码信息进行二值化处理加密,结合HVS将加密后信息和加密信息的校验码嵌入到工程图的实体颜色中,从而实现信息的隐藏和自校验。实验结果显示该算法对平移、旋转和编辑等攻击具有较好的鲁棒性和较高的嵌入量, 较好地解决了数字工程图的版权保护问题。

计算机应用;密写技术;实体颜色;字符点阵式编码;工程图

随着网络技术和多媒体技术的迅速发展和普及,计算机网络已经成为发布信息的重要媒介,这使得数据的交换和传输变成了一个相对简单的过程。大量的重要文件以数字形式存储和交换,信息安全问题变得非常地重要,数字密写技术也因此得到迅猛的发展。数字密写[1]是将秘密信息嵌入到载体中,通过公众媒体传输而不被察觉,以实现信息的隐藏。密写技术主要考虑以下几个方面的性能:

1) 不可见性:嵌入信息后,不会引起载体文件产生可以感知的失真;

2) 不可测性:对非法者来说,要检测到秘密信息的存在,并且提取出来应该是十分困难的;

3) 稳定性:隐藏信息能永久地存在,并在特定条件下可以提取出来;

4) 安全性:第三方在不知道隐藏算法和密钥的情况下是不能获得秘密信息的;

5) 鲁棒性:在第三方察觉载体文件可能存在隐藏信息而采取多种攻击技术进行破坏而能保证隐藏信息完整或基本完整;

6) 实用性:算法能在比较简单的条件下实现并能达到理论的性能,并能满足实际应用的需要。

工程图广泛应用于建筑、机械和服装等行业,它是设计师们的劳动成果,更是企业的重要资产,其版权保护一直是人们关注的问题。目前,已经有一些相关的研究[2],但还处于起步阶段。文献[3]提出了一种通过工程图中各实体顶点间的距离比例来嵌入信息的信息隐藏算法;在此基础上,文献[4]提出了一种改进的信息隐藏算法。虽然这些方法能够有效的抵抗平移、旋转、缩放和修改等攻击,但是由于修改了顶点间的距离会改变工程图的尺寸,因此在实际应用中可能会影响产品的加工与制造。文献[5]提出了一种基于实体调色板的信息隐藏算法,但不能抵抗编辑、修改甚至删除攻击,而且嵌入的信息量不高。在此,本文提出一种基于点阵式字符编码与实体颜色的工程图密写技术算法,该算法先对要隐藏的信息进行点阵式编码处理,使字符具有图像的特性,然后根据Logistic混沌系统对该点阵式编码信息进行二值化处理加密,结合HVS将加密后信息和加密信息的校验码嵌入到工程图的实体颜色中,从而实现信息的隐藏和自校验。实验结果显示该算法对平移、旋转和编辑等攻击具有较好的鲁棒性和较高的嵌入量, 较好地解决了数字工程图的版权保护问题。

1 点阵式字符编码和工程图实体特征

1.1 点阵式字符编码

点阵式字符编码是以字符的点阵字库为基础的字符编码技术,点阵字库是一个保存了所有文字的点阵数据的数据文件。使用过“文曲星”之类的电子辞典和LED的人们会发现上面显示的汉子就能够明显地看出“点阵”的痕迹,而计算机显示器的显示分辨率很高,肉眼一般无法区分,因此“点阵”的痕迹不是那么明显。

点阵、矩阵、位图这3个概念在本质上是有联系的,从某种程度上来讲,这3个就是同义词。点阵从本质上讲就是单色位图,他使用一个比特来表示一个点,如果这个比特为0,表示某个位置没有点,如果为1表示某个位置有点。矩阵和位图有着密不可分的联系,矩阵其实是位图的数学抽象,是一个二维的阵列。位图就是这种二维的阵列,这个阵列中的(x,y)位置上的数据代表的就是对原始图形进行采样量化后的颜色值。以UCDOS中文宋体字库为例,根据国标汉字库中的每一个字均由256点阵来表示的标准,每一个字由16行16列的点阵组成,每一个点可以理解为一个像素,因此每一个字的字形可以理解为一幅图像。事实上任何一个字符不仅可以显示为字符,也可以显示为256像素的图像。

1.2 工程图实体特征

AutoCAD是美国Autodesk公司的产品,广泛应用于电子电路、机械设计、服装鞋帽、航空航天等诸多领域。现已经成为国际上广为流行的绘图工具。本文将以AutoCAD 2004为应用工具,讨论工程图的密写技术。

组成工程图的实体元素主要有点、线段、圆和弧,其中以线段最多。实体是属于某个层的对象,在每一层上都可以进行图形绘制和设置线段的线型和颜色。AutoCAD支持多种颜色的选择,选择不同的颜色可以是图形更美观和查看。在默认情况下,AutoCAD中层的颜色为白色,层中实体颜色为随层,同时实体的颜色还可以选择其它颜色。如图1所示,AutoCAD提供了3种颜色的选择方式:

1) AutoCAD颜色索引颜色;

2) 使用真彩色指定颜色设置,包括色调、饱和度和亮度(HSL)颜色模式和红、绿、蓝(RGB)颜色模式,使用真彩色功能时,可以使用1600多万种颜色;

3) 配色系统或用户自定义的配色系统指定颜色。

图1 CAD颜色选择方案

2 基于工程图实体颜色的密写技术

由于在大多数情况下,工程图主要是由点、线段、弧和圆实体组成,可以将要隐藏的信息隐藏在这些实体的颜色中。然而衡量一个密写技术的好坏,一方面取决于其抗攻击能力,另一方面取决于人的主观视觉特性,若目标工程图中含有某些人眼不敏感或者“不在乎”的信息,那么对观察者而言,就意味着密写技术较好。因此要在密写技术必须考虑人眼的视觉特性。

人眼视觉系统(Human Visual System,HVS)的掩蔽特性主要表现在3个方面:亮度特性、频率特性和颜色感知特性。而对文本内容主要考虑的是颜色感知特性。从颜色感知特性来说,HVS对不同的颜色有不同的感知。对实体颜色的像素值I=RGB(VR,VG,VB),由Weber定律其可见性检测门限为:

这表明人眼是无法对实体颜色在RGB(±0.02×VR,±0.02×VG,±0.02×VB)范围内进行区分的。因此,从人体视觉系统特性来看,对工程图实体颜色做微小的改变来隐藏信息会具有很好的隐藏效果。与此同时,工程图的实体颜色的改变不会改变工程图的内容和阅读,隐藏信息后的工程图与没有隐藏信息的工程图实际上没有任何差别的。如图1和实验表明,实体颜色在上下调整5个单位是不会影响工程图的视觉效果的。

3 基于点阵式字符编码与实体颜色的工程图密写技术设计

3.1 密写信息的嵌入算法

密写信息的嵌入算法具体描述如下:

步骤 1 输入要密写的信息W和待处理的工程图D;

步骤 2 将要密写的信息W转换成为点阵式字符编码序列M={m1, m2,…, mi,…, mn},其中mi是要密写信息的某个字符的点阵式编码;

步骤 3 逐个将点阵式字符编码序列mi转换成二进制形式{bi×1×1,…, bi×j×k,…, bi×r×c},其中bi×j×k是要密写信息字符的点阵式编码的一位二进制位,表示点阵式的j行k列的一位二进制位,r和c是点阵式的阵列的行数和列数,最后形成所有点阵式字符编码序列的二进制形式B={b1×1×1, b1×1×2,…, bi×j×k,…, bn×r×c};

步骤 4 在密钥K的作用下,由混沌系统L生成混沌序列,经过二值化处理后,得到二值化的混沌序列S={s1, s2,…, sx,…, sn},其中sx∈{0,1};

步骤 5 获得工程图D的顺序实体索引集合E={ e1, e2,…, ei,…, en}和实体实际颜色集合C={ c1, c2,…, ci,…, cn};

步骤 6 根据序列S的值来修改实体的颜色,设sx为二位二进制数,当sx值为“11”、“10”和“01”时,则将对相应实体颜色的RGB值做微小的改变,当sx值为“00”时,则不在该实体对象中密写信息,但也对相应实体颜色的RGB值做微小的改变;

实体颜色的RGB值做微小的改变具体如下:

式中的i,j,k是bi×j×k的下标号,bi×j×k是要密写信息字符i的点阵式编码的一位二进制位,表示点阵式的j行k列的一位二进制位;上式中的K’是由密钥K产生的一个整数,表示序号x处的Rx的修改值的校验码与x的偏移距离,校验码保存在Gx+K’值中;当Sx=y(y取值3,2,1)时,Bx′ >0 a nd Bx′ ≠5,当Sx=0时,Bx′ =0 or Bx′=5 ,B值保存了字符号。

步骤 7 待所有信息嵌入后,即获得含有密写信息的工程图DW。

3.2 密写信息的提取或检测算法

密写信息的提取或检测算法具体描述如下:

步骤 1 输入含有密写的信息W的工程图DW;

步骤 2 在密钥K的作用下,由混沌系统L生成混沌序列,经过二值化处理后,得到二值化的混沌序列S={s1, s2,…, sx,…, sn},其中sx∈{0, 1};

步骤 3 获得含有密写信息的工程图DW的顺序实体索引集合E={ e1, e2,…, ei,…, en}和实体实际颜色集合C={ c1, c2,…, ci,…, cn};

步骤 4 根据序列S的值来检测和提取bi×j×k的值,具体规则如下:

规则 1 当sx值为“11”、“10”或“01”时,如果所对应实体颜色的B值 Bx′ >0 a nd Bx′≠5,则对应的信息bi×j×k=11、bi×j×k=10 或 bi×j×k=01;

规则 2 当sx值为“11”、“10”或“01”时,如果所对应实体颜色的B值 Bx′ =0 or Bx′=5 ,说明该处被攻击过了,需要进行校验值进行校验,则向前偏移K'个单位,读取校验信息,如果校验成功,则正确设置bi×j×k的值,如果校验失败,则令bi×j×k=0;

规则 3 当sx值为“11”、“10”或“01”时,相邻实体颜色的B值 B′x不符合局部递增关系,则说明该处被攻击过了,需要进行调整;

规则 4 当sx值为“00”时,则不做任何处理,继续后面的操作。

步骤 5 循环执行步骤3,直到所有的信息都被检测处理,得到二进制集合B={bi×1×1,…, bi×j×k,…, bi×r×c};

步骤 6 对集合B进行为点阵式字符编码,得到序列M={m1, m2,…, mi,…, mn};

步骤 7 对mi进行点阵式字符编码校正和识别处理,即密写信息W。

4 算法的性能分析

算法测试在P4 2.6GHz×2,DDRAM 2048M,Windows XP Professional 5.1,AutoCAD 2004 以及VBA开发环境中进行,图2和图3分别是原始的部分工程图和含有密写信息“HuaiHua UnIversIty”的部分工程图。对比图2和图3,密写信息在工程图中是不可察觉的,同时经过测试,可以正确提取隐藏信息“HuaiHua University”。

图2 原始的部分工程图

图3 含有密写信息的部分工程图

4.1 嵌入量分析

由于该算法是通过修改实体颜色来密写信息,且每一个实体只能隐藏2bit的信息,且算法采用了混沌系统来产生二值化的伪随机序列来选择实体对象进行信息隐藏,根据混沌系统的特性,其“0”和“1”的分布是均匀的,因此“11”、“10”、“01”和“00”都接近0.25,因此对于一个包含N个实体对象的工程图来说,其理论可嵌入信息容量Capa为3N/2 bit,即

而文献[5]提出的算法的嵌入量为N/2 bit,因此本文提出的算法嵌入量是文献[5]中提出算法的嵌入量的3倍。

4.2 抗编辑攻击能力分析

在实际应用中,工程图的实体对象可能被进行部分的修改或移动,甚至删除等编辑操作,因此,需要分析该算法是否具有很好的抗编辑等攻击能力。考虑工程图的正常编辑,以及工程图的蓄意破坏、篡改密写信息等行为通常针对工程图连续的若干实体对象,这样对密写信息连续嵌入的算法是不利的,而对于非连续的编辑和攻击,算法具有很好的效果。

4.2.1 抗插入或移动攻击能力分析

为了分析算法的抗插入或移动攻击能力,首先在一个工程图中嵌入秘密信息“HuaiHua University”,然后将已嵌入秘密信息的工程图分别进行插入一些实体对象或移动一些实体对象处理后,再提取处理后工程图中的秘密信息。表1为工程图进行插入或移动部分实体对象后的秘密信息提取实验结果。

表1 插入或移动部分对象后的秘密信息提取实验结果(实验次数:15)

4.2.2 抗编辑或删除攻击能力分析

为了分析算法的抗编辑或删除攻击能力,首先在一个工程图中嵌入秘密信息“HuaiHua University”,然后将已嵌入秘密信息的工程图分别进行随机或连续的编辑或删除部分实体对象处理后,再提取处理后工程图中的秘密信息。表2为工程图进行编辑或删除部分实体对象后的秘密信息提取实验结果。

表2 编辑或删除部分对象后的秘密信息提取实验结果(测试次数:15)

由表1可知,对已嵌入隐藏信息的工程图分别进行插入部分实体对象并不影响秘密信息的提取,从而表明了算法具有较好的抗插入攻击能力,但移动操作对算法提取秘密信息的影响较大,理论情况与实验情况基本符合,即便采用了自校验技术对连续的多实体对象攻击,算法还是具有很弱的抗击能力。

由表2可知,对已嵌入隐藏信息的工程图分别进行编辑或删除不连续的部分实体对象并不影响隐藏信息的提取,从而表明了算法具有较好的抗随机编辑或删除攻击能力,这也是大部分实际情况的编辑操作,因此算法具有较好的实际应用价值。但连续编辑或删除操作对算法提取隐藏信息的影响较大,理论情况与实验情况基本符合,即便采用了自校验技术也没有办法达到较高或完全提取的水平,这正是日后工作要努力解决的问题。

4.3 与普通基于实体颜色的算法性能对比分析

该算法采用了自校验技术,在嵌入秘密信息时同时把秘密信息的校验信息保存在不相邻的且具有一定距离的位置上,这样对连续攻击具有一定的抗击能力,而普通的没有自校验的基于实体颜色的算法却不具有抗连续攻击能力,只要连续的几处被攻击过后,一般都会使秘密信息被破坏,而无法恢复。连续和随机编辑攻击是一个工程图的实际操作的需要,因此普通的没有校验的算法没有实际应用价值,而本文提出的算法则可以抵抗目前实际的简单连续或随机的编辑操作攻击。

该算法采用了字符点阵式编码技术,在嵌入信息时嵌入的是秘密信息字符的点阵式的一个点素,而不是字符的ASCII或其它编码的一个二进制位。在提取秘密信息时,算法提取的也是字符的点阵式的一个点素,即使字符的部分点阵式编码的丢失,也可以根据字符的点阵式识别技术进行纠正。而普通算法在提取信息时,丢失了任何一个编码二进制位都是无法纠正的,变成另外一个字符而发生信息错误,这是因为机器的字符编码是采用连续编码的方式。图4是实验过程中提取隐藏信息“a”时的实验结果图。图4(a)是完整提取信息“a”的实验结果图;图4(b)和图4(c)是在有部分实体对象进行编辑攻击之后,有丢失点阵式点素情况下提取信息“a”的实验结果图,在这种情况下,算法可以正确识别出信息是“a”;图4(d)是在较大范围编辑攻击下提取的信息“a”的实验结果图,在这种情况下,算法基本可以识别出信息是“a”,但实验中也有几次没有正确识别出来,经查看提取的实验结果图,那是连续局部大范围攻击的原因造成的;图4(e)是在连续大范围编辑攻击下提取的信息“a”的实验结果图,在这种情况下,算法无法正确识别提取的信息是信息“a”。

图4 提取秘密信息“a”时的实验图

4.4 抗图形处理攻击能力分析

在实际情况下,工程图一般需要进行一些图形处理操作,如平移、旋转和缩放等,因此,需要分析算法针对这些操作的抗攻击能力。

4.4.1 抗平移攻击能力分析

为了分析算法的抗平移攻击能力,首先在工程图中嵌入秘密信息“HuaiHua University”,然后将已嵌入秘密信息的工程图分别进行随机多次平移操作后,再分别提取工程图中的秘密信息。测试结果显示,在经过多次平移后的工程图中都能正确提取秘密信息,如表3所示,表明算法具有很好的抗平移攻击能力。

表3 工程图平移后的秘密信息提取实验结果(测试次数:15)

4.4.2 抗旋转攻击能力分析

为了分析算法的抗旋转攻击能力,同样首先在工程图中嵌入秘密信息“HuaiHua University”,然后将已嵌入秘密信息的工程图分别进行随机多次旋转操作后,再分别提取工程图中的秘密信息。测试结果显示,在经过多次旋转后的工程图中都能正确提取秘密信息,如表4所示,表明算法具有很好的抗旋转攻击能力。

表4 工程图旋转后的秘密信息提取实验结果(测试次数:15)

4.4.3 抗缩放攻击能力分析

为了分析算法的抗缩放攻击能力,同样首先在工程图中嵌入秘密信息“HuaiHua University”,然后将已嵌入秘密信息的工程图分别进行随机多次缩放操作后,再分别提取工程图中的秘密信息。测试结果显示,在经过多次缩放后的工程图中都能正确提取秘密信息,如表5所示,表明算法具有很好的抗缩放攻击能力。

表5 工程图缩放后的秘密信息提取实验结果(测试次数:15)

4.5 抗组合攻击能力分析

抗组合攻击能力是指对嵌入秘密信息后的工程图进行任意多种以上的攻击方法后,算法对处理后的工程图能否正确提取秘密信息的能力。为了分析算法的抗组合攻击能力,同样首先在工程图中嵌入秘密信息“HuaiHua University”,然后将已嵌入秘密信息的工程图随机进行前面提到的修改、移动、修改、删除、平移、旋转和缩放七种操作中的多种操作任意组合操作处理后,再分别提取工程图中的秘密信息。测试结果显示,在经过多次组合操作处理后的工程图中都能较好地提取秘密信息,如表6所示,表明算法具有较好的抗组合攻击能力。

表6 工程图组合攻击后的秘密信息提取实验结果(实验次数:15)

由于算法对平移、旋转、缩放、修改和插入攻击具有很好的鲁棒性,因此对这几种操作的任意组合攻击算法同样具有很好的鲁棒性。而对于移动和删除攻击算法具有较好的鲁棒性,因此算法对所有情况的组合攻击中主要取决于算法的抗移动和抗删除攻击能力。

6 结 论

针对工程图的版权保护问题和现有密写技术鲁棒性和实用性不强的特点,提出一种基于点阵式字符编码与实体颜色的工程图密写技术算法,该算法先对要隐藏的信息进行点阵式编码处理,使字符具有图像的特性,然后根据Logistic混沌系统对该点阵式编码信息进行二值化处理加密,结合HVS将加密后信息和加密信息的校验码嵌入到工程图的实体颜色中,从而实现信息的隐藏和自校验。实验结果显示该算法对平移、旋转和编辑等攻击具有较好的鲁棒性和较高的嵌入量,较好地解决了数字工程图的版权保护问题。即使在提取信息时出现轻度错误,算法也可以根据特定的校验功能进行校验,即使校验失效时还可以根据字符点阵式编码图像识别技术进行字符识别,这样大大提高了算法的抗攻击能力。实验结果显示该算法对工程图的实体对象可能被进行部分的修改或移动,甚至删除等编辑操作攻击具有较好的鲁棒性,同时对工程图的平移、旋转和缩放等一般图形处理操作攻击也具有很好的鲁棒性。

与文献[3]和文献[4]中提出的算法相比,本文提出的算法没有修改顶点间的比例和距离,因此不会改变工程图的加工尺寸,同也不会对产品的生产和加工制造产生任何影响。与文献[5]相比,通过一个实体对象一次嵌入2bit的秘密信息,提高了嵌入量,是文献[5]中提出算法的3倍,同时引入了校验信息和嵌入信息编组技术,算法能抵抗实体对象的普遍编辑操作,如插入、修改、移动和删除,而文献[5]中提出的算法基本上没有这个抗攻击能力,其次是算法引入了字符点阵式编码技术,即使工程图受到了通过校验也不可正确提取的攻击时,算法允许10% ~30%的失败提取信息也能通过字符点阵式识别技术而识别出嵌入的秘密信息是什么,这是目前其它文献还没有提到过的一种新技术,这样大大提高了算法的容错和抗攻击能力。

[1] 邓新文, 王国才, 李 娟. 一种安全图像小波域密写方案[J]. 计算机工程与应用, 2007, 43(36): 1526-1529.

[2] 黄晓生, 顾景文. CAD图形数据数字水印综述[J].工程图学学报, 2005, 26(6): 140-145.

[3] 汪亚顺, 徐铭政. 基于二维工程图的数字水印比例算法[J]. 南昌大学学报(工科版), 2003, 25(4): 29-31.

[4] 汪亚顺, 徐铭政. 基于二维工程图的数字水印扩频算法[J]. 南昌大学学报(工科版), 2005, 27(4): 91-94.

[5] 彭 飞, 龙 敏, 孙星明. 基于 HVS与实体调色板的二维工程图信息隐藏算法[J]. 工程图学学报, 2009, 30(3): 71-75.

Research on steganography based on dot-matrix character code and entity color for engineering graphics

Yang Yujun1, Yang Yimei1, Yin Xiangfeng2
( 1. Department of Computer Science and Technology, Huaihua University, Huaihua Hunan 418008, China;2. School of Mathematics and Computing Science, Hunan University of Sciences and Technology; Xiangtan Hunan 411201, China )

Aiming at the problem of copyright protection for digital engineering drawing and the deficiency of robustness and practicability of the steganography for digital engineering drawing, an algorithm of steganography based on dot-matrix character code and entity color for engineering graphics is proposed. In the algorithm of steganography, the hidden message is firstly coded by dot-matrix, and the character of the message has the image characteristic property. Then the coded information is encrypted by a two-value chaotic sequence generated by Logistic map system. To realize the information hiding and self-checking, the encrypted information and its checksum are embedded into the entity color of engineering drawing combining with the HVS. The experiment results show that the algorithm has a higher embedded capacity and a better robustness for some attacking of moving, rotation and edit. And the problem of copyright protection for digital engineering drawing is solved in a good way using the algorithm.

computer application; steganography; entity color; character dot-matrix code; engineering drawing

TP 391.41

A

2095-302X (2012)04-0156-07

2010-10-11

怀化学院科研资助项目(HHUY2011-17);怀化学院教改资助项目(201125);怀化学院重点学科建设资助项目

杨玉军(1978-),男,湖南洞口人,讲师,主要研究方向为图像处理和信息安全等。

猜你喜欢
工程图字符校验
四合一铅笔刀设计
使用Excel朗读功能校验工作表中的数据
面向工程认证的机制专业工程图学(一)课程教学探索
字符代表几
一种USB接口字符液晶控制器设计
图片轻松变身ASCⅡ艺术画
MASTERCAM工程图出图功能研究
HBM电子称与西门子S7-200系列PLC自由口通讯
炉温均匀性校验在铸锻企业的应用
电子式互感器校验方式研究