02 隐秘技术空域隐秘技术Word格式文档下载.docx
《02 隐秘技术空域隐秘技术Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《02 隐秘技术空域隐秘技术Word格式文档下载.docx(12页珍藏版)》请在冰豆网上搜索。
2LSB算法
3Patchwork算法
4图像降级和隐蔽信道
5二进制图像中的信息隐藏
教学方法:
讲授+演示
教学手段:
多媒体+板书
授课内容
基本内容
备注
一、数字图像类型
这次课程开始我们学习信息的隐秘技术,有哪技术,可以在多媒体中隐藏信息?
一般情况下,隐藏技术分为两大类,为空域和实域。
图像按照色彩调配的方法可以分成多种类型的图像。
1、灰度图像:
灰度图像可以看做一个二维矩阵,其元素由0到1之间的实数构成,0代表黑色,1(255)代表白色,它把颜色从黑到白分为256种不同的颜色。
灰度图像中的元素代表该像素的黑白程度,因此灰度图像没有彩色。
2、彩色图像:
1.CMY色彩系统
CMY(Cyan,Magenta,Yellow)色彩系统也是一种常用来表示颜色的方式。
计算机屏幕的显示通常用RGB色彩系统,它是通过颜色的相加来产生其他颜色,这种做法通常称为加色合成法(AdditiveColorSynthesis)。
而在印刷工业上则通常用CMY色彩系统(一般所称的四色印刷CMYK则是加上黑色),它是通过颜色相减来产生其他颜色的,所以称这种方式为减色合成法(SubtractiveColorSynthesis)。
2.YIQ色彩系统
YIQ色彩系统通常被北美电视系统所采用(属于NTSC系统),这里的Y不是指黄色,而是指颜色的明视度(Luminance),即亮度(Brightness)。
其实Y就是图像的灰度值(Grayvalue),而I和Q则是指色调(Chrominance),即描述图像色彩及饱和度的属性。
RGB与YIQ之间的对应关系如下:
3.YUV色彩系统
YUV色彩系统被欧洲的电视系统所采用(属于PAL系统),其中Y也是指明视度。
U和V虽然也是指色调,但是与I与Q的表达方式不完全相同。
RGB与YUV之间的对应关系如下:
4.YCbCr色彩系统
YCbCr色彩系统也是一种常见的色彩系统。
JPEG采用的就是YCbCr色彩系统,它是从YUV色彩系统衍生出来的。
其中的Y也是指明视度,而Cb和Cr则是对U和V作少量调整得到的。
RGB色彩系统和YCbCr系统之间的对应关系如下:
索引图像
索引图像(Index)是一类比较特殊的图像。
索引图像可以被看做两个二维矩阵,其中一个矩阵与灰度图像的矩阵相似,它的元素由0~255之间的整数构成;
另一个矩阵是一般情况下是一个255行3列的矩阵,该矩阵中的元素由0~1之间的实数。
索引图像可把像素值直接映射为调色板数值。
调色板通常与索引图像存储在一起,装载图像时,调色板将和图像一同自动装载。
索引模式的图像就像是一块块由彩色的小瓷砖所拼成的,由于它最多只能有256种彩色,所以它所形成的文件相对其它彩色要小得多。
索引模式的另一个好处是它所形成的每一个颜色都有其独立的索引标识。
当这种图像在网上发布时,只要根据其索引标识将图像重新识别,它的颜色就完全还原了。
索引模式主要用于网络上的图片传输和一些对图像象素、大小等有严格要求的地方。
二、LSB算法
空域隐秘技术是指在数字媒体的空间域中嵌入信息的技术。
最简单和有代表性的方案就是用秘密信息代替数字媒体(如数字图像)的最低有效位(LSB)或者多个位平面的所有比特的算法,这里的秘密信息指的是二值比特序列。
对静止的灰度图像可以进行位分解(bitdecomposition)方法。
其分解过程可以表示如下:
令X是大小为M×
N、灰度级为2L的图像,XP(m,n)是图像的一个像素值。
其中1≤m≤M,1≤n≤N。
其中Bl(·
)表示位分解算子,xl(m,n)∈{0,1}。
对xl(m,n)的重构公式为
一个信息嵌入的实例:
设有两幅图像Lena和Baboon,大小都是256×
256,如图2-1和图2-2所示。
其中Lena是256灰度级图像,Baboon是二值图像。
我们以图像Lena作为载体图像,以图像Baboon作为水印。
将Baboon分别替换图像Lena的8个位平面中的一个,获得如图2-3所示的8个图像,从左至右信息替换的位平面逐渐升高。
对于彩色图像而言,在不同的色彩通道中使用LSB算法,来嵌入秘密信息。
嵌入过程包括选择一个载体元素的子集﹛j1,…,ji﹜,然后在子集上执行替换操作cm,即把ci的LSB与mi进行交换(mi可以是1或0)。
一个替换系统也可以修改载体的多个比特,例如,在一个载体元素的两个最低比特位隐藏两比特信息。
在提取过程中,抽出被选择载体元素的LSB,然后排列起来重构秘密信息。
LSB方法的特点:
简单,易实现,容量大
安全性不高,不能抵抗叠加噪声、有损压缩等破坏
多个位平面替换:
虑到最低位平面的鲁棒性差,而最高位平面替换的不可见性差,有人提出一种折中的方案,将水印与多个位平面替换。
对于8位图像来书,通常选择4位以下的各个位平面。
每个像素所要替换的位平面是随机选择的,所嵌入的水印也经过置乱的,以此来确保水印的安全性和鲁棒性。
三、Patchwork算法
W.Bender等人于1995年提出一种称为“拼凑”的信息隐藏方法。
该算法的基本思想是根据密钥K随机选择N个像素对,然后利用以下公式修改每个像素的亮度对(ai,bi)。
将每个ai的亮度值加1,每个bi的亮度值减1,这样整个图像的平均亮度保持不变。
检测时,利用密钥K将嵌入水印的所有像素对挑选出来(只有密钥持有者知道),然后计算:
如果载体中确实含有水印,则可以预计这个和应该接近0。
这是因为我们假设原始载体中随机选择的N对像素是独立分布的,即:
对图像嵌入水印的过程分为四步:
(1)利用一个密钥k和伪随机数发生器来选择数据对(ai,bi)。
(2)将补丁ai处的亮度值加1,将补丁bi处的亮度值减1。
(3)重复上述步骤n次(n的一般要求大于10000)。
相应水印检测过程只需要两步:
(1)对嵌入水印后的图像,用同样的密钥k和伪随机数发生器来选择数据对(ai,bi)。
(2)计算S′n:
(3)只有当知道嵌入位置时才能使得S′n具有非零值。
与LSB算法不同,Patchwork是将水印信息隐藏在图像数据的亮度统计特性中,给出了一种原始的扩频调制机制。
尽管该算法一般只能隐藏1bit信息,但仍然可以在一定程度上对图像数据的版权给予保护。
patchwork算法的扩展
设s是需要嵌入到图像I={R,G,B}中的一个水印值,s=1或s=0,p=(i,j)是I中伪随机选择的位置坐标,该坐标由密钥k产生。
通过修改位置p中蓝色成分B的亮度值可以嵌入s:
B′ij=Bij+(2s-1)Lijq
亮度值由下式计算:
L=0.299R+0.587G+0.114B
其中:
q是决定嵌入信息强度的常数,它的选择需要同时满足稳健性和不可见性的要求。
检测嵌入水印时,为了做到不需要原始图像的参与,需要对待检测的数据位进行预测。
这种预测是基于对嵌入水印像素p的邻域内像素点的线性组合进行的,有学者指出十字形的邻域预测效果最佳。
预测数据可以如下计算:
由下式得到嵌入的水印:
这样可以嵌入多个bit位的水印信息。
四、图像降级和隐蔽信道
图像降级
在1992年,Kurak和McHugh报道了在高安全级操作系统中的一个安全威胁。
这个威胁属于信息伪装技术,它能用于秘密地交换图像,我们称之为图像降级。
图像降级是替换系统中的特殊情况,其中图像既是秘密信息又是载体。
给定一个同样尺寸的伪装载体和秘密图像,发送者把伪装载体图像灰度(或彩色)值的四个最低比特替换成秘密图像的四个最高比特。
接收者从隐藏后的图像中把四个最低比特提取出来,从而获得秘密图像的四个最高比特位。
在许多情况下载体的降质视觉上是不易察觉的,并且对传送一个秘密图像的粗略近似而言,四比特足够了。
在多级安全操作系统中,主体(进程、用户)和客体(文件、数据库等)都被指派一个特定的安全级别,参见著名的Bel-LaPadula模型。
主体通常仅允许读取较低安全级别的客体(“不能向上读”),同时只能向较高安全级别的客体进行写操作(“不能向下写”)。
第一个限制的原因是明显的,而第二个限制的原因则是试图阻止用户将重要信息变为低安全级别主体可访问的。
信息降级,就是通过将机密信息嵌入较低安全级别的客体中,使得机密信息不再机密(信息降级因此得名),从而破坏了“不能向下写”的原则。
隐蔽信道
•利用计算机系统中的未使用和保留的空间
•利用计算机系统中的隐通道
•利用密码协议中的阈下信道
四、二进制图像中的信息隐藏
基于关系的图像水印算法
该方法在水印的嵌入过程中,通过修改载体数据使得水印的不同值反映了不同关系,如大小关系、逻辑关系和奇偶关系等,从而在检测时根据关系得到相应的水印信息。
根据人眼对于饱和度少量修改的敏感度较低的原理,利用快内饱和度的关系来嵌入水印信息,算法描述如下:
将图像从RGB颜色空间转化到HIS颜色空间。
H代表色相,S代表饱和度,I代表亮度。
设载体图像的饱和度分量为x={xi|x∈[0,100]},大小为N1×
N2;
水印w={wi|wi∈{0,1}}的大小为M1×
M2≤N1/3×
N2/3。
首先,将x分割成一系列3×
3的图像块,共N1/3×
N2/3块。
然后,利用密钥K随机选择M1×
M2个图像块进行水印嵌入,这些块的序号组成序列组成a={ai|ai∈{0,1,2,…,N1×
N2-1},0≤i≤M1×
M2-1},元素互不相同。
对于第ai块,嵌入过程如下:
对该块的像素按饱和度值从大到小排序,分别计算前5个饱和度的平均值Maxave和后四个饱和度的平均值Minave。
若水印位wi=0且Maxave-Minave→0,或者水印位wi=1且Maxave-Minave>
t则不作任何改动,这里t为给定阈值。
否则,若wi=0,则修改像素以增加Minave而减少Maxave直至Maxave-Minave→0;
若wi=1,则修改像素以增加Maxave而减少Minave,直至Maxave-Minave>
t。
二值图像的水印加入
Zhao和Koch信息隐藏方案
•嵌入
–
把一个二值图像分成个矩形图像区域,如果其中黑色象素的个数大于一半,则表示嵌入0;
如果白色象素的个数大于一半,则表示嵌入1
–当需要嵌入的比特与所选区域的黑白象素的比例不一致时,为了达到希望的象素关系,则需要修改一些象素的颜色
–修改应遵循一定的规则,原则是不引起感观察觉
–修改应在黑白区域的边缘进行
•需注意的细节
–应考虑有一定的冗余度。
确定有效区域
确定两个阈值和,以及一个健壮性参数。
隐藏0时,该块的黑色象素的个数应属于;
隐藏1时,该块的黑色象素的个数应属于
–如果为了适应所嵌入的比特,目标块必须修改太多的象素,就把该块设为无效
标识无效块:
将无效块中的象素进行少量的修改,使得其中黑色象素的百分比大于,或者小于
Matsui和Tanaka嵌入方案
•若第i个秘密消息位mi是0,我们令RL(ai,ai+1)为偶数;
否则RL(ai,ai+1)为奇数,就表示mi是1。
•例如,可通过下面的方式进行:
如果mi是0,而RL(ai,ai+1)是奇数,我们就把ai+1向左移动一个像素。
另一方面,如果mi=1并且RL(ai,ai+1)是偶数,我们就把ai+1向右移动一个像素。
教案尾页
回顾和小结
本节课主要空域隐秘算法做了介绍,包括对LSB算法、pathwork算法、二进制图像中的隐藏算法做了分析。
对图像降级和隐蔽信道的概念做了介绍。
对空域算法的特点做了归纳和总结。
复习思考题或作业题
(一)用matlab或者C实现LSB和PATHWORK算法。
(二)自学隐蔽信道的概念和相关内容。
实施情况及分析