本发明专利技术提供了一种HTML网页篡改检测与定位方法,包括如下过程:(1)水印预嵌入过程,从原始的HTML网页源代码中的每一行和每一列,分别进行每位字符的数值抽取,得到相应的一维数组,然后将产生的一维数组分别转换成二维矩阵;生成行数字水印和列数字水印,将行数字水印和列数字水印中的认证码二位串接起来,得到网页数字水印;将网页数字水印预嵌入到原始的HTML网页源代码中,(2)篡改检测及定位过程,首先进行网页数字水印的提取和恢复,然后通过对预嵌入的网页数字水印和新的网页数字水印比较,如果两个网页数字水印完全匹配,则表示网页源代码没有经过篡改;两个网页数字水印不完全匹配,否则将两个网页数字水印中认证码不同的行列定位为篡改位置。
【技术实现步骤摘要】
本专利技术是一种涉及HTML网页
的方法,特别是HTML网页篡改检测 与定位方法。
技术介绍
现今互联网已经成为人们信息获取和信息交流不可或缺的工具。人们能通过 互联网发布自己的作品,传递重要信息等。但是,它在给人们带来便利的同时 也暴露出越来越严重的安全问题,利用现有的技术网页很容易被篡改,单纯靠 人眼很难判断出网页是否被篡改。网页的真实性认证和篡改检测及定位变得越 来越重要。传统的基于散列函数的文件摘要技术是通过对网页源文件进行散列 计算得出消息认证码,将消息认证码追加在预保护的网页文件中,通过对预检 测网页进行抽取得到消息认证码,将得到的认证码与预检测网页生成的消息认 证码进行比对来判断出网页是否被篡改。然而在实际应用中,这种方法往往会 有诸多弊端,例如增加了文件的大小、消息认证码容易被发现等。数字水印技 术是直接将消息认证码通过在行末加入空格、ULC或改变标记的属性的位置来嵌 入到目标网页本身中,它不会改变网页的功能、不增加文件的大小、容易嵌入 和抽取。利用数字水印对网页的真实性进行认证时,通常是将网页数据的消息 认证码或数字签名(称之为认证信息)直接嵌入在网页中。数字水印解决了在文件加密后增加了文件的大小、消息认证码容易被发现的 问题,但是现有的基于网页的数字水印方案只能实现真实性认证,而无法实现对篡改位置的定位,其原因在于,消息认证码的获取算法是逆向的,对预检测 的网页中的消息只能判断是否匹配而无法还原,即无法知道何处被篡改,从而 无法定位。经对现有技术的文献检索发现,Hongtao Lu等2007年在Pattern Recognition (模式识别)期刊第40巻第1334-1341页上发表的论文PCA-based Webpage Watermarking (基于PCA的网页数字水印)中提出了一种基于PCA的 网页数字水印方案,该方案利用数字水印技术可实现对HTML网页篡改的检测, 其不足在于无法实现对篡改位置的定位。
技术实现思路
本专利技术目的在于提供一种HTML网页篡改检测与定位方法,实现对网页篡改 检测的同时能定位出篡改的位置。本专利技术提供的一种HTML网页篡改检测与定位方法,包括如下过程(1)水印预嵌入过程 步骤1. 1,从原始的HTML网页源代码中的每一行和每一列,分别进行每位字 符的数值抽取,得到相应的一维数组,然后将产生的一维数组分别转换成二维 矩阵;步骤L2,认证信息的产生,包括针对步骤1. 1产生的所有行对应的二维矩 阵生成行数字水印,针对步骤1.1产生的所有列对应的二维矩阵生成列数字水 印,将行数字水印和列数字水印中的认证码按照原始的HTML网页源代码的字符 位置二位串接起来,得到网页数字水印;步骤1. 3,采用大小写嵌入方式,逐行或逐列将网页数字水印预嵌入到原始的 HTML网页源代码中;(2)篡改检测及定位过程, 首先进行网页数字水印的提取和恢复, 所述网页数字水印的提取,即是逐行每二位分组将在水印预嵌入过程中预嵌入的网页数字水印从待检测的HTML网页源代码中提取出来, 所述网页数字水印的恢复,即对待检测的HTML网页源代码按照与水印预嵌入过 程中步骤1. 1 1. 2 —致的方式产生新的网页数字水印;然后通过对预嵌入的网页数字水印和新的网页数字水印比较,如果两个网 页数字水印完全匹配,则表示待检测的HTML网页源代码没有经过篡改,和原始 HTML网页源代码一致;两个网页数字水印不完全匹配,则表示待检测的HTML网 页源代码经过篡改,将两个网页数字水印中认证码不同的行列定位为篡改位置。而且,所述从HTML网页源代码中进行每位字符的数值抽取,得到相应的一 维数组,实现方式如下,将HTML网页源代码的一行或一列中的字母、数字、符号按在HTML网页源 代码中的顺序提取出来,然后将所有的字母、数字和符号转换为数值,转换规 则为 M,禾B 转换为'(T, W和W转换为'r, 'C和?,转换为 '2',…'Z禾P 转换为25, '0-9,转换为'26-35',符号按A5TiT码表 的位置排序后将序号加上35。或者,所述从HTML网页源代码中进行每位字符的数值抽取,得到相应的一 维数组,实现方式如下,将HTML网页源代码的一行或一列中的有意义的字符按在HTML网页源代码 中的顺序提取出来,然后将所有有意义的字符转换为数值,转换规则为根据常 用字符与ASCII代码对照表,将字符对照所得的ASCII值减去32,如果减去后的ASCII值大于65的话再减去32,否则不减,最后得到的值即为对该字符数值 抽取的结果。而且,所述将产生的一维数组依次转换成二维矩阵的具体实现方式如下, 设对HTML网页源代码中的一行或一列进行每位字符的数值抽取所得一维数组记为历, 一维数组历中元素个数为/7,设7=^,户「r"f,即t等于r向上取整后平方;用一维数组m循环填充直到得到元素个数为t^ 一维数组必将一维数组# 按元素顺序填充为阶数为「rl的方阵,该方阵标记为#,将欣^得到对称方阵 ",,A即为该行或列对应的二维矩阵。而且,针对步骤1.1产生的所有行对应的二维矩阵生成行数字水印,针对 步骤1. 1产生的所有列对应的二维矩阵生成列数字水印,具体方式如下对某行或列对应的二维矩阵进行巻积加密,即指通过对称方阵",与密钥方 阵7T的巻积得到方阵/, SP/=ft A其中,^/^'"w", F表示实数域,R表 示实数域,N表示密钥'k'的阶数,Ae, ^, 然后将方阵/进行求向量均值后特征值分解求主成分,再将所得主成分转 化为二进制码,将转换的二进制码连接起来作为该行或列的认证码;所有行的认证码构成行数字水印,所有列的认证码构成列数字水印。而且,所述将行数字水印和列数字水印中的认证码按照原始的HTML网页源代码的字符位置二位串接起来,是指按照字符所在行从行数字水印中取对应认 证码作为第一位,按照字符所在列从列数字水印中取对应认证码作为第二位, 进行串接。或者,所述将行数字水印和列数字水印中的认证码按照原始的HTML网页源代码的字符位置二位串接起来,是指按照字符所在列从列数字水印中取对应认 证码作为第一位,按照字符所在行从行数字水印中取对应认证码作为第二位, 进行串接。而且,所述大小写嵌入方式是HTML网页源代码中的标签中的字母每两个分 组,指如果要嵌入的认证码是'T,则将HTML网页源代码的标签中对应的字母 变为大写字母;如果要嵌入的认证码是'0',则将HTML网页源代码的标签中对 应的字母变为小写字母;所述网页数字水印的提取中,指将待检测的HTML网页源代码的标签中对应 的大写字母抽取为认证码<1',小写字母抽取认证码为'0'。本专利技术通过增加行列数字水印同时嵌入机制来检测网页的篡改,并定位出 被篡改的行列位置,并且提供的是盲检测技术方案即不需要原有的网页。由于 这种方法不增加网页文件的大小,不影响网页文件的功能,使得数字水印的嵌 入、认证和网页篡改检测与定位的运算更为高效,可用于实时的网页安全系统。 并且,本专利技术还增加对网页中的数字、符号篡改的检测,实现对纯英文网页的 全部支持;在原始数据处理中,应用行列分块提取的思想来避免大矩阵的繁琐 运算,从而实现对容量更大的网页的支持。本本文档来自技高网...
【技术保护点】
HTML网页篡改检测与定位方法,其特征在于,包括如下过程: (1)水印预嵌入过程 步骤1.1,从原始的HTML网页源代码中的每一行和每一列,分别进行每位字符的数值抽取,得到相应的一维数组,然后将产生的一维数组分别转换成二维矩阵; 步骤1.2,认证信息的产生,包括针对步骤1.1产生的所有行对应的二维矩阵生成行数字水印,针对步骤1.1产生的所有列对应的二维矩阵生成列数字水印,将行数字水印和列数字水印中的认证码按照原始的HTML网页源代码的字符位置二位串接起来,得 到网页数字水印; 步骤1.3,采用大小写嵌入方式,逐行或逐列将网页数字水印预嵌入到原始的HTML网页源代码中; (2)篡改检测及定位过程 首先进行网页数字水印的提取和恢复, 所述网页数字水印的提取,即是逐行每二位分组 将在水印预嵌入过程中预嵌入的网页数字水印从待检测的HTML网页源代码中提取出来, 所述网页数字水印的恢复,即对待检测的HTML网页源代码按照与水印预嵌入过程中步骤1.1~1.2一致的方式产生新的网页数字水印; 然后通过对预嵌入的 网页数字水印和新的网页数字水印比较,如果两个网页数字水印完全匹配,则表示待检测的HTML网页源代码没有经过篡改,和原始HTML网页源代码一致;两个网页数字水印不完全匹配,则表示待检测的HTML网页源代码经过篡改,将两个网页数字水印中认证码不同的行列定位为篡改位置。...
【技术特征摘要】
【专利技术属性】
技术研发人员:金聪,潘敏,
申请(专利权)人:华中师范大学,
类型:发明
国别省市:83[中国|武汉]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。