基于lsb的信息隐藏技术的实现Word文档下载推荐.docx
- 文档编号:22943688
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:51
- 大小:1.47MB
基于lsb的信息隐藏技术的实现Word文档下载推荐.docx
《基于lsb的信息隐藏技术的实现Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于lsb的信息隐藏技术的实现Word文档下载推荐.docx(51页珍藏版)》请在冰豆网上搜索。
现代信息隐藏技术是由古老的隐写术(Steganography)发展而来的,隐写术一词来源于希腊语,其对应的英文意思是“Coveredwriting”。
隐写术的应用实例可以追溯到非常久远的年代。
被人们誉为历史学之父的古希腊历史学家希罗多德(Herodotus,486—425),在其著作[1]中讲述了这样一则故事:
一个名叫Histaieus的人筹划着与他的朋友合伙发起叛乱,里应外合,以便推翻波斯人的统治。
他找来一位忠诚的奴隶,剃光其头发并把消息文刺在头皮上,等到头发又长起来了,把这人派出去送“信”,最后叛乱成功了。
历史上诸如此类的隐写方法还有多种。
17世纪,英国的Wilkins(1614—1672)是资料记载中最早使用隐写墨水进行秘密通信的人,在20世纪的两次世界大战中德国间谍都使用过隐写墨水[1]。
早期的隐写墨水是由易于获得的有机物(例如牛奶、果汁或尿)制成,加热后颜色就会变暗从而显现出来。
后来随着化学工业的发展,在第一次世界大战中人们制造出了复杂的化合物做成隐写墨水和显影剂。
在中国古代,人们曾经使用挖有若干小孔的纸模板盖在信件上,从中取出秘密传递的消息,而信件的全文则是为打掩护用的。
1.2.2现代信息隐藏技术
现代又发明了很多方法用于信息隐藏:
高分辨率缩微胶片、扩频通信、流星余迹散射通信、语义编码(Semagram)等。
其中,扩频通信和流星余迹散射通信多用于军事上,使敌手难以检测和干扰通信信号;
语义编码是指用非文字的东西来表示文字消息的内容,例如把手表指针拧到不同的位置可表示不同的含义,用图画、乐谱等都可以进行语义编码。
上述各种隐藏消息的手段都有一个共同的特点,就是为了不引起人们的注意和怀疑。
1.3信息隐藏技术的意义及发展前景
Internet上的保密通信和数字产品版权保护方面的强烈需求,已成为信息隐藏技术研究的强大推动力。
在国家安全和军事领域,信息隐藏技术的应用前景也不可估量。
早在80年代初,美苏冷战时期,信息隐匿技术就曾被美国军方所利用,然而如果犯罪分子利用这些技术从事破坏活动,就会给社会安定埋下很大的隐患。
由此可见,信息隐藏技术是一把名副其实的双刃剑。
目前,由于网络通信在发达国家发展较快,信息隐匿技术在国外已经有较广泛的应用,许多大公司都在从事这方面的研究和开发,如IBM公司、NEC公司等,各国的许多大学和研究机构也都在这一领域进行着积极的探索,并且已有大量有价值的文章公开发表,一些用于信息隐藏和分析的软件也已商品化。
今后,随着Internet的快速发展,信息隐藏技术将会更大范围地应用于民用与商用,这也是各大公司、部门投资开发该技术的主要原因。
第二章信息隐藏技术
2.1信息隐藏的基本概念和特征
一、信息隐藏技术的基本概念
信息隐藏技术(InformationHiding)是利用载体信息的冗余性,将秘密信息隐藏于普通信息之中,通过普通信息的发布而将秘密信息发布出去,可以避免引起其他人注意,从而具有更大的隐蔽性和安全性,十分容易逃过拦截者的破解。
二、信息隐藏技术的特征
信息隐藏的特征主要有鲁棒性、不可感知性、安全性、无歧义性、隐藏能力等。
其中鲁棒性是指抗拒各种信号处理操作和恶意攻击的能力,在隐蔽载体不产生明显降质的前提下,所隐藏的信息仍能保持完整性或仍能被准确鉴别。
无歧义性是指数字水印所确定的版权信息能够被惟一确定地鉴别,不会发生多重所有权的纠纷,以判定数字作品的真正所有者。
在满足鲁棒性和不可感知性的前提下,信息隐藏容量足够大。
信息隐藏和信息加密都有着显著的区别。
信息加密是利用单钥或双钥密码算法把明文变换成密文通过公开信道送到接收者手中。
非授权者无法获知保密信息的具体内容,却能意识到保密信息的存在。
信息隐藏则使攻击者无法直观地判断他所监视的信息中是否含有秘密信息。
密码术和信息隐藏技术不是互相矛盾、互相竞争,而是相互补充的技术,他们的区别在于应用的场合不同,对算法的要求不同,但在实际应用中需要互相配合。
将加密技术融合到信息隐藏技术中来,并将信息隐藏中数字水印的经典算法加以改进也融合进信息隐藏技术,可使整个信息隐藏过程达到理论上的最高安全级别。
信息隐藏的基本模型分为四个阶段:
预处理阶段、嵌入阶段、传输阶段和提取阶段。
如图1。
图1.信息隐藏的基本模型
2.2信息隐藏技术的方法
信息隐藏的方法主要有隐写术、数字水印技术、可视密码、潜信道、隐匿协议等。
隐写术(Steganography):
隐写术就是将秘密信息隐藏到看上去普通的信息(如数字图像)中进行传送。
现有的隐写术方法主要有利用高空间频率的图像数据隐藏信息、采用最低有效位方法将信息隐藏到宿主信号中、使用信号的色度隐藏信息的方法、在数字图像的像素亮度的统计模型上隐藏信息的方法、Patchwork方法等等。
当前很多隐写方法是基于文本及其语言的隐写术,如基于同义词替换的文本隐写术,anefficientlinguisticsteganographyforchinesetext一文就描述采用中文的同义词替换算法。
其他的文本的隐写术有基于文本格式隐写术等。
数字水印技术(DigitalWatermark):
技术是将一些标识信息(即数字水印)直接嵌入数字载体(包括多媒体、文档、软件等)当中,但不影响原载体的使用价值,也不容易被人的知觉系统(如视觉或听觉系统)觉察或注意到。
目前主要有两类数字水印,一类是空间数字水印,另一类是频率数字水印。
空间数字水印的典型代表是最低有效位(LSB)算法,其原理是通过修改表示数字图像的颜色或颜色分量的位平面,调整数字图像中感知不重要的像素来表达水印的信息,以达到嵌入水印的目的。
频率数字水印的典型代表是扩展频谱算法,其原理是通过时频分析,根据扩展频谱特性,在数字图像的频率域上选择那些对视觉最敏感的部分,使修改后的系数隐含数字水印的信息。
可视密码技术:
可视密码技术是Naor和Shamir于1994年首次提出的,其主要特点是恢复秘密图像时不需要任何复杂的密码学计算,而是以人的视觉即可将秘密图像辨别出来。
其做法是产生n张不具有任何意义的胶片,任取其中t张胶片叠合在一起即可还原出隐藏在其中的秘密信息。
其后,人们又对该方案进行了改进和发展。
主要的改进办法有:
使产生的n张胶片都有一定的意义,这样做更具有迷惑性;
改进了相关集合的造方法;
将针对黑白图像的可视秘密共享扩展到基于灰度和彩色图像的可视秘密共享。
现代应用:
载体文件(coverfile)相对隐秘文件的大小(指数据含量,以比特计)越大,隐藏后者就越加容易。
因为这个原因,数字图像(包含有大量的数据)在因特网和其他传媒上被广泛用于隐藏消息。
这种方法使用的广泛程度无从查考。
例如:
一个24位的位图中的每个像素的三个颜色分量(红,绿和蓝)各使用8个比特来表示。
如果我们只考虑蓝色的话,就是说有2种不同的数值来表示深浅不同的蓝色。
而像11111111和11111110这两个值所表示的蓝色,人眼几乎无法区分。
因此,这个最低有效位就可以用来存储颜色之外的信息,而且在某种程度上几乎是检测不到的。
如果对红色和绿色进行同样的操作,就可以在差不多三个像素中存储一个字节的信息。
更正式一点地说,使隐写的信息难以探测的,也就是保证“有效载荷”(需要被隐蔽的信号)对“载体”(即原始的信号)的调制对载体的影响看起来(理想状况下甚至在统计上)可以忽略。
这就是说,这种改变应该无法与载体中的噪声加以区别。
从信息论的观点来看,这就是说信道的容量必须大于传输“表面上”的信号的需求。
这就叫做信道的冗余。
对于一幅数字图像,这种冗余可能是成像单元的噪声;
对于数字音频,可能是录音或者放大设备所产生的噪声。
任何有着模拟放大级的系统都会有所谓的热噪声(或称“1/f”噪声),这可以用作掩饰。
另外,有损压缩技术(如JPEG)会在解压后的数据中引入一些误差,利用这些误差作隐写术用途也是可能的。
隐写术也可以用作数字水印,这里一条消息(往往只是一个标识符)被隐藏到一幅图像中,使得其来源能够被跟踪或校验。
2.3版权保护中的几种信息隐藏技术
一、数据锁定
出版商从降低成本的角度出发,可以把多个软件或电子出版物集成到一张光盘上出售,盘上所有的内容均被分别进行加密锁定,不同的用户买到的均是相同的光盘,每个用户只需付款买他所需内容的相应密钥,即可利用该密钥对所需内容解除锁定,而其余不需要的内容仍处于锁定状态,用户是看不到的。
这样,拥有相同光盘的不同用户,由于购买了不同的密钥,便可各取所需地得到光盘上相应的内容,这为用户和商家都提供了极大的便利。
同理,在Internet上数据锁定可以应用于FTP(文件传送协议)服务器或一个Web站点上的大量数据,付费用户可以利用特定的密钥对所需要的内容解除锁定。
但随之而来的问题是,解除锁定后存于硬盘上的数据便可以被共享、拷贝,因此,仅仅依靠使用数据锁定技术还无法阻止加密锁定的数据被非法扩散。
密码在数据锁定技术中扮演着重要的角色,如果能做到破译密码的代价高于被保护数据的价值,那么我们就有理由认为数据锁定技术能够使出版商的利益得到可靠的加密保护。
二、隐匿标记
这里主要介绍如何利用文字间隔的改变来嵌入隐匿标记。
(1)在文本文件中,字与字间、行与行间均有一定的空白间隔,把这些空白间隔精心改变后可以隐藏某种编码的标记信息以识别版权所有者,而文件中的文字内容不需作任何改动。
(2)现在的激光打印机具有很高的解析度,可以控制字符使之发生微小的位移,人眼对字间距、行间距的微小差别并不十分敏感,而现在的扫描仪能够成功地检测到这一微小的位移。
我们用扫描仪可以高分辨率地获得印刷品的图像,并通过适当的解码算法找到其中的隐匿标记。
(3)利用ASCII字符的显示特性,用那些在CRT上不显示出来的字符作为隐匿信息嵌入文件中,一般的文字处理器读不出这些信息,而利用特定的软件进行解码运算可以读出隐匿信息[2]。
在20世纪80年代的英国,有过关于隐匿标记的一个典型应用实例[3]。
当时的英国首相玛格丽特•撒切尔夫人发现政府的机密文件屡屡被泄露出去,这使她大为光火。
为了查出泄露机密文件的内阁大臣,她使用了上述这种利用文字间隔嵌入隐匿标记的方法,在发给不同人的文件中嵌入不同的隐匿标记,虽然表面看文件的内容是相同的,但字间距经过精心的编码处理,使得每一份文件中都隐藏着唯一的序列号,不久那个不忠的大臣就被发现并受到了应有的惩罚。
三、数字水印
数字水印是镶嵌在数据中,并且不影响合法使用的具有可鉴别性的数据。
它一般应当具有不可察觉性、抗擦除性、稳健性和可解码性。
改变图像中的像素点可以嵌入数字水印信息,在一个很大的宿主文件中嵌入的隐匿信息越少就越难以被察觉。
带宽和不可察觉性之间可以根据不同的应用背景取得合理的折衷。
为了保护版权,可以在数字视频内容中嵌入水印信号。
如果制订某种标准,可以使数字视频播放机能够鉴别到水印,一旦发现在可写光盘上有“不许拷贝”的水印,表明这是一张经非法拷贝的光盘,因而拒绝播放。
还可以使数字视频拷贝机检测水印信息,如果发现“不许拷贝”的水印,就不去拷贝相应内容[5]。
对于一些需要严格控制数量和流通范围的数字媒体,可通过该技术在其中嵌入数字水印,加以控制。
数字水印能够用于静态数字图像(彩色或灰度级的)、数字音频、数字视频的版权保护,推而广之,可以保护各种多媒体产品,为它们作上特殊标记。
数字水印以其他信号为载体(即嵌入其他信号中),数字水印的加入不会干扰被它所保护的数据,载体信号受到嵌入其中的水印信号的影响非常小,一般是通过改变数字视频或数字音像数据的最低有效位或噪声部分(因为数字化信息——数字化电视节目、摄像机摄取的图像等均含有本底噪声,有用信号和本底噪声一起能够被计算机系统高保真地存储和传输)来加入水印信息,以使人眼(耳)根本无法察觉。
水印不改变其载体数据量的大小。
把一幅照片数字化后生成的数字图像,噪声部分约占全部信息5%~10%,由于嵌入的水印数据不易与原始信息数字化过程中引入的噪声区别开来,因此,嵌入处理的安全性很强。
数字水印必须具有难以被破坏和伪造的特性,它能够唯一确定地表示数字产品的版权所有者。
盗版者无法去除水印,水印具有在滤波、噪声干扰、裁剪和有失真压缩(如JPEG、MPEG)下的稳健性,因而能够抵御各种有意的攻击。
数字水印一般是由伪随机数发生器、置乱器和混合系统产生。
人们通常讲的数字水印都是稳健型数字水印,与稳健型水印性质不同的另一类水印是脆弱数字水印,它与稳健性特征相反,具有较强的敏感性,且检测阈值低,可用于识别敌手对信息的恶意篡改,用于保证信息的完整性。
正因为数字水印在版权保护方面是一种很有前途的技术,对它的攻击也就不可避免。
目前数字水印方面的工作是希望找到一种公钥密码体制的技术方法,任何人都可以鉴别,但只有版权所有者可以嵌入,与之相关的问题是要建立复杂的水印公证体系。
通过以上的介绍,我们可以发现这样一个特点,数字水印与它所保护的媒体内容或版权拥有者密切相关,而其他信息隐藏技术只关心被藏信息的隐蔽性。
数字水印通常可看作是一对多的通信,而其他信息隐藏技术往往是一对一的通信。
2.4保密通信中的几种信息隐藏技术
一、数字签名中的阈下信道
阈下信道是一种典型的信息隐藏技术。
阈下信道的概念是GustavusJSimmons于1978年在美国圣地亚国家实验室(SandiaNationalLabs)提出的,之后又做了大量的研究工作。
阈下信道(又叫潜信道)是指在公开(Overt)信道中所建立的一种实现隐蔽通信的信道,这是一种隐蔽(Covert)的信道[4]。
经典密码体制中不存在阈下信道。
分组密码(例如DES加密方案)中也不存在阈下信道,因为与明文块(长度为64bit)相对应的密文块(长度为64bit)的大小是相同的。
如果存在阈下信道,则一个明文块要对应多个不同的密文块,而事实上在DES(数据加密标准)方案中明、密文块是一一对应的。
但在大多数基于公钥体制的数字签名方案中,明文m与数字签名S(m)不是一一对应的,这是由于会话密钥具有可选择性,从而对同一个消息可产生多个数字签名,即对每个m可以有多个S(m)。
但这并不影响对签名的验证,即对于多个不同的签名,只要私钥相同,则验证者可以通过计算S-1(S(m))=m来验证签名的有效性,这就为阈下信道的存在提供了条件,阈下收方可以根据这些不同的数字签名获取公开收方无法得到的阈下信息。
研究表明,绝大多数数字签名方案都可包含阈下信道的通信,其最大特点是阈下信息包含于数字签名之中,但对数字签名和验证的过程无任何影响,这正是其隐蔽性所在。
即使监视者知道要寻找的内容,也无法发现信道的使用和获取正在传送的阈下消息,因为阈下信道的特性决定了其安全保密性要么是无条件的,要么是计算上不可破的。
在数字签名体制中,消息及其相应的签名可用三元组(M;
r,s)或(H(M);
r,s)表示。
如果H(M)、r和s的长度均接近于nbit,则整个三元组长度就比只传消息的长度增加2nbit,其中nbit用于提供对签名的安全保护(防窜改、防伪造、防移植等,伪造成功率为2-n,另外的nbit则可用于构造阈下信道。
如果发方牺牲一些保密度,还可以加大阈下信道的容量。
阈下信道在国家安全方面的应用价值很大。
如果采用全球性标准,那么世界上任何地方的用户检查点都能即时检查出数字证件上的信息完整性,并能确定持证人是否合法持证人。
将来可以在数字签名的数字证件中建立阈下信道,把持证人是否为恐怖主义分子、毒品贩、走私犯或重罪犯等情况告诉发证国的海关人员,以及向金融机构、商业实体透露持证人的信用评价、支付史等情况,而仅检查公开信息的人是无法看到此类阈下信息的,持证人自己也无法获得和修改这些阈下信息。
二、Internet上的匿名连接
在网络通信中,跟踪敌手的数据包,进行业务量分析,以及判断谁和谁在通信,也是收集谍报信息的一个重要来源,而采用隐匿通信的技术就是为了保护通信信道不被别人窃听和进行业务量分析,这种技术提供一种基于TCP/IP协议的匿名连接,从数据流中除去用户的标识信息,即用该技术建立连接时,并不是直接连到目的机器的相应的数据库,而是通过多层代理服务器,层层传递后到达目的地址,每层路由器只能识别最临近的一层路由器,第一层路由器对本次连接进行多层加密,以后每经过一层路由器,除去一层加密,最后到达的是明文,这样每层路由器处理的数据都不同,使敌手无法跟踪。
连接终止后,各层路由器清除信息。
这有点类似于地下工作者的单线联络,每个人只知道与前后哪两个人接头,而对自己所传的消息最初从哪儿来、最终到哪儿去一概不知。
从应用的角度讲,比如你在网上购物,却不想让中途窃听者知道你买了什么东西,或者你访问某个站点,却不想让别人知道你是谁,就可以用这种技术。
这种技术可用于有线电话网、卫星电话网等,它不但适用于军用,而且适用于商用,还可广泛用于E-mail、Web浏览以及远程注册等。
近年来,利用网络进行各种犯罪活动的案件逐年增加,政府情报部门在查找犯罪线索方面扮演着重要的角色。
网上信息收发的“隐私权”(或者说匿名性、不可追踪性)问题也一直是人们所关注的,与此相矛盾的是情报部门所要求的透明性(或者说可追踪性)。
国外有报道说一名被通缉的恐怖分子利用这种匿名连接技术借助Internet上的某个体育比赛聊天室和性爱话题BBS与别人秘密联络,这给情报部门的监听工作提出了严峻的课题。
2.5信息隐藏的安全性
一、概述
信息隐藏安全性研究是信息隐藏技术领域研究的重点内容,影响信息隐藏安全性的因素以及度量方法和指标,在指导在信息隐藏系统的设计过程中,规避各种隐藏检测和攻击,使隐藏系统具备较好的安全性。
二、信息隐藏通信模型
考虑信息隐藏的基本原理和面临的威胁,信息隐藏通信模型如图2所示。
通信过程中信息隐藏面临的主要干扰和威胁有信道干扰、被动攻击、主动攻击。
图2.信息隐藏通信模型
根据隐藏的基本方法和原理,信息隐藏系统可用六元组Σ=(C,M,K,C’,DK,EK)来表示,其中,C为载体信号;
M为需要隐藏的秘密信息;
K是整个系统的密钥集合,它包含K1和K2个部分:
K1是加密密钥,包括加密密钥K1E。
和解密密钥K1D,K2是隐藏密钥,包括秘密信息的嵌入密钥K2E。
和提取密钥K2D;
EK和DK分别是嵌入算法和提取算法,两者是可逆的。
通过嵌入算法EK加载了秘密信息的载体信号变为C’,通过信道后,由于受到信道的干扰和攻击者的各种攻击,因此接收端收到的信息为C’’。
这里C’’=C’,接收端可以指合法的接收方,也可以指非法的攻击者。
他们的共同目的都是试图从信号C’中提取隐藏的信息M’(这里的M’是由信道传输造成的M的微小形变),不同的是合法的接收方知道提取算DK和提取密钥KD,而攻击者可能不知道DK和KD。
EK包E’K1(加密函数)和E’K2(嵌入函数)2个部分,EK包含E’K1(C,E’K1(M,K1E),K2E)→C’;
DK是EK的逆过程,它也包含D’K1(解密函数)和D’K2(提取函数)2个部分,DK:
D’K1(D’K2,(C’,K2D),K2D)→M。
EK的第1部分即加密函数部分为S=E’K1(M,E1E)。
这里,密文信息S由秘密信息M和加密密钥K1E唯一确定。
EK的第2部分即嵌入函数部分为E’K2(C,S,K2E)→C’,依据嵌入密钥如。
将密文信息S嵌入到原始载体C中形成隐秘载体C’。
根据算法要求的不同,在提取的时候可能需要利用到原始的载体,也可能不需要用到原始的载体信息。
三、信息隐藏安全分析
(一)信息臆藏系统各要素对安全的影响
下面分析隐藏系统的六元组Σ=(C,M,K,C’,DK,EK)中各要素对隐藏安全的影响,其中,K包含K1,K2。
(1)C(载体信号)[5]。
对于一个安全的信息隐藏系统,要让攻击者无法判断出所截获的文件是一个普通文件还是隐藏了秘密信息的文件,就是不能让攻击者得到原始载体C。
如果攻击者同时得到了原始载体C和隐秘载体C’,通过比较分析就会很容易地发现秘密信息的存在。
(2)M(秘密信息)和K1(加密密钥)。
M在密钥K1的作用下,经过预处理变为S,预处理部分可以归结为加密的安全性上,在此不作为信息隐藏的安全要素。
主要讨论密文信息S隐藏安全性问题。
(3)K2(隐藏密钥)。
隐藏密钥由嵌入密钥K2E和提取密钥K2D来保证。
隐藏密钥的作用是控制所要选用的信息隐藏算法,选取用来搭载秘密信息的载体,选择秘密信息在载体中的嵌入位置以及嵌入的方式和顺序。
1)隐藏密钥选择系统所要使用的嵌入算法和与之对应的提取算法。
而选择一个优秀算法的目的是为了使攻击者无论通过人眼识别还是计算分析,都无法确定他所截获的隐秘载体C’中是否隐藏了秘密信息M,即H(M|C’)=H(M)。
2)隐藏密钥从载体库中选择系统所要使用的载体。
3)隐藏密钥选择秘密信息在载体中的嵌入位置以及嵌入的方式和顺序。
这样,即使攻击者成功地检测出了秘密信息的存在,在不知道这部分隐藏密钥的情况下无法提取出隐藏的秘密信息。
(4)DK(嵌入算法)和EK(提取算法):
按照Kerckhoffs提出的密码系统设计准则,信息隐藏的安全性不应该依赖算法。
通过上述分析可以看出整个系统的安全性主要依赖于隐藏密钥K2,载体信息隐藏密钥和秘密信息的保密性是信息隐藏安全的必要条件。
隐藏密钥的强度是制约隐藏系统安全的主要因素。
(二)攻击对信息隐藏安全性的影晌
对信息隐藏系统的攻击是影响系统安全性的直接因素,在研究信息隐藏系统安全性时,必须考虑可能发生的各种攻击。
这些攻击分为被动攻击和主动攻击。
1、被动攻击对系统安全性的影响
被动攻击主要指攻击者对信道上
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 lsb 信息 隐藏 技术 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)