文本文件秘密信息加密及隐藏方案

2016-05-04 07:51
渭南师范学院学报 2016年4期
关键词:数字水印

孙 萧 寒

(渭南师范学院 数理学院,陕西 渭南 714099)



文本文件秘密信息加密及隐藏方案

孙 萧 寒

(渭南师范学院 数理学院,陕西 渭南 714099)

摘要:传输秘密信息的方法通常是在传输前对其加密,然而加密后的信息往往不具有可读性,因而更易受到攻击。为避免吸引攻击者的注意,可采用将秘密信息隐藏于普通文本文件中以常规渠道传输的方案。在此方案中,发送方先将秘密信息加密,再将加密的秘密信息嵌入普通文本文件以实现秘密信息的加密与隐藏;然后,发送方将加密秘密信息的因子嵌入文本文件的水印,并合成文本文件和水印后发送给接收方;接收方收到文件后从中提取并恢复秘密信息,并根据水印中嵌入的信息判断秘密信息是否被篡改过。该方案既可以实现秘密信息的加密,又可以实现秘密信息的隐藏。

关键词:信息隐藏;信息加密;数字水印

0引言

政府或企业总会传输一些涉密的信息,这些信息因为会带来政治或经济上的利益,所以总会吸引一些攻击者的注意。保护这些秘密信息免受攻击的通常做法是使用密钥加密涉密信息,使其转换成密文再进行传输。然而转换成的密文由于不具有可读性反而更容易吸引攻击者,因此,将涉密信息隐藏在看似正常的文件中,以常规渠道传输可以避免引起攻击者的注意[1]。

基于图像的信息隐藏技术是近年来发展的一个主流方向[2],然而政府和企业并不经常传输图像文件,而是经常传输文本文件。采用文本文件传输秘密信息虽然不易引起攻击者的注意,但是,从文本文件中提取出隐藏的秘密信息比从图像文件中提取秘密信息要容易,一旦涉密信息被攻击者截获,将会造成不可挽回的损失。因此,为防止秘密信息泄露,本文提出一种将水印技术与信息隐藏技术相结合的文本文件秘密信息隐藏方案。该方案通过对秘密信息加密,将密钥嵌入水印,一方面保证了秘密信息隐藏于文本文件中,另一方面保证了万一被隐藏的秘密信息泄露,接收方也可以根据水印来判断隐藏的秘密信息是否被篡改。

1加密隐藏秘密信息

1.1初始化

基于身份的加密系统(IBE)可以在发送方和接收方之间进行安全通信。在IBE系统中,发送方和接收方必须在同一个私钥发生器(PKG)注册,PKG产生并分配私钥给发送方和接收方。首先,PKG产生主密钥s;然后,发送方和接收方将自己的身份标识IDi发送给PKG;最后,PKG将发送方和接收方的身份标识作为他们的公钥,并映射他们的身份标识IDi到椭圆曲线(ECC)上的一点Qi,计算pvi=sQi作为私钥分别发送给发送方和接收方。[3-4]

假设sm是需要传输的涉密信息。发送方首先选择一个对称密钥k,并且用k加密涉密信息sm,得到密文:SM=Ek(sm)。

1.2涉密信息的嵌入

本文采用文献[5]中提出的在文本文件中隐藏秘密信息的方法。大多数的文本文件为黑白两色文件,加密后的涉密文件应嵌入到黑色像素的邻近区域以保证嵌入的秘密信息难以被发现并可以增加嵌入的信息量。基于对角侧面值和文本文件行特征,可以从文本文件中抽取出所嵌入的秘密信息。

具体步骤如下:

第一步,发送方首先选择一个不易吸引攻击者注意的文本文件,并将该文件的每一页数字化为一个二进制图片。然后发送方计算每页上每个像素强度:F(i,j)∈{0,1},i∈[0,m],j∈[0,n]。此处(i,j)是每一点的坐标,m是页的宽度,n是页的高度。最后,发送方计算每一页的对角侧面值:

即在每页对角方向上的像素强度和。

第二步,发送方计算每一行的边界:fk(i,j)∈{0,1},i∈[c(2k-1),c(2k)],j∈[cc(2k-1),cc(2k)]。此处k是行数,c(2k-1)和c(2k)是第k行的上界和下界,cc(2k-1)和cc(2k)是第k行的左边界和右边界。然后,发送方计算每行的对角侧面值:

第三步,发送方将涉密信息sm二进制化产生一个一维的序列s[i],发送方按以下三个规则将s[i]嵌入文本文件:

(1)将每行的对角侧面值分为两部分:白色像素部分与黑色像素部分;

(2)将s[i]嵌入至少有两个黑色像素相邻的区域position[D],以保证s[i]对于人类肉眼而言是不可见的;

(3)从文本文件第一页第一行的左边界开始嵌入s[i],直到全部出入完成。

1.3产生双水印

发送方选择一个印章图片SI1,分别产生鲁棒水印和脆弱水印。

1.3.1产生鲁棒水印

发送方计算涉密信息sm的哈希值SH=hash(sm),并将其发送给时间戳机构(TSA)。TSA生成SH的数字时间戳并签名生成ST,并将ST发送给发送方。发送方收到后用自己的私钥对ST签名,得到SS=SIGdS(ST)作为鲁棒水印。

本方案采用基于离散余弦变换(DCT)算法将鲁棒水印嵌入印章图像,具体步骤如下:第一步,发送方将SS二进制化,形成一个二进制序列W={wi}(i=1,2,…,k);第二步,发送方计算印章文件SI1的离散余弦变换;第三步,发送方按公式di′=di(1+awi)(i=1,2,…,k)将二进制序列W={wi}(i=1,2,…,k)每一位加入最大振幅的DCT域的前k个系数,其中,wi是二进制序列 W中每一位,di是DCT域的前k个系数中的一个,a是决定水印嵌入强度的强度因子;[6]第四步,发送方生成嵌入鲁棒水印的新印章文件SI2。

1.3.2产生脆弱水印

空域最低有效位(LSB)算法可以用于嵌入脆弱水印。在LSB算法中,每一个像素点的最低位都用一个水印位置换,这种置换不会造成图像的扭曲,因此不会影响图像质量。基于LSB算法嵌入脆弱水印到印章文件SI2的步骤如下:第一步,发送方用接受方的公钥加密对称密钥k生成KR;第二步,发送方二进制化涉密信息sm的哈希值SH和KR合成,并进行二进制化,形成一个二进制序列U={ui}(i=1,2,…,k);第三步,发送方转换印章文件SI2为二进制序列I={Ii}(i=1,2,…,l);第四步,发送方用二进制序列U的每一位置换二进制序列Ii中最低位,从而生产新的嵌入双水印的印章文件SI3。

1.4生成最终文档

发送方合成嵌入秘密信息的文本文件和嵌入双水印的印章文件SI3为最终文件,然后发送合成好的最终文件给接收方。

2秘密信息的恢复

接收方接收到最终文件后,分割文件为两部分:文本文件和印章文件。

首先,接收方抽取脆弱水印,具体步骤如下[7]:第一步,接收方从印章文件SI3抽取二进制序列U,从而得到印章文件SI2;第二步,接收方从U中恢复出SH和KR,然后用自己的私钥解密KR得到对称密钥k。

其次,抽取鲁棒水印,具体步骤如下:第一步,接收方计算印章文件SI2的离散余弦变换,从而得到DCT的系数矩阵;第二步,接收方基于公式di′=di(1+awi)从印章文件SI2中抽取W以得到用发送方私钥加密的鲁棒水印SS;[5]第三步,接收方用发送方的公钥解密鲁棒水印SS,从而得到由STA签名的时间戳ST;第四步,接收方验证时间戳ST的签名及时间戳本身。

最后,恢复秘密信息,具体步骤如下:第一步,接收方验证时间戳后,计算文本文件的像素强度F(i,j),每一行的边界fk(i,j),对角侧面值D(x)和每行的对角侧面值Dlinek(x);第二步,接收方基于嵌入区域position[D]从文本文件中抽取二进制化秘密信息s[i];第三步,接收方从s[i]中恢复加密过的秘密信息SM;第四步,接收方用对称密钥k解密SM,得到秘密信息sm;第五步,接收方计算hash(sm)并与由脆弱水印中恢复出的哈希值SH比较,假如二者相等,则接收方相信收到的文本文件未被篡改,并相信sm就是发送方发送的秘密信息。

3结语

本文所提出的在文本文件中加密隐藏秘密信息的方案即通过隐藏技术保证了秘密信息不易被发觉,又通过加密技术保证了秘密信息的安全性。此外,通过水印技术将验证信息隐藏其中保证了秘密信息的可鉴别性。

本方案中,发送方和接收方不需要保存他们的私钥,基于IBE技术,其可以通过将自己的身份发送给PKG后得到自己的私钥。PKG定期重新计算用户的私钥可保证私钥的安全性。[8]基于文本文件的行侧面及对角侧面的秘密信息隐藏技术有两个特点:一是被隐藏秘密信息的信息量大;二是隐藏的秘密信息不易被发现。[9-10]基于离散余弦变换的双水印技术和最低有效位算法是不可见产生水印的技术,并且很容易区分正常的印章文件和恶意的图像扭曲。[11]

参考文献:

[1] 许伯桐,郭荷清,毓毅.基于新型电子印章的公文交换方案[J].计算机工程与应用,2005,(10):22-24.

[2] 郝夏斐,牛红惠.图像加密隐藏信息识别技术研究[J].科技通报,2012,(8):22-24.

[3] 吝科,殷肖川.基于电子印章的公文安全认证系统[J].计算机工程与设计,2010,31(12):2784-2787.

[4] Byun S C,Lee I L,Shin T H.A public key based watermarking for color image authentication[C].IEEE International Conference on Multimedia and Expo, Lausanne: IEEE, 2002.27-29.

[5] 弋英民,李人厚,梅时春,等.一种基于文本行和对角侧面特性的数字水印方法[J].小型微型计算机系统,2005,26(2):293-296.

[6] 陈明奇,钮心忻,杨义先.数字水印的研究进展和应用[J].通信学报,2001,22(5):71-79.

[7] 刘世栋,杨林,侯宾,等.基于CA的电子印章系统设计与实现[J].国防科技大学学报,2004,25(1):26-30.

[8] 林宇,于孟涛,王金玲,等.基于IBE和数字水印的电子印章解决方案[J].吉林大学学报(信息科学版),2007,25(4):406-411.

[9] Ji Hwan Park, Sook Ee Jeong, Yong Huh. A new digital watermarking for text document images using diagonal profile [C].PCM, LNCS 2195, BEIJING: Springer International Publishing AG, 2001.748-755.

[10] 傅瑜,王保保.文本水印附加空格编码方法的实现及其性能[J].长安大学学报(自然科学版),2002,(3):85-87.

[11] 孙圣各,陆哲明.数字水印处理技术[J].电子学报,2000,(8):85-90.

【责任编辑牛怀岗】

【现代应用技术研究】

A Scheme of Encryption and Concealment of Secret Information in Text Files

SUN Xiao-han

(School of Mathematics and Physics, Weinan Normal University, Weinan 714099, China)

Abstract:A common method to transfer a secret information is encrypting the secret information before transmission. However, most cipher texts are incomprehensible which attracts more attackers. A better scheme is to hide the secret information in a common document and to transfer it in common channel. The sender encrypts the secret information before the cipher text is embedded into a text file. Then, the sender embeds the factors to encrypt the cipher text in watermark and synthesize the watermark and text file as a final file and send it to the receiver. The receiver extracts and recovers the secret information from the file and judge whether the embed secret information has been tampered according to the watermark. The system of the identity based on encryption which is the basis of the communication between the sender and the receiver. The proposed scheme can realize encryption and concealment of secret information.

Key words:information concelment; information encrypton; digital watermark

作者简介:孙萧寒(1979—),女,陕西三原人,渭南师范学院数理学院副教授,工学硕士,主要从事生物信息学与信息安全研究。

基金项目:陕西省(数学)扶持学科建设项目:癌症中microRNA异常调控关系的鉴定方法研究(14SXZD014);陕西省教育厅科研计划项目:基于Lucene的二次检索系统应用研究(14JK1249);渭南师范学院特色学科建设项目:数学方法在秦东经济社会发展中的应用(14TSXK02)

收稿日期:2015-06-25

中图分类号:TP311

文献标志码:A

文章编号:1009-5128(2016)04-0033-03

【现代应用技术研究】

猜你喜欢
数字水印
基于遗传优化的自然语言文本数字水印方法
基于网屏编码的数字水印技术
分形压缩在数字水印技术中的应用研究
基于信息隐藏技术的数字水印系统模型设计
一种基于三维小波变换的鲁棒视频水印方案
基于FPGA的数字水印提取系统设计研究
基于小波变换的数字水印技术
实时流媒体数字水印系统的实现及其性能评价
基于数字水印的人脸与声纹融合识别算法
一种多传感器图像融合与数字水印技术