APP下载

一种新型网页篡改检测技术

2014-10-24刘鹏程

关键词:隐蔽性哈希网页

刘鹏程

(绍兴文理学院 元培学院,浙江 绍兴312000)

一种新型网页篡改检测技术

刘鹏程

(绍兴文理学院 元培学院,浙江 绍兴312000)

针对常规网页水印算法隐蔽性差、隐藏信息量受网页内容限制的问题,提出了一种新型的网页水印嵌入技术.通过在网页中嵌入一副小尺寸图像的方式,将水印隐藏于图像中.分析了现有网页水印算法的缺点,设计了由哈希函数和混沌序列相结合的水印生成算法,提出了将网页内容分段并转换为ASSIC码的方式生成位置水印.描述了图像频域水印的嵌入与检测过程.通过实验验证了算法的隐蔽性以及篡改检测的有效性.

网页水印;隐蔽性;哈希函数;混沌序列;图像频域

0 引言

随着社会的发展与进步,人们的生活水平不断提高,在满足了物质需求的情况下,人们对精神需求也有了更高层次的要求.互联网的出现使得人们可以十分便利地获取各种精神食粮,互联网技术也正是因此得以飞速发展.进入21世纪以来,互联网的迅速普及使人类进入了数字时代,网络为我们提供了海量的资源,而浏览网页获取信息也几乎成了人们日常生活必不可少的一部分.然而,网络给我们的生活带来极大便利的同时,也潜藏着巨大的危险.对于大多数普通互联网用户来说,网络资源的获取通常是通过与网页的交互来实现的,包括信息浏览、文件下载、收发电子邮件、发表评论等.如果网页的安全性和完整性无法得到保证,则用户可能蒙受巨大的损失.例如,不法分子入侵网站后,将网页中的链接替换为含有木马的链接,用户访问网页时不知不觉地下载了木马程序,导致个人私密信息被窃.另外,随着近几年网络购物以及网上商城的兴起,各种用伪造网页进行网络钓鱼的网上诈骗事件层出不穷.作为普通网民,人们希望浏览的信息是真实可信的,自己的利益不受损失;作为网站经营者,则更要确保信息的安全,从而避免用户的流失以及自己的诚信受损.如何有效地防止网页被篡改以及保护网页的完整性已经成为一个非常重要且刻不容缓的问题.

数字水印技术是一种全新的信息隐藏技术,在内容完整性认证、版权保护、数据跟踪和检测、商业视频广播等方面都有着广阔的应用前景.早期的数字水印技术主要应用于图像[1-3]和音频[4-6]方面,近年来,将数字水印应用于网页篡改检测的网页水印技术也逐渐发展起来.Zhao等人提出的基于PCA的数字水印算法[7],是先对网页进行主成分分析,然后提取摘要值,并利用网页标签中大小写无关字符来嵌入水印.尉阮杰等人认为基于PCA的水印提取算法对网页的小改动不是十分敏感,且时间复杂度较高,因此采用了MD5和SHA-1的哈希算法生成水印[8].曾凡涛提出了一种基于特殊字符的网页水印方法,通过在网页中加入特殊的不可见字符串,将信息隐藏在网页中而不影响网页在浏览器中的显示效果[9].黄华军等人将融合网站特征的半脆弱水印转换成一个大数,然后利用等价标记法嵌入网页中[10].

本文针对现有网页水印算法存在的问题,提出一种基于内嵌图像的网页水印技术,通过将水印隐藏在图像中,增强其隐蔽性和可隐藏信息量.该方法不需要对网页内容进行任何改动,实现方便.

1 常规网页水印嵌入方式分析

常规的网页水印嵌入方式主要包括以下几种:

(1)基于不可见字符的方法[11].不可见字符主要指制表符和空格,当它们出现在单词的末尾或者行的末尾等位置时,并不会改变网页文件在浏览器中的显示效果.因此,可以将制表符和空格编码为0和1从而嵌入水印.该方法实现简单,但增加了文件大小,且对网页源码的选择操作可以发现隐藏的信息.

(2)基于HTML标记字母大小写变化的方法[12].在HTML的规范中,标记的字母不区分大小写.因此可以改变标记字母的大小写来隐藏信息.该方法文件大小不变,但是对于内容简单的网页可隐藏的信息量较小,且字母大小写的变换暴露了隐藏的信息.

(3)基于等价标记的方法[13].HTML规定标记的属性与顺序无关.因此可以将网页标记属性的原始顺序定义为0,1,2,…,N,将待嵌入的信息转换成一个大的整数,然后根据该大整数值重新把标记属性排序,实现水印的嵌入.该方法不改变文件的大小,且隐蔽性好,对网页源码的分析无法判断是否隐藏了水印.但是对于内容简单的网页来说,隐藏的信息量较小,且需要原始标记的属性顺序.

(4)基于特殊字符串的方法[14].HTML网页中,某些字符的组合在浏览器中会显示为空格.因此可以将这些字符串编码后取代网页单词间的空格,从而嵌入水印信息.该算法不改变文件大小,但是对网页源码的分析很容易发现隐藏了信息,隐蔽性较差.

上述水印嵌入算法,或者隐蔽性差,或者隐藏信息量小,在应用方面都有一定的局限性.通过在网页中加入图片,把水印信息嵌入图片中,这样,网页源码不会发生任何变化,而图片在视觉上也无法察觉嵌入了信息,隐蔽性好,且图片可隐藏的信息量较大.

2 水印生成算法

半脆弱水印需要与网页内容相关,这样才能在网页遭到篡改时检测出来.通常使用哈希(Hash)函数来生成数字水印,原因如下:

(1)哈希函数把任意长度的输入数据压缩,输出一个尺寸小了很多的固定长度数据,即哈希值;

(2)给定输入数据,计算哈希值很容易;

(3)给定哈希值,则很难推算输入数据,即哈希函数具单向性,也称为抗原像攻击性;

(4)给定哈希值,很难找出能产生该值的不同两组输入数据,即具抗碰撞攻击性.

(5)哈希值不表达任何关于输入数据的信息.

目前,比较常用的哈希函数是MD5和SHA-1.SHA-1的哈希值位数长于MD5,具有更好的安全性,但是运算复杂性也更高.考虑到用户端程序的执行效率,选择使用MD5算法来生成水印.

首先将网页内容连同密钥k1通过MD5算法生成128位哈希序列S1.然后使用密钥k2和k3作为Logistic混沌序列的初始值,生成128位二值混沌序列S2.将序列S1和S2进行异或操作生成水印序列S3.

为了对内容篡改进行定位,需要将网页内容的位置信息进行编码并生成水印.为此将整个网页内容转换为ASSIC码,然后将其均分为128段,再计算每段ASSIC码的累加和与异或和,产生各含128个ASSIC码的累加和序列和异或和序列.将累加和序列转换为十进制作为水印序列S4,异或和序列转换为十进制作为水印序列S5.

3 水印嵌入算法

使用尺寸为128×64像素的JPEG格式的图像作为水印的载体.网页水印嵌入的具体过程如下:

(1)色彩空间转换.将图像由RGB空间转换为YCbCr空间,提取Y分量得到灰度图像I(x,y),公式为

(1)

(2)对I(x,y)进行分块,每块为8×8像素大小,得到128个分块像素矩阵.

(3)对每个分块像素矩阵进行二维离散余弦变换(DCT),得到128个DCT系数矩阵.每个块按从上到下、从左到右的顺序送入DCT变换器.对于一幅N×N像素的图像,它的DCT变换为:

(2)

其中f(x,y)和F(u,v)分别表示原始图像的像素值和图像变换后的DCT系数.

(4)把每个分块的DCT系数进行之字形排列,取出顺序为62的高频系数,用待嵌入的S3序列水印值替换其最低有效位,并用S4和S5序列水印值分别替换顺序为63和64的高频系数.

(5)对图像分块进行反离散余弦变换(IDCT),公式为

(3)

经变换生成嵌入水印后的图像,将该图像的灰度值作为亮度信息,结合原彩色图像的色度信息,转换到RGB色彩空间,即得到含水印的彩色图像.

4 篡改检测

篡改检测通过用户安装浏览器插件的形式实现.网页篡改检测的具体过程如下:

(1)根据网页内容和3个密钥,计算携带网页内容信息的水印序列w1,以及携带位置信息的w2和w3.

(2)将含水印图像进行色彩空间转换以及分块DCT变换,得到每块顺序为62的高频系数,提取该系数的最低有效位,得到w11;提取顺序为63和64的高频系数,得到w22和w33.

(3)比较w1和w11是否相同,如果不同,则认为网页遭到了篡改;比较w2和w22,以及w3和w33,如果序列的某一位置不同,则说明相应的网页位置发生篡改,实现了定位.然后提示用户该页面可能存在安全问题,并禁止继续访问该页面.

5 实验

下面以某网页为例,验证水印嵌入与检测效果.原始网页在浏览器中的显示效果如图1所示,源码如图2所示.

图1 网页在浏览器中的显示效果 图2 网页源码

使用网页源码和密钥k1经MD5算法得到的32位16进制哈希值为:

DC762337E358AAD A088DF6AAD29F165A,

这里密钥k1定义为字符串“watermark@test 2013”.

嵌入水印的网页在浏览器中的显示效果如图3所示,在视觉上与未嵌入水印的网页没有区别.

使用峰值信噪比(PSNR,Peak Signal-to-Noise Ratio)来衡量水印的可见性,公式为

(4)

式中单位为dB,f表示原始图像,fw表示含水印图像,(m,n)表示像素坐标,Nf为图像总的像素数.

计算得PSNR值为38.375 dB.PSNR值越大,说明加水印后图像和原始图像之间的差别越小,即不可见效果越好.通常,35 dB左右就意味着水印几乎是肉眼不可感知的.因此,该嵌入算法有较好的隐蔽性.

篡改后的网页源码如图4所示,将超链接的网址“www.watermarktest.com.cn”篡改为“www.xxxhackerxxx.com”. 经篡改检测程序计算的哈希值为:

022A1A1 D926E4133BC537E64D5466E5D,

篡改检测完成后的页面显示的篡改提示信息如图5所示.

图5 篡改提示信息

6 结论

本文分析了现有网页水印算法存在的问题,在此基础上提出了一种基于内嵌图片的网页水印算法,使用MD5算法结合混沌序列的方式生成与网页内容相关的水印信息,3个密钥的设置确保了水印的安全性.将网页内容转换为ASSIC码并分段计算累加和与异或和来产生位置水印,以对篡改进行定位.通过色彩空间变换以及分块离散余弦变换,将图像由彩色空域转换至灰度频域,并将水印嵌入各频域图像块的高频系数中.实验表明,该算法具有良好的隐蔽性,且能准确地检测篡改,提高了网页浏览的安全性.

[1]李健,叶有培,韩牟.一种改进的抗几何攻击的数字图像水印算法[J].计算机科学,2010,37(2):126-130.

[2]刘敏,陈志刚,邓小鸿.基于混沌和脆弱水印的图像篡改检测技术[J].计算机应用,2013,33(5):1371-1373.

[3]LI C L,WANG Y H,MA B,et al.Tamper detection and self-recovery of biometric images using salient region-based authentication watermarking scheme[J].Computer Standards and Interfaces,2012,34(4):367-379.

[4]刘光玉,张雪英,马朝阳.用于内容认证的半脆弱音频零水印算法[J].计算机应用,2012,32(4):976-980.

[5]全笑梅,张鸿宾.用于篡改检测及认证的脆弱音频水印算法[J].电子与信息学报,2005,27(8):1187-1191.

[6]廖琬名,张玉贤,李东晓,等.基于小波变换的脆弱-鲁棒双重音频水印[J].浙江大学学报(工学版),2009,43(4):722-726.

[7]ZHAO Q J,LU H T.A PCA-based watermarking scheme for tamper-proof of web pages[J].Pattern Recognition,2005,38:1321-1323.

[8]尉阮杰,卢宏涛.一种新的动态网页程序的防篡改系统[J].微计算机信息,2010,26(3):71-73.

[9]曾凡涛.一种基于特殊字符串的网页防篡改方法[J].计算机安全,2012,2:40-44.

[10]黄华军,姜丽清,谢黎黎,等.基于半脆弱水印的网络钓鱼主动防御技术[J].信息网络安全,2013,1:8-11.

[11]KATZENBEISSER S,PETICOLAS A P.Information hiding techniques for steganography and digital watermarking [M].Boston:Artech House,2000.

[12]SUI X H,LUO H.A new steganography method based on hypertext[C]∥Proc of Asia-Pacific Radio Science Conference.Qingdao:IEEE Press,2004:181-184.

[13]HUANG H J,ZHONG S H,SUN X M.An algorithm of webpage information hiding based on attributes[C]//International Conference on Intelligent Information Hiding and Multimedia Signal Processing.Harbin:IEEE Press,2008:257-260.

[14]顾流.基于web页信息隐藏的研究与实现[J].微计算机信息,2006,22(8-3):186-187.

A Novel Webpage Tamper Proof Technology

Liu Pengcheng

(Yuanpei College, Shaoxing Universty, Shaoxing, Zhejiang 312000)

Targeted at the poor concealment of the conventional webpage watermark and the limitation of the embedded information quantity to the contents of the webpage, a novel webpage tamper proof technology is proposed to solve the problems. A small image is embedded into the webpage; the watermark is hidden in that image. The defects of the existing webpage watermark technology are analyzed. The watermark is produced using the hash function and chaotic sequence. Web content is segmented and converted to ASSIC code to generate position watermark. The watermark embedding and detection process in the image frequency domain is described. The experimental results illustrate the superb concealment of the algorithm and the effective tamper proof.

webpage watermark; concealment; hash function; chaotic sequence; image frequency

2014-07-07

刘鹏程(1981-),男,黑龙江牡丹江人,硕士,讲师.研究方向:计算机应用与图像处理.

TP393.08

A

1008-293X(2014)09-0015-05

(责任编辑邓颖)

猜你喜欢

隐蔽性哈希网页
隐蔽性证据规则研究
文件哈希值处理一条龙
侦查阶段隐蔽性证据的识别获取及应用价值
基于CSS的网页导航栏的设计
基于HTML5静态网页设计
基于URL和网页类型的网页信息采集研究
论电子证据特征 
新媒体自身特性与处理机制研究
基于OpenCV与均值哈希算法的人脸相似识别系统
网页制作在英语教学中的应用