1、LSB数字图像加密技术综合评分:实验一:LSB信息隐藏实验【实验目的】:一、熟悉MATLAB基本操作二、完成LSB实验【实验内容】:(请将你实验完成的项目涂“”)实验完成形式: 用MATLAB函数实现LSB信息隐藏和提取 用MATLAB命令行方式实现LSB信息隐藏和提取 其它:(请注明)实验选择载体: 256256灰度图像 256256RGB图像 任意大小的RGB图像实验效果和分析: 分析了LSB算法的抗攻击能力 能随机选择嵌入位(考虑安全性因素) 嵌入位均匀分布于载体 信息提取的检错/纠错 其它:(请注明)【实验工具及平台】: Windows+Matlab 其它:(请注明) WinHex 【
2、实验涉及到的相关算法】:1、RGB图像的每个像素有三个颜色分量(r,g,b)构成,且r,g,b三个颜色分量都是取值(0,1)内的,为了便于计算机的“位”概念相联系,进行LSB操作,我们想(0,1)与(0,255)进行对应。图一在uint8中修改单位1,实际上就是相应修改像素值1/256=0.0039。嵌入过程:for (i=1;i=像素序列个数;i+) For(i=1;i=秘密消息长度;i+) /将选取的像素点的最不重要位依次替换成秘密信息 图二提取过程:For(i=1;i=秘密消息长度;i+) /序选取 图三本实验中LSB认为是图片中每个像素的最低位bit值【实验分析】:1、顺序隐藏,256
3、*256灰度图,LSB=1 左图是原始图像与隐写图像的区别,可以看到左边的白色部分是两幅图的不一样之处,也就是隐秘消息的地方,因为是顺序隐秘,所以很容易检测出。隐藏的信息:提取的信息:局部矩阵验证:提取成功!2、随机嵌入与提取 经验证,提取无误,验证方法如上,不再赘述。3、随机嵌入与提取,隐藏位lsb的选取与隐写图像不可见性的关系为了使效果明显,我们将隐藏信息加长,存为alphabet.txt。观察结论:本试验中LSB表示的是每像素的像素值的最后一位,即默认的LSB=1,加入将LSB值改为2,3,.,8,明显发现随便修改位的增加,图像的失真越来越明显。4、JPEG压缩与隐秘信息误码率的关系,顺
4、序嵌入与提取。msg,result=jpgandlsb(lenna_gray_256_jpg.jpg,alphabet.txt,alphabet2.txt);msg,result=jpgandlsb(lena_gray_256_tif.tif,alphabet.txt,alphabet2.txt);msg,result=jpgandlsb(lenna_gray_256_bmp.bmp,alphabet.txt,alphabet2.txt);jpeg压缩对lsb算法的破坏是毁灭性的。JPEG压缩对LSB算法的影响 5% 10% 15% 20% 30% 45% 85% 100%5、各种大小和类型(RGB)lenna_gray_512_jpg.jpglenna_color_256_jpg.jpglenna_color_512_jpg.jpg归纳一下LSB的优缺点:LSB (LSB:least significant bits) :将信息嵌入到随机选择的图像点中最不重要的像素位 上,这可保证嵌入的隐写信息是不可见的。优点:操作简单,实现容易,隐藏信息量相对比较大。缺点:由于使用了图像不重要的像素位,算法的鲁棒性差,隐写信息很容易为滤波、图像量化、几何变形的操作破坏。