CN108363910A - 一种基于html代码的网页水印的嵌入与提取方法 - Google Patents
一种基于html代码的网页水印的嵌入与提取方法 Download PDFInfo
- Publication number
- CN108363910A CN108363910A CN201810067125.4A CN201810067125A CN108363910A CN 108363910 A CN108363910 A CN 108363910A CN 201810067125 A CN201810067125 A CN 201810067125A CN 108363910 A CN108363910 A CN 108363910A
- Authority
- CN
- China
- Prior art keywords
- watermark
- pattern
- webpage
- empty
- html code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000003780 insertion Methods 0.000 title description 5
- 230000037431 insertion Effects 0.000 title description 5
- 238000000605 extraction Methods 0.000 claims description 12
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/16—Program or content traceability, e.g. by watermarking
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
本发明涉及基于HTML代码的网页水印的嵌入方法,包括如下步骤:步骤1)对水印信息进行预处理,将水印字符串转换成一定形式的编码,所述编码由若干码元组成;步骤2)设定若干空样式,每个空样式对应一所述码元,形成一个空样式表;步骤3)将空样式作为一个叠加的样式嵌入到当前网页的HTML代码中已存在的样式之后。有益效果:本方法以空样式的方式将水印嵌入到网页的HTML代码中,不易被察觉和发现,具有很好的隐蔽性。
Description
技术领域
本发明涉及互联网安全领域,尤其涉及一种基于HTML代码的网页水印的嵌入与提取方法。
背景技术
随着信息技术和互联网的普及发展,网页的非法复制、网页的仿冒现象日益严重,是一个亟待解决的问题。
由于本发明涉及到网页HTML代码中的样式,在阐述本发明的技术方案之前,简要对样式做一说明:网页是一种存储在Web服务器上,通过网络进行传输,被浏览器解析和显示的文档类型,其内容由HTML语言构成。网页的样式是使网页页面显示达到一定效果的辅助代码,它可以改变网页中元素的外观,如按钮的颜色、表格的大小等。网页的样式一般会用层叠样式表CSS进行封装,将一系列样式封装在一起放在CSS文件中。HTML使用样式名调用封装的样式,显示样式所定义的外观。例如样式调用<div class=“suspend susp_nav”>content</div>,其中suspend和susp_nav是两个封装好的样式,div层中的content的显示效果就是这两个样式效果的叠加效果。样式通常由样式名和表示样式内容的定义构成。
网页水印是近年来出现的保护网页的一项技术,它通过某种方式在网页中嵌入版权标识信息或身份认证信息(水印),当发现网页遭到非法复制或仿冒时,可以提取这些信息来证明网页的版权归属,鉴别网页的真伪,确认非法复制和仿冒行为。除此之外,网页水印技术还可用于网页防篡改、在网页中隐藏和传递秘密信息等。
与传统的图像、视频和音频水印技术的研究相比,网页水印技术的研究目前还很少。网页的构造与图像、音频文件不同,常用的图像和音频水印技术不适用于网页水印。另一方面,表示网页的HTML代码结构简单、冗余度少,在网页中嵌入水印难度较大。现有的一些网页水印方法主要是通过改变标签名或属性名的大小写、改变空格的个数、使用不同的代码格式等方法嵌入水印。这些方法存在明显的不足,嵌入的水印信息与HTML代码内容严重脱离,隐蔽性不好,容易受到代码检测和代码过滤的攻击,有的方法水印信息的嵌入点很少,水印信息容量小。
发明内容
本发明目的在于克服上述现有技术的不足,提供了一种基于HTML代码的网页水印的嵌入与提取方法,具体由以下技术方案实现:
所述基于HTML代码的网页水印的嵌入方法,包括如下步骤:
步骤1)对水印信息进行预处理,将水印字符串转换成一定形式的编码,所述编码由若干码元组成;
步骤2)设定若干空样式,所述空样式的内容均不进行定义,每个空样式唯一地对应一所述码元,形成一个空样式表;
步骤3)将水印字符串编码中每个码元对应的空样式作为一个叠加的样式,按码元排列的先后顺序逐个嵌入到当前网页HTML代码中已存在的各个样式之后。
所述的基于HTML代码的网页水印的嵌入方法的进一步设计在于,所述步骤 1)中对水印信息进行预处理采用UNICODE编码,形成十六进制的水印信息码串。
所述的基于HTML代码的网页水印的嵌入方法的进一步设计在于,编码由十六个码元表示。
所述的基于HTML代码的网页水印的嵌入方法的进一步设计在于,所述空样式的名称与网页现有的样式名不相同。
根据所述的基于HTML代码的网页水印的嵌入方法,提供一种对应的水印提取方法,其特征在于包括如下步骤:
步骤a)提取空样式:根据空样式表中的样式名,从网页的HTML代码中依次提取出每个空样式;
步骤b)生成水印信息码串:对照空样式表,将提取的每个空样式转换成对应的码元,并将所述码元按对应空样式的提取顺序拼接形成水印信息码串;
步骤c)生成原始水印信息:根据编码的形式将水印信息码串转换成对应的水印信息字符串。
本发明的优点如下:
本发明提出的网页水印技术将水印信息以空样式的方式嵌入到网页的 HTML代码中,不易被察觉和发现,具有很好的隐蔽性。嵌入的水印具有良好的抗攻击性,包括抗检测性和抗过滤性。由于样式内容的定义通常存放在CCS文件中,水印的攻击者根据HTML代码难以区分出其中的真实样式和空样式,无法检测到空样式的存在。如果试探性地修改样式名,会有很大的风险,若是改动了真实的样式名,会对页面的显示效果产生很大的影响,因此很难用过滤系统去除网页中的空样式。同时,这种方法也有足够的水印信息嵌入空间,因为样式在网页的HTML代码中大量的存在。
附图说明
图1为原始网页页面截图。
图2为水印信息预处理示意图。
图3为嵌入水印后的网页页面截图。
图4为水印提取过程示意图。
具体实施方式
以下结合附图,对本发明的技术方案进行详细说明。
基于HTML代码的网页水印的嵌入方法,包括如下步骤:基于HTML代码的网页水印的嵌入方法,包括如下步骤:
步骤1)对水印信息进行预处理,将水印字符串转换成一定形式的编码,编码由若干码元组成。
步骤1)中,为便于嵌入包含中英文在内的水印信息,水印信息预处理采用UNICODE编码,形成十六进制的水印信息码串。如字符串“copyright南通大学”,转换为UNICODE码为:
\u0063\u006f\u0070\u0079\u0072\u0069\u0067\u0068\u0074\u5357\u901a\u5927\u5 b66
去除每个字符编码的码头\u,得到处理后的水印信息:
0063006f00700079007200690067006800745357901a59275b66。
当然本发明也可以ASCII编码方式进行编码,由于该编码方式为本领域技术人员的常规技术手段,故在此不再赘述。
步骤2)设定若干空样式,每个空样式与上述构成水印信息字符串的码元一一对应,形成一个空样式与码元的对应表。
步骤2)中,空样式定义为:一个样式只有样式名,没有内容定义。例如,样式调用<div class=“susp”>content</div>,如果CSS文件中没有样式名为 susp的样式定义,HTML代码中也没有定义susp的样式,那么susp为空样式。根据CSS规范,HTML中的元素不会匹配错误的或者不存在的样式名,因此上述调用不会进行任何操作。同时,上述调用不违反HTML的语法规范,对网页的运行不会产生任何影响。本发明利用HTML的这种特性,将水印信息转换为自定义的空样式名嵌入到HTML代码中,实现水印的嵌入与提取。
对应于UNICODE编码方式,本实施例的编码由十六个码元表示,码元分别为数字0~9和字母a~f,形成的空样式表如表1所示。
表1
进一步的,空样式的样式名称的命名遵循两个方面的原则。一方面,样式的名字与HTML代码的内容要有一定的联系,具有合理性和真实性,让人觉察不到它是空样式,从而使水印具有良好的隐蔽性。另一方面,空样式的名字不能与现有样式的名字相同,如果命名相同,会导致水印信息提取出错。如本实施例以中国某银行官网信用卡页面为水印嵌入对象,其HTML代码中定义了名为“aright”的样式,故可以设计一个名为“bright”的空样式(即表1中码元5对应的样式),这个空样式名与真实的样式名很相似,让人难以分辨。
步骤3)将水印字符串编码中每个码元对应的空样式作为一个叠加的样式,按码元排列的先后顺序逐个嵌入到当前网页HTML代码中已存在的各个样式之后。
在HTML代码中,网页上要显示的内容通常包含在一个个的层级元素中。例如样式调用<div class=“suspend”>content</div>,页面上显示的内容content 被包含在这个div层之中。其中的class=“suspend”设置了content的样式即外观。可以单独增加一条这样的语句来嵌入空样式,例如嵌入表1中的第一个空样式“susp_nave”,可在原HTML代码中增加一条语句<div class=“susp_nave”>content</div>。考虑到该方式一方面会增加div、class这些与水印信息无关的字符串,增大了网页文件的大小;另一方面,嵌入的语句比较明显,隐蔽性不够好,容易被察觉出来。因此,本实施例利用HTML的样式可以叠加的特点,将空样式作为一个叠加的样式嵌入到已存在的层级之中,而不添加新的语句。例如,将空样式susp_nave嵌入到原有的语句<div class=“suspend”>content</div>,在其中原有的样式suspend后面叠加susp_nave,嵌入之后原代码变为<div class=“suspend susp_nave”>content</div>,这种嵌入方式增强了隐蔽性,对原HTML代码影响很小。
结合上述基于HTML代码的网页水印的嵌入方法的描述,本实施例选取中国某银行官网信用卡页面进行实验,原始页面的截图如图1所示。
首先,使用包含中英文在内的字符串“copyright南通大学”作为水印信息,将水印信息转换成十六进制的水印信息码串,如图2所示。
接着,通过对该页面HTML代码的分析,设计出如表1所示的水印信息码元对应的空样式。
最后,将水印信息码串中的每个码元转换为对应的空样式,嵌入到HTML代码中。以嵌入前3个码元006为例,给出嵌入前后的HTML代码,如下所示:
嵌入水印前的HTML代码:
<div id=″fadee″class=″shade″></div>
<div class=″sidebar″>
<div class=″suspend susp_nav″id=″suspend″>
嵌入水印后的HTML代码:
<div id=″fadee″class=″shade susp_nave″></div>
<div class=″sidebar susp_nave″>
<div class=″suspend susp_nav busine_menu″id=″suspend″>
如上述代码所示,这3个码元对应的空样式susp_nave、susp_nave和 busine_menu分别嵌在原有的样式shade、sidebar和susp_nav的后面。
嵌入水印后的页面如图3所示,对比图1没有发生任何变化。
根据上述的基于HTML代码的网页水印的嵌入方法,本实施例还提出了对应的水印提取方法,包括如下步骤:
步骤a)提取空样式:根据表1所示的空样式表中的空样式名,从上述嵌有空样式的网页的HTML代码中依次提取出每个空样式。
步骤b)生成水印信息码串:对照上述空样式表,将提取的每个空样式转换成对应的码元,依次连接起来,形成水印信息码串。
步骤c)生成原始水印信息:根据水印信息编码所采用的UNICODE编码形式,将水印信息码串转换成对应的水印信息字符串。
本实施例的水印信息提取过程如图4所示,最终成功提取出网页中隐含的水印信息“copyright南通大学”。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (5)
1.一种基于HTML代码的网页水印的嵌入方法,其特征在于包括如下步骤:
步骤1)对水印信息进行预处理,将水印字符串转换成一定形式的编码,所述编码由若干码元组成;
步骤2)设定若干空样式,所述空样式的内容均不进行定义,每个空样式唯一地对应一所述码元,形成一个空样式表;
步骤3)将水印字符串编码中每个码元对应的空样式作为一个叠加的样式,按码元排列的先后顺序逐个嵌入到当前网页HTML代码中已存在的各个样式之后。
2.根据权利要求1所述的基于HTML代码的网页水印的嵌入方法,其特征在于所述步骤1)中对水印信息进行预处理采用UNICODE编码,形成十六进制的水印信息码串。
3.根据权利要求2所述的基于HTML代码的网页水印的嵌入方法,其特征在于编码由十六个码元表示。
4.根据权利要求1所述的基于HTML代码的网页水印的嵌入方法,其特征在于所述空样式的名称与网页现有的样式名不相同。
5.如权利要求1-4任一项所述的基于HTML代码的网页水印的嵌入方法的水印提取方法,其特征在于包括如下步骤:
步骤a)提取空样式:根据空样式表中的样式名,从网页的HTML代码中依次提取出每个空样式;
步骤b)生成水印信息码串:对照空样式表,将提取的每个空样式转换成对应的码元,并将所述码元按对应空样式的提取顺序拼接形成水印信息码串;
步骤c)生成原始水印信息:根据编码的形式将水印信息码串转换成对应的水印信息字符串。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810067125.4A CN108363910B (zh) | 2018-01-23 | 2018-01-23 | 一种基于html代码的网页水印的嵌入与提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810067125.4A CN108363910B (zh) | 2018-01-23 | 2018-01-23 | 一种基于html代码的网页水印的嵌入与提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108363910A true CN108363910A (zh) | 2018-08-03 |
CN108363910B CN108363910B (zh) | 2020-01-10 |
Family
ID=63006946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810067125.4A Active CN108363910B (zh) | 2018-01-23 | 2018-01-23 | 一种基于html代码的网页水印的嵌入与提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108363910B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109635223A (zh) * | 2018-12-10 | 2019-04-16 | 北京字节跳动网络技术有限公司 | 页面显示方法和装置 |
CN111191414A (zh) * | 2019-11-11 | 2020-05-22 | 苏州亿歌网络科技有限公司 | 一种页面水印生成方法、识别方法、装置、设备及存储介质 |
CN113296773A (zh) * | 2021-05-28 | 2021-08-24 | 北京思特奇信息技术股份有限公司 | 一种层叠样式表的版权标注方法和标注系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030105950A1 (en) * | 2001-11-27 | 2003-06-05 | Fujitsu Limited | Document distribution method and document management method |
CN101599118A (zh) * | 2009-06-26 | 2009-12-09 | 华中师范大学 | Html网页篡改检测与定位方法 |
CN102957705A (zh) * | 2012-11-12 | 2013-03-06 | 杭州迪普科技有限公司 | 一种网页篡改防护的方法及装置 |
CN104050400A (zh) * | 2014-06-27 | 2014-09-17 | 西南交通大学 | 一种基于控制符编码隐写的网页链接保护方法 |
CN104200139A (zh) * | 2014-09-12 | 2014-12-10 | 南通大学 | 一种Java软件水印虚方法中指令代码的生成方法 |
CN105205355A (zh) * | 2015-11-05 | 2015-12-30 | 南通大学 | 一种基于语义角色位置映射的文本水印嵌入及提取方法 |
CN105404614A (zh) * | 2015-11-05 | 2016-03-16 | 南通大学 | 一种基于主谓语编码的文本水印嵌入以及提取方法 |
-
2018
- 2018-01-23 CN CN201810067125.4A patent/CN108363910B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030105950A1 (en) * | 2001-11-27 | 2003-06-05 | Fujitsu Limited | Document distribution method and document management method |
CN101599118A (zh) * | 2009-06-26 | 2009-12-09 | 华中师范大学 | Html网页篡改检测与定位方法 |
CN102957705A (zh) * | 2012-11-12 | 2013-03-06 | 杭州迪普科技有限公司 | 一种网页篡改防护的方法及装置 |
CN104050400A (zh) * | 2014-06-27 | 2014-09-17 | 西南交通大学 | 一种基于控制符编码隐写的网页链接保护方法 |
CN104200139A (zh) * | 2014-09-12 | 2014-12-10 | 南通大学 | 一种Java软件水印虚方法中指令代码的生成方法 |
CN105205355A (zh) * | 2015-11-05 | 2015-12-30 | 南通大学 | 一种基于语义角色位置映射的文本水印嵌入及提取方法 |
CN105404614A (zh) * | 2015-11-05 | 2016-03-16 | 南通大学 | 一种基于主谓语编码的文本水印嵌入以及提取方法 |
Non-Patent Citations (1)
Title |
---|
YUNG-CHEN CHOU, ETC.: "A Webpage Data Hiding Method by Using Tag and CSS attribute Setting", 《IEEE》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109635223A (zh) * | 2018-12-10 | 2019-04-16 | 北京字节跳动网络技术有限公司 | 页面显示方法和装置 |
CN111191414A (zh) * | 2019-11-11 | 2020-05-22 | 苏州亿歌网络科技有限公司 | 一种页面水印生成方法、识别方法、装置、设备及存储介质 |
CN113296773A (zh) * | 2021-05-28 | 2021-08-24 | 北京思特奇信息技术股份有限公司 | 一种层叠样式表的版权标注方法和标注系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108363910B (zh) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105095936B (zh) | 一种基于信息隐藏的图像二维码及其生成方法和系统 | |
CN108363910A (zh) | 一种基于html代码的网页水印的嵌入与提取方法 | |
KR100548983B1 (ko) | 디지털 증명서의 발급 및 인증을 위한 텍스트의 삽입 방법및 장치 | |
Taha et al. | A high capacity algorithm for information hiding in Arabic text | |
CN100447812C (zh) | 一种文档数字水印嵌入方法 | |
Alanazi et al. | Efficient security and capacity techniques for Arabic text steganography via engaging Unicode standard encoding | |
CN110414194B (zh) | 一种文本水印的嵌入及提取方法 | |
Tayyeh et al. | Novel steganography scheme using Arabic text features in Holy Quran | |
Alginahi et al. | An enhanced Kashida-based watermarking approach for increased protection in Arabic text-documents based on frequency recurrence of characters | |
CN104050400B (zh) | 一种基于控制符编码隐写的网页链接保护方法 | |
Aman et al. | A hybrid text steganography approach utilizing Unicode space characters and zero-width character | |
JP5524633B2 (ja) | フォント入力に基づくパターン・フォント用認識エンジン | |
CN109785222A (zh) | 一种用于网页的信息快速嵌入和提取的方法 | |
Kaur et al. | An existential review on text watermarking techniques | |
CN102096787A (zh) | 一种基于word2007文本切分的信息隐藏方法及其装置 | |
Roslan et al. | Systematic literature review and analysis for Arabic text steganography method practically | |
CN110322386A (zh) | 一种数字文本水印嵌入及检测方法和装置 | |
Stojanov et al. | A new property coding in text steganography of Microsoft Word documents | |
Al-Wesabi | Entropy-Based Watermarking Approach for Sensitive Tamper Detection of Arabic Text. | |
CN103425931A (zh) | 一种网页异常脚本检测方法及系统 | |
Ahmed et al. | Comparison of eight proposed security methods using linguistic steganography text | |
CN101593247A (zh) | 利用文字形体特征携带水印信息的文本数字水印技术 | |
CN101923700A (zh) | 一种双效数字水印方法 | |
JP4863017B2 (ja) | 情報隠蔽システム、装置及び方法 | |
Alginahi et al. | A zero-watermarking verification approach for Quranic verses in online text documents |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |