基于藏传佛教纹饰符号构造纹理的信息隐藏方法
2022-10-24吴秀琪张春玉丁泽威郭晨飞
吴秀琪,张春玉,丁泽威,郭晨飞
(西藏民族大学信息工程学院,咸阳 712082)
0 引言
信息隐藏技术的相关研究最早开始于上个世纪90年代中期,历经多年的发展成为通讯信息安全领域的重要研究方向。传统的信息隐藏方式大多是将秘密信息隐匿于普通的媒体介质中,信息窃取者发现秘密信息的难度增加,从而达到信息隐蔽传输的目的。纵观信息隐藏技术的发展进程,出现了许多像数字水印技术、隐写术、可视密码技术等十分优秀的隐写方法,为国家信息安全体系的完善以及信息安全水平的提升打下坚实的基础。
鉴于当前信息隐藏的技术大多采用对常见的数字载体(视音频、数字图像等)进行适当的修改,而后嵌入秘密信息的方式,攻击者不断优化隐写分析算法,通过分析秘密信息与媒体介质在统计特征上的差异,判别秘密信息在媒体介质中的隐藏位置,预测秘密信息的数据量,使得秘密信息暴露的可能性大大增加。此类基于载体修改式的信息隐藏只要修改则一定会留下痕迹,从而为隐写分析者留下可乘之机。为了从根本上消除修改载体带来的风险,零隐藏概念、无载体信息隐藏技术被提出。
无载体信息隐藏发展至今,大致可以分为编码/映射式和生成式。其中生成式无载体信息隐藏也称为构造式信息隐藏,是指在不预先指定原始载体的情况下,由秘密信息按照一定规则直接生成含密载体。该类方法又分为半构造式和完全构造式。半构造式信息隐藏由事先给出的载体构造预设条件,根据秘密信息并遵循一定的构造规则生成含密载体,含密载体属于特定类型。Otrori和Kuriyama教授最先提出不提前指定数字载体,在纹理合成的过程中实现数据嵌入的基本思路。该方法在常规的纹理样本图像中选取多个彩色样本点,然后将二值数据和彩色样本点之间的关系用LBP码进行映射,最终根据秘密信息的内容从纹理样本图像中选取恰当的纹理图像,生成一副具有传统美学工艺的含密纹理图像。
上述基于纹理合成的半构造式信息隐藏方法,生成的纹理图像类似加密数据,反而容易引起攻击者怀疑。本文以藏传佛教特有的纹饰符号为基础,利用模拟水影画(又称湿拓画,marbling)的方法来隐藏秘密信息,该方法需要先在一张白纸上写出需要传递的秘密信息,利用模拟marbling的方法对该图案进行形变,再用相似的背景图案对其余的空白部分进行填充,最后生成具有藏文化特色的含密纹理图像。该方法不仅具有一定的隐写能力,并且生成的藏文化特色纹理不容易引起攻击者怀疑,视觉隐蔽性更强。
1 总体方案
本文提出的信息隐写方法的总体方案如图1所示。在信息隐藏阶段,首先构建纹饰符号库,其中包含多种单元,包括图形的颜色、纹理等特征,按照其特征,选择或构造特征值进行编码。其次,确定纹饰符号与二进制数据之间的映射关系,从而形成秘密信息、二进制数据与纹饰符号之间的映射表。再次,将秘密信息分成两部分,一部分从纹饰符号库中选择相应的单元,确定每个单元的图形特征和背景颜色,同时根据另一部分秘密信息在画布上选择合适的坐标值,然后将选定的纹饰符号摆放到画布相应的坐标值处形成一幅源含密图像。最后,在填充过程中利用marbling(水影画)方法对生成的图像进行多次齿状变换和正弦变换,随机选择干扰符号摆放到画布上,剩余空白部分选择与纹饰符号相近的颜色来填充,得到具有复杂纹理结构的含密纹理图像。
图1 总体方案流程图
秘密信息的提取是信息隐藏的逆过程,信息提取者和信息隐写者需要事先约定共享相同的纹饰符号库,然后信息提取者对含密图像去除背景颜色和干扰符号,并进行逆变换操作,进而根据特征解码得到秘密信息。
2 隐写方案
2.1 构建纹饰符号库
根据秘密信息绘制源图像前,选择具有不同特征的纹饰符号来代表不同的二进制数据,本文将前期搜集的藏传佛教纹饰符号进行整理分类,并将其特征种类记为={,,},其中E可表示为纹饰符号、颜色及坐标等。每种E可有多种取值,={,,…,S},其中,,…,S表示不同纹饰符号,={,,,},其中,,,分别表示红、绿、蓝、黄四种颜色。将二进制数据与E的取值空间相互对应,则E的每个取值可与多个比特相对应。
表1给出一个简单的示例,此纹饰符号库中包含两个特征种类:纹饰符号和颜色。本实例所选的四个纹饰符号均为前期搜集整理的纹饰符号库中随机选取,每种纹饰符号对应2比特的二进制数据,颜色包含四种,分别是红色、蓝色、黄色和绿色,每种颜色也对应2比特的二进制数据。此处需要说明的是,由于信息隐藏者和信息提取者均需要利用该纹饰符号库对秘密数据进行编码,因此信息提取者和信息隐藏者需要事先约定共享相同的纹饰符号库。
表1 纹饰符号库及编码示例
此外,该纹饰符号库中应该还包括已定义完成的背景颜色,如本示例中的值,此值采用RGB颜色值。应注意的是,选择的背景颜色应包含在纹饰符号库的特征种类颜色中,同时应与选择的纹饰符号的颜色相近,以便于纹饰符号的隐写。
2.2 嵌入秘密信息
信息隐藏者根据纹饰符号库中定义的各特征的取值空间决定每个纹饰符号携带秘密信息的数量,而在信息隐藏过程中,每个纹饰符号包括多种特征,因此仅需选择部分特征来表示秘密数据。本文将秘密信息分为三部分,第一部分秘密信息为对应的藏传佛教纹饰符号,本文选取典型的统计特征(如像素和等)作为纹饰符号的特征值;第二部分秘密信息为对应的不同颜色,可以采取2比特的二进制数据表示纹饰符号颜色;第三部分为对应符号在画布上的坐标。在画布上作一个×直角坐标系,随机选取个点,并将这些点作为每个纹饰符号的形心坐标。
信息隐藏者需要将每个单元(纹饰符号和颜色确定后的图形)摆放到画布上,由于目前常见的信息隐藏单位通常是1个字节,因此可以选择2比特的秘密数据来表示每个单元在画布上的形心坐标位置。此外,由于每个单元的形状、颜色及其摆放位置等特征均由秘密数据决定,为方便后续秘密信息的提取,一般将每个单元在画布上的位置摆放得较为稀疏,同时在画布上也会摆放多个干扰符号,使得信息窃取者难以确定秘密信息隐藏的位置,继而提高信息隐藏的安全性。
2.3 生成含密图像
在确定个单元纹饰符号的坐标及其特征值后,将确定的纹饰符号嵌入到画布上,以画布的最左上方为坐标原点,轴从左向右递增,轴从上向下递增。在嵌入纹饰符号前,需要预设好一定面积内可摆放的纹饰符号的最大数目。信息隐藏者一般通过对源含密图像进行形变操作来达到具有水影画效果的纹理图,对图像进行形变操作需要用到形变函数,常见的形变函数有齿状变换、斜变换、正弦变换、正切变换、幂函数变换等。进行信息隐藏的过程中,为生成较为复杂的纹理图,可选择多种形变函数对源含密图像进行形变操作,本文仅选取齿状变换和正弦变换来进行形变操作。
正弦变换是进行形变操作的常用函数之一,假设源含密图像中某一纹饰符号的摆放位置为(,),经过操作后得到(,),使用的操作为
以上各式中,为正弦变换的波长,为振幅,为相位,为形变的偏移量。
另一种齿状变换在方向和方向分别进行形变操作,假设源含密图像中某一纹饰符号的摆放位置为(,),经过齿状变换后的映射点为(,),则变换过程为
以上各式中,表示最大位移量,控制齿形间距的大小,fmod(·)为求余函数。
对源含密图像进行形变操作后,信息隐藏者在源含密图像的背景空白处添加一些与已有符号的特征相似的背景图形,即干扰符号,而干扰符号由纹饰符号库中纹饰符号不规则变换产生,同时填充与选定的纹饰符号颜色相近的背景颜色,以增加隐秘性,达到视觉上较为协调的效果,如图2所示。
图2 初次绘制图像
在添加干扰符号后,信息隐藏者对初步绘制完成的源含密图像仍然可以进行多次形变操作,从而获得更为复杂的纹理图像。为了提高秘密信息的安全性,隐写者通过对形变的顺序和参数进行加密,生成读取秘密信息所必须的密钥,通过信任的安全通道将密钥发送给提取者。
2.4 提取秘密信息
提取秘密信息时,提取者与隐写者共享纹饰符号库,根据纹饰符号库中事先定义好的背景色除去图像中填充的背景图案,得到仅包含隐写单元的图像。在接收到发送者发送的密钥后,根据密钥对源含密图像进行形变的反操作。然后,利用卷积滤波确定每个符号所处位置,读取其形心坐标,进而提取其中部分的秘密信息。最后,根据纹饰符号库不同特征对应的秘密数据,提取得到相应的秘密信息。
3 实验结果
本文通过大量实验来验证此隐写算法,在实验中首先建立一个纹饰符号库,库中包含的特征有藏传佛教纹饰符号和颜色,ཀ代表“00”,྾代表“01”,ཏ代表“10”,བ代表“11”;颜色特征包括四种:红色、绿色、蓝色和黄色,分别表示二进制数据“01”“10”“11”“00”,即每个单元可表示4比特的秘密信息;同时秘密信息在画布上的摆放位置也代表2比特的秘密信息,也即每个单元可表示6比特的秘密数据。此外,纹饰符号库中还定义了四种背景颜色,分别是[255,99,71]、[173,255,47]、[135,206,235]、[255,215,0]。
随机产生一定比特的二进制数据作为秘密信息,将这些秘密信息划分成每6比特作为一个秘密信息数据单元,根据每个秘密信息数据单元从纹饰符号库中选取对应的纹饰符号,确定在画布上的摆放位置。图3是生成含密纹理图像的实验结果,其中图3(a)是从纹饰符号库中选取对应的纹饰符号摆放到画布上,画布大小为512×512;图3(b)是在图3(a)的基础上进行正弦变换和齿状变换,添加干扰符号,初步生成的含密纹理图像;图3(c)是在图3(b)的基础上添加背景颜色得到含密纹理图像。其中使用的参数为:正弦变换中=50、=12、=π/3、=π/2,齿状变换中=40、=84、=20。由图3(c)可观察到,此方法生成的含密纹理图像具有良好的视觉美学效果。
信息提取者根据接收的具有传统视觉美学效果的含密纹理图像图3(d),首先对其去除背景颜色和干扰符号,可以得到图3(e);再进行正弦逆变换和齿状逆变换,根据特征解码获取含密数据单元和位置坐标,如图3(f),从纹饰符号库中查找对应的纹饰符号的特征信息,最终得到秘密信息。
图3 含密纹理图像的生成与秘密信息的提取
通过添加不同的干扰符号和背景颜色或采取不同的形变操作,可以得到具有不同视觉效果的含密纹理图像。图4是添加不同的干扰符号的一组实验结果,其中图4(a)是在2048×2048画布上摆放纹饰符号后的图像;在图4(a)的基础上经过一次正弦变换,然后再进行两次不同方向上的齿状变换后可以得到图4(b);在图4(b)上添加与上一组实验不同的干扰符号后可获得图4(c);添加上背景颜色后可获得含密纹理图像,如图4(d)所示。
图4 含密纹理图像的生成
大量实验表明,采用添加藏文化特征的干扰符号、背景色等方法,能成功地利于藏传佛教纹饰符号进行形变的模拟marbling操作,进而生成具有藏文化特色的纹理图。该含密纹理图区别于其他同类方法生成的类似加密数据的纹理图像,因为具有明显的藏文化特色而接近自然图像,不容易引起攻击者的怀疑,因此具有更强的隐蔽性。
4 结语
西藏在信息化建设方面取得了巨大成功,信息安全也成为当前研究重点。为了进行西藏特色的信息安全研究,本文通过模拟水影画的方法实现基于藏传佛教纹饰符号的半构造式信息隐藏。在隐藏过程中充分考虑藏文化特色的图像语义特征,使含密纹理图像的生成与秘密数据的隐藏同步进行。用藏传佛教纹饰符号不同的纹理特征表征二进制数据,建立纹饰符号与二进制数据之间的映射关系,在初次绘制的原图像上添加干扰符号和背景颜色,并进行一系列的可逆形变操作,最终生成一副具有藏文化特色的含密纹理图像。实验结果表明,该方法较同类方法生成的含密纹理图像不仅具有更好的视觉美学效果,而且隐蔽性更强。