信息隐藏实验一
信息隐藏算法实验报告
![信息隐藏算法实验报告](https://img.taocdn.com/s3/m/9161403059fafab069dc5022aaea998fcc22408c.png)
一、实验背景信息隐藏技术是一种在传输或存储过程中将隐秘信息隐藏在特定载体中,以保证隐秘信息安全性的技术。
随着信息技术的不断发展,信息隐藏技术在军事、通信、网络安全等领域具有广泛的应用前景。
本实验旨在验证信息隐藏算法在文本信息隐藏中的应用效果,并分析不同算法的性能差异。
二、实验目的1. 了解信息隐藏技术的基本原理和常用算法。
2. 比较不同信息隐藏算法在文本信息隐藏中的应用效果。
3. 分析影响信息隐藏算法性能的因素。
三、实验内容本实验选用以下三种信息隐藏算法进行文本信息隐藏:1. 基于双文本段的信息隐藏算法2. 基于矢量字库的文本信息隐藏算法3. 基于宋词生成的大容量构造式信息隐藏算法实验步骤如下:1. 选择合适的文本作为载体,包括原文和待隐藏信息。
2. 分别采用三种算法对载体文本进行信息隐藏。
3. 对隐藏后的文本进行提取,并计算提取成功率。
4. 分析不同算法的性能差异,包括提取成功率、隐蔽性和安全性。
四、实验结果与分析1. 基于双文本段的信息隐藏算法该算法通过在多种隐形式中选择适当的隐藏形式和信息分散存储,大大提高信息隐藏的隐蔽性、安全性。
实验结果显示,该算法的提取成功率较高,隐蔽性和安全性较好。
2. 基于矢量字库的文本信息隐藏算法该算法利用汉字的二维象形性和人眼视觉冗余特性,通过修改汉字字库的矢量数据来实现信息隐藏。
实验结果显示,该算法的提取成功率较高,隐蔽性和安全性较好,同时具有较大的嵌入空间。
3. 基于宋词生成的大容量构造式信息隐藏算法该算法基于宋词生成模型,通过符号集设计、编码等综合作用,生成宋词诗句来实现信息隐藏。
实验结果显示,该算法的提取成功率较高,隐蔽性和安全性较好,且生成的宋词文本的信息隐藏容量较大。
综合分析三种算法的性能,可以得出以下结论:1. 基于双文本段的信息隐藏算法和基于矢量字库的文本信息隐藏算法在提取成功率、隐蔽性和安全性方面表现较好。
2. 基于宋词生成的大容量构造式信息隐藏算法在信息隐藏容量方面具有优势。
实验2:信息隐藏技术实验
![实验2:信息隐藏技术实验](https://img.taocdn.com/s3/m/e66d76f576c66137ef06199d.png)
实验2:信息隐藏技术实验一、实验目的掌握信息嵌入与检测的工具与使用方法;掌握数字水印的提取方法二、实验用的仪器、仪表easycode、AssureMark三、实验原理图像水印部分显示阿须数码在数字图像上的数字水印技术。
在不改变原有图像品质的情况下将数字水印信息隐藏于图像本身,并可在需要时能提取,用以作为版权声明和信息保护等。
Assure Image Mark V2。
0 是在一个MS-WINDOWS环境下运行的数字水印嵌入与检测程序,同时能够有效地提取篡改后图像的数字水印信息。
运行步骤依次为:1。
选择欲添加水印的原始图像文件、并给新生成水印信息的文件定义名称;2。
嵌入水印信息,可选择两种方式嵌入A:手动输入信息、B:从15877文件中提取信息;3.检测水印信息;选择含水印信息的图像文件,直接点击“检测水印”按钮;若该文件被篡改,检测时对所篡改的部分显示反差;4。
屏幕中显示所嵌入的数字水印信息.四、实验步骤1、基于图像的信息隐藏—-easycode前提:先建立一个TXT文件,且素材中有一个图片文件CHURCH。
JPG。
目标:将TXT文件秘密潜入到CHURCH.JPG中.隐藏方法:在easycode中单击“文件嵌入”选项卡;单击第一个“浏览”,选择图片文件church.jpg;单击第二个“浏览”,选择文本文件;输入密码后,单击“嵌入文件”按钮,即可。
测试:此时将原始TXT文件删除掉,并打开图片文件查看是否有异常.提取信息:在文件嵌入选项卡中,单击第三个“浏览",选择需要提取信息的图片文件;输入释放密码后,单击“释放文件"按钮,即可发现,txt文件重新恢复出来了。
2、数字水印的嵌入/提取—-AssureMark(注:只能用bmp文件)水印的嵌入方法:选择“嵌入水印”模式;单击“输入原始图像”右侧的“打开”按钮,选择原始图像church。
bmp,并定义输出图片的名称(如123。
bmp),手动输入水印信息(可以是一个字符串,如:123456);单击“嵌入水印”按钮,即可。
工作报告之信息隐藏实验报告
![工作报告之信息隐藏实验报告](https://img.taocdn.com/s3/m/a0710e1310661ed9ad51f380.png)
信息隐藏实验报告【篇一:合肥工业大学信息隐藏实验报告完整代码版】计算机与信息学院专业班级学生姓名及学号课程教学班号任课教师实验指导教师实验地点20~20学年第学期实验1 bmp位图信息隐藏一、实验目的学习bmp格式文件,并编程实现对位图文件信息隐藏二、实验要求将txt文件嵌入bmp 文件中三、问题描述1、bmp位图文件的格式?2、有哪几种方法隐藏信息,分别采用什么样的数据结构3、随机选取如何避免“碰撞”的出现四、算法思想1、bmp位图文件格式0000h~0001h 2字节 -------------------------bm的asc码0002h~0005h 4字节 -------------------------文件大小102718字节0006h~0009h 4字节 -------------------------全为0000ah~000dh 4字节 -------------------------偏移量 118字节000eh~0011h 4字节 -------------------------位图信息块大小40字节 0012h~0015h 4字节 -------------------------宽 4500016h~0019h 4字节 -------------------------高 450001ah~001bh 2字节 -------------------------恒为01h 00h001ch~001dh 2字节 -------------------------颜色所占二进制位数值04h 00h=4 16色位图001eh~0021h 4字节 -------------------------压缩方式=0无压缩0022h~0025h 4字节 -------------------------图像数据区大小 102600字节0026h~0029h 4字节 -------------------------水平每米多少像素 39个 002ah~002dh 4字节 -------------------------垂直每米多少像素 39个 002eh~0031h 4字节 -------------------------图像所用颜色数=00032h~0035h 4字节 -------------------------重要颜色数=00036h~0076h 64字节 -------------------------颜色表0077h~1913dh 102600字节 -------------------------图像数据区2、(1)、在图片图像数据区的一个连续的数据区采用整字节替换的方法(2)、在图像数据的最后增加文本信息的字节(3)、顺序选取每个文本信息字节的每一位替换图像数据区的一个连续的数据区每个字节的最后一位。
信息隐藏实验(LSB隐写,随机LSB隐写,RS隐写分析)
![信息隐藏实验(LSB隐写,随机LSB隐写,RS隐写分析)](https://img.taocdn.com/s3/m/71906f837375a417876f8f50.png)
信息隐藏实验二LSB隐写分析姓名:周伟康学号:班级:一:实验要求1、针对自己实现的隐写算法(嵌入、提取),计算隐蔽载体的PSNR值,通过PSNR值来评估隐写对图像质量的影响,并与主观感受做对比。
2、实现一种隐写分析方法,对隐蔽载体进行检测(卡方、RS……)二:实验步骤1、编写随机选点函数,完善顺序和随机两种LSB信息嵌入和提取。
%随机间隔选点函数%[row, col] = randinterval(test, 60, 1983);function [row, col] = randinterval(matrix, count, key)[m, n] = size(matrix);interval1 = floor(m * n / count) + 1;interval2 = interval1 - 2;if interval2 == 0error('载体太小,不能将秘密消息隐藏其内!');endrand('seed', key);a = rand(1, count);%initializerow = zeros([1 count]);col = zeros([1 count]);r = 1; c = 1;row(1,1) = r;col(1,1) = c;for i = 2 : countif a(i) >= 0.5c = c + interval1;elsec = c + interval2;endif c > nr = r + 1;if r > merror('载体太小,不能将秘密消息隐藏其内!');endc = mod(c, n);if c==0c = 1;endendrow(1, i) = r;col(1, i) = c;end选取8*8的矩阵测试2、对比原始图像和隐藏信息后图像,计算隐蔽载体的均方差(MSE)进而计算峰值信噪比(PSNR),评估隐写对图像质量的影响。
信息隐藏实验报告-信息隐藏技术
![信息隐藏实验报告-信息隐藏技术](https://img.taocdn.com/s3/m/9f859e4c30b765ce0508763231126edb6f1a7698.png)
实验目的隐写分析以及变换域隐写技术实验内容针对LSB隐写的卡方分析a)实现针对LSB隐写的卡方分析b)分析实验性能针对LSB隐写的RS分析a)实现针对LSB隐写的RS分析b)分析实验性能JPEG压缩算法a)分析JPEG压缩算法的主要流程Jsteg隐写算法a)实现Jsteg隐写算法b)分析实验性能F3隐写算法a)实现F3隐写算法b)分析实验性能实验工具及平台■Windows+Matlab□其它:(请注明)实验涉及到的相关算法1、与实验内容选择的项目对应;2、请使用流程图、伪代码、NS 图或文字方式描述,不要..贴代码 卡方隐写分析卡方隐写分析主要利用了LSB 隐写后图像的值对效应。
它需要LSB 隐写满足如下的条件:1. 嵌入信息中0、1的分布较为均匀,即各为50%左右。
由于信息嵌入到载体之前通常需要经过加密操作,因此这一点是容易满足的。
2. 图像需要有较多的像素点被嵌入信息。
当嵌入信息较少时,卡方分析的效果并不精确。
卡方分析的原理是:若设ℎj 表示图像载体中灰度值为j 的像素数量,如果载体图像没有使用LSB 隐写算法,那么ℎ2i 和ℎ2i+1的值通常相差较大,而LSB 隐写方法将秘密信息取代图像的最低位,由于秘密信息通常是加密过的,因此可以看成0、1分布均匀的比特流。
在嵌入过程中只存在2i →2i +1而不存在2i →2i −1的变换,因此使得ℎ2i 和ℎ2i+1的值趋于一致,我们能够借助改变的统计特性判断图像是否经过隐写。
我们首先定义ℎ2i ∗=ℎ2i +ℎ2i+12,由LSB 隐写算法的性质我们可以知道在嵌入前后该值是不变的。
由中心极限定理,我们有ℎ2i −ℎ2i+1√(2ℎ2i ∗)→N(0,1) 因此r = ∑(ℎ2i −ℎ2i ∗)2ℎ2i ∗k i=1服从卡方分布。
结合卡方分布的密度计算函数我们可以计算出载体被隐写的可能性为:p =1−12k−12T(k −12)∫exp (−t 2)t k−12−1dt r0 当p 的值接近于1时,我们可以推断出载体图像中含有秘密信息。
信息隐藏技术_实验报告(3篇)
![信息隐藏技术_实验报告(3篇)](https://img.taocdn.com/s3/m/3cf853128f9951e79b89680203d8ce2f006665be.png)
第1篇一、实验目的1. 了解信息隐藏技术的基本原理和实现方法。
2. 掌握信息隐藏技术在图像、音频和视频等数字媒体中的应用。
3. 通过实验验证信息隐藏技术的有效性和安全性。
二、实验环境1. 操作系统:Windows 102. 编程语言:Python3. 库:OpenCV、scikit-image、numpy、matplotlib三、实验内容1. 图像信息隐藏2. 音频信息隐藏3. 视频信息隐藏四、实验步骤1. 图像信息隐藏(1)选择一幅图像作为宿主图像,并选择一幅图像作为水印图像。
(2)将水印图像转换为二值图像。
(3)对宿主图像进行分块处理,将每个块转换为二值图像。
(4)根据密钥对水印图像进行置乱,提高安全性。
(5)将置乱后的水印图像嵌入到宿主图像的对应块中。
(6)提取水印图像,并与原始水印图像进行对比。
2. 音频信息隐藏(1)选择一段音频作为宿主音频,并选择一段音频作为水印音频。
(2)对宿主音频和水印音频进行分帧处理。
(3)根据密钥对水印音频进行置乱,提高安全性。
(4)将置乱后的水印音频嵌入到宿主音频的对应帧中。
(5)提取水印音频,并与原始水印音频进行对比。
3. 视频信息隐藏(1)选择一段视频作为宿主视频,并选择一段视频作为水印视频。
(2)对宿主视频和水印视频进行帧提取。
(3)根据密钥对水印视频进行置乱,提高安全性。
(4)将置乱后的水印视频嵌入到宿主视频的对应帧中。
(5)提取水印视频,并与原始水印视频进行对比。
五、实验结果与分析1. 图像信息隐藏实验结果表明,嵌入水印后的图像与原始图像在视觉效果上几乎没有差异,水印的嵌入效果良好。
同时,提取的水印图像与原始水印图像完全一致,证明了信息隐藏技术的有效性。
2. 音频信息隐藏实验结果表明,嵌入水印后的音频与原始音频在音质上几乎没有差异,水印的嵌入效果良好。
同时,提取的水印音频与原始水印音频完全一致,证明了信息隐藏技术的有效性。
3. 视频信息隐藏实验结果表明,嵌入水印后的视频与原始视频在视觉效果上几乎没有差异,水印的嵌入效果良好。
信息隐藏实验报告总结(3篇)
![信息隐藏实验报告总结(3篇)](https://img.taocdn.com/s3/m/6c7a3562eef9aef8941ea76e58fafab069dc44e0.png)
第1篇一、实验背景随着信息技术的飞速发展,信息安全问题日益突出。
信息隐藏技术作为一种隐蔽通信手段,在军事、商业、医疗等多个领域具有重要的应用价值。
本实验旨在通过实际操作,深入了解信息隐藏技术的基本原理,掌握其实现方法,并分析其在实际应用中的优缺点。
二、实验目的1. 理解信息隐藏技术的概念、原理和应用领域。
2. 掌握信息隐藏技术的实现方法,包括空域、频域和变换域等方法。
3. 分析信息隐藏技术的安全性、鲁棒性和可检测性。
4. 结合实际案例,探讨信息隐藏技术在各个领域的应用。
三、实验内容本次实验主要分为以下几个部分:1. 信息隐藏技术概述:介绍了信息隐藏技术的概念、原理和应用领域,并简要分析了信息隐藏技术的安全性、鲁棒性和可检测性。
2. 空域信息隐藏:通过将秘密信息嵌入到载体图像的像素值中,实现信息的隐蔽传输。
实验中,我们采用了基于直方图平移的算法,将秘密信息嵌入到载体图像中。
3. 频域信息隐藏:将秘密信息嵌入到载体图像的频域系数中,实现信息的隐蔽传输。
实验中,我们采用了基于DCT变换的算法,将秘密信息嵌入到载体图像的DCT系数中。
4. 变换域信息隐藏:将秘密信息嵌入到载体图像的变换域系数中,实现信息的隐蔽传输。
实验中,我们采用了基于小波变换的算法,将秘密信息嵌入到载体图像的小波系数中。
5. 信息隐藏技术的安全性、鲁棒性和可检测性分析:通过实验,分析了不同信息隐藏方法的优缺点,并探讨了如何提高信息隐藏技术的安全性、鲁棒性和可检测性。
6. 信息隐藏技术在各个领域的应用:结合实际案例,探讨了信息隐藏技术在军事、商业、医疗等领域的应用。
四、实验结果与分析1. 空域信息隐藏:实验结果表明,基于直方图平移的算法能够将秘密信息嵌入到载体图像中,且嵌入过程对图像质量的影响较小。
然而,该方法对噪声和压缩等攻击较为敏感。
2. 频域信息隐藏:实验结果表明,基于DCT变换的算法能够将秘密信息嵌入到载体图像的频域系数中,且嵌入过程对图像质量的影响较小。
信息隐藏_实验报告
![信息隐藏_实验报告](https://img.taocdn.com/s3/m/ef9ec091a0c7aa00b52acfc789eb172dec639911.png)
一、实验目的1. 了解信息隐藏的基本原理和方法。
2. 掌握数字图像、音频、视频等媒体中信息隐藏的实现技术。
3. 熟悉信息隐藏技术在实际应用中的重要性。
二、实验内容1. 数字图像信息隐藏2. 音频信息隐藏3. 视频信息隐藏三、实验原理信息隐藏是指将秘密信息嵌入到公开信息(如数字图像、音频、视频等)中,使得秘密信息在传输或存储过程中不易被发现。
信息隐藏技术广泛应用于网络安全、数字版权保护、隐私保护等领域。
四、实验步骤1. 数字图像信息隐藏(1)选择一幅数字图像作为公开信息,如图1所示。
(2)选择一幅与公开信息大小相同的数字图像作为载体图像,如图2所示。
(3)在载体图像中嵌入秘密信息,采用空域方法,如图3所示。
(4)提取嵌入的秘密信息,如图4所示。
2. 音频信息隐藏(1)选择一段音频作为公开信息,如图5所示。
(2)选择一段与公开信息时长相同的音频作为载体音频,如图6所示。
(3)在载体音频中嵌入秘密信息,采用时域方法,如图7所示。
(4)提取嵌入的秘密信息,如图8所示。
3. 视频信息隐藏(1)选择一段视频作为公开信息,如图9所示。
(2)选择一段与公开信息时长相同的视频作为载体视频,如图10所示。
(3)在载体视频中嵌入秘密信息,采用空域方法,如图11所示。
(4)提取嵌入的秘密信息,如图12所示。
五、实验结果与分析1. 数字图像信息隐藏实验结果表明,采用空域方法嵌入秘密信息后,嵌入秘密信息的图像与原始图像在视觉效果上基本一致,且提取的秘密信息与原始秘密信息完全相同。
2. 音频信息隐藏实验结果表明,采用时域方法嵌入秘密信息后,嵌入秘密信息的音频与原始音频在听觉效果上基本一致,且提取的秘密信息与原始秘密信息完全相同。
3. 视频信息隐藏实验结果表明,采用空域方法嵌入秘密信息后,嵌入秘密信息的视频与原始视频在视觉效果上基本一致,且提取的秘密信息与原始秘密信息完全相同。
六、实验总结通过本次实验,我们了解了信息隐藏的基本原理和方法,掌握了数字图像、音频、视频等媒体中信息隐藏的实现技术。
信息隐藏实验报告一图像的位平面,LSB和MSB
![信息隐藏实验报告一图像的位平面,LSB和MSB](https://img.taocdn.com/s3/m/651b23c58662caaedd3383c4bb4cf7ec4afeb686.png)
信息隐藏实验报告一实验名称:图像的位平面,LSB 和MSB一、实验目的图像的位平面,LSB 和MSBLSB(Least Significant Bits):最不重要位(或最低有效位) MSB(Most Significant Bits):最重要位。
二、实验内容⑴用“按位与”运算清image 的第2、3、4、5、6、7位,结果分别保存在图像矩阵data02、 data03、 data04、 data05、 data06、 data07中,并显示所得结果;⑵用“按位与”运算取image 的第2、3、4、5、6、7位,结果分别保存在图像矩阵data12、 data13、 data14、 data15、 data16、 data17中,并显示所得结果;⑶用“按位与”运算清image 的第1-2、1-3、1-4、1-5、1-6、1-7位,结果分别保存在图像矩阵data02、 data03、 data04、 data05、 data06、 data07中,并显示所得结果; ⑷用“按位与”运算取image 的第3-8、4-8、5-8、6-8、7-8位,结果分别保存在图像矩阵data13、 data14、 data15、 data16、 data17中,并显示所得结果;⑸将彩色图像dsc.jpg 读入图像矩阵image ,重做上面的⑴-⑷项要求;⑹取彩色图像矩阵image 的某个分量(R 、G 、B 均可),重做上面的⑴-⑷项要求;三、实验环境matlab7.0四、基本原理(算法思想)时域是对应于变换域而言的,即不对信号做任何频率变换而得到的信号域就是时域。
对于图像载体,其信号空间也就是像素的取值空间。
我们选择了RGB 颜色空间下的像素作为分析对象。
在RGB 颜色空间中,每一个像素都有三个分量,即红(Red)、绿(Green)、蓝(Blue)分量。
五、实验结果与结论(主要的程序代码、运行结果)⑴用“按位与”运算清image 的第2、3、4、5、6、7位,结果分别保存在图像矩阵data02、 data03、 data04、 data05、 data06、 data07中,并显示所得结果;教师签名2007.11实验时间成绩评 定信息隐藏 课程名称同组人姓 名 05软件工程班 级 计算机科学与技术系别⑵用“按位与”运算取image的第2、3、4、5、6、7位,结果分别保存在图像矩阵data12、data13、 data14、 data15、 data16、 data17中,并显示所得结果;⑶用“按位与”运算清image的第1-2、1-3、1-4、1-5、1-6、1-7位,结果分别保存在图像矩阵data02、 data03、 data04、 data05、 data06、 data07中,并显示所得结果;⑷用“按位与”运算取image的第3-8、4-8、5-8、6-8、7-8位,结果分别保存在图像矩阵data13、 data14、 data15、 data16、 data17中,并显示所得结果;⑸将彩色图像dsc.jpg读入图像矩阵image,重做上面的⑴-⑷项要求;代码略清image的第2、3、4、5、6、7位取image的第2、3、4、5、6、7位清image的第1-2、1-3、1-4、1-5、1-6、1-7位⑹取彩色图像矩阵image的某个分量(R、G、B均可),重做上面的⑴-⑷项要求;代码image=imread('dsc.jpg');%将彩色图像读入图像矩阵image A=image(:,:,1);下略清image的第2、3、4、5、6、7位取image的第2、3、4、5、6、7位清image的第1-2、1-3、1-4、1-5、1-6、1-7位六、实验总结通过这次实验使我对图像的位平面有了一定的认识。
信息加密与解密实验11-1 数据隐藏简单练习1
![信息加密与解密实验11-1 数据隐藏简单练习1](https://img.taocdn.com/s3/m/b0802a0543323968011c92ae.png)
上机实验报告一、实验目的:1、掌握在word中隐藏数据的方法2、掌握利用压缩工具RAR隐藏数据的方法3、掌握利用工具进行数据隐藏的方法二、实验环境计算机一台RARWinHex三、实验内容(一)在word中隐藏数据1. 打开一个Word文档,输入要隐藏的数据2.选中想要隐藏的内容,右键单击,选择Font(字体),在较新的Word版本中,你会发现有一个“Hidden”复选框,勾选“Hidden”复选框,单击“Save”按钮。
3. 显示并打印隐藏文字4. 使用文档检查器检查文档中隐藏的各种元数据(二)文件压缩工具的数据隐藏1. 首先,新建一个包含隐藏消息的文本文件“学生姓名全拼.txt”,然后新建一个包含“学生姓名全拼.txt”的压缩文件“学生姓名全拼.rar”。
2.使用命令把压缩文件隐藏到一个JPEG图像中。
命令:copy /b calss.jpg + mike.rar newimage.jpg3. 使用WinHex查看数据变化情况4.恢复数据:接收者收到包含隐藏消息的图像后,将JPEG图像重命名为带.RAR 扩展名的文件。
WinRAR的修复功能可以修复受损的压缩文件,也可以用来解压隐藏消息(三)使用工具将数据隐藏到图片中1.使用工具eshow进行数据隐藏,将图片1隐藏到图片2中,使用WinHex查看数据变化情况,重新打开软件恢复隐藏数据。
2.使用工具jphs进行数据隐藏,将图片1隐藏到图片2中,使用WinHex查看数据变化情况,重新打开软件恢复隐藏数据。
四、实验总结通过上机实践,对所学内容的某个知识点有了更深入的理解,写出一些体会、学习心得,甚至是改进意见。
也可以写对界面设计、算法设计、代码编写、程序调试、程序改进等相关的收获、感悟。
五、附录(源程序清单,包含适当的注释)。
LSB图像信息隐藏实验
![LSB图像信息隐藏实验](https://img.taocdn.com/s3/m/ea758302e518964bcf847ce2.png)
学号:姓名:专业年级班级:实验室:组别:实验日期:message=fopen('Message.txt','r');[msg,msg_len]=fread(message,'ubit1') %按位以二进制形式读取文本内容与长度[m,n]=size(image1) %读取行和列p=1; %p为秘密信息的位计数器[row,col]=randinterval(image1,msg_len,1996);for i=1:msg_lenimage1(row(i),col(i))=image1(row(i),col(i))-mod(image1(row(i),co l(i)),2)+msg(p,1);if p==msg_lenbreak;end ;p=p+1;end%还原图像Hide_image(:,:,1)=image1;Hide_image=uint8(Hide_image);imwrite(Hide_image,'Hide_image.tif');%输出隐藏信息的图像subplot(121);imshow(image);title('未嵌入信息的图片');subplot(122);imshow(Hide_image);title('嵌入信息的图片');else ['the photo is not a rgb style']fclose('all');end实验算法2:读取LSB 隐藏的信息1.读取已经隐藏信息的图像。
如果为RGB 图像,则读取图像的一层(该层为嵌入信息的那层)。
2.用与LSB 算法中相同的随机数种子产生相同的一串随机数。
随机数串的长度由LSB 中获得(长度不得大于图像大小)。
用同一个伪随机生成算法,相同的种子,来产生像素点位置,可以确保隐藏时和提取1.读取已经隐藏信息的图像。
LSB图像信息隐藏
![LSB图像信息隐藏](https://img.taocdn.com/s3/m/6b89f6f8846a561252d380eb6294dd88d0d23dee.png)
LSB图像信息隐藏1.实验⽬的(1)了解信息隐藏中最常⽤的LSB算法特点,掌握LSB算法原理,设计并实现⼀种基于图像的LSB隐藏算法(2)了解如何通过峰值信噪⽐来对图像质量进⾏客观评价,并计算峰值信噪⽐2.实验内容(1)LSB隐藏算法(2)计算峰值信噪⽐3.实验原理 任何多媒体信息,在数字化时,都会产⽣物理随机噪声,⽽⼈的感观系统对这些随机噪声不敏感。
替换技术就是利⽤这个原理,通过使⽤秘密信息⽐特替换随机噪声,从⽽完成信息隐藏⽬标。
BMP灰度图像的位平⾯,每个像素值为8bit⼆进制值,表⽰该点亮度。
图像⾼位平⾯对图像感官质量起主要作⽤,去除图像最低⼏个位平⾯并不会造成画⾯质量的明显下降。
利⽤这个原理可⽤秘密信息(或称⽔印信息)替代载体图像地位平⾯以实现信息嵌⼊。
算法选⽤最低位平⾯来嵌⼊秘密信息。
最低位平⾯对图像的视觉效果影响最轻微,但很容易受噪声影响和攻击,解决办法可采⽤冗余嵌⼊的⽅式来增强稳健性。
即在⼀个区域(多个像素)中嵌⼊相同的信息,提取时根据该区域中的所有像素判断。
4.实验记录(1)隐藏算法算法分为三个部分实现:隐藏算法提取算法测试脚本1)隐藏算法源代码hide_lsb.m⽂件:function o=hide_lsb(block,data,I) %block:隐藏的最⼩分块⼤⼩ data:秘密信息 I:原始载体si=size(I);lend=length(data);% 将图像划分为M*N个⼩块N=floor(si(2)/block(2));M=min(floor(si(1)/block(1)),ceil(lend/N));o=I;for i=0:M-1% 计算每⼩块垂直⽅向起⽌位置rst=i*block(1)+1;red=(i+1)*block(1);for j=0:N-1% 计算每⼩块隐藏的秘密信息的序号idx=i*N+j+1;if idx>lendbreak;end;% 取每⼩块隐藏的秘密信息bit=data(idx);% 计算每⼩块⽔平⽅向起⽌位置cst=j*block(2)+1;ced=(j+1)*block(2);% 将每⼩块最低位平⾯替换为秘密信息o(rst:red,cst:ced)=bitset(o(rst:red,cst:ced),1,bit);endend;2)提取算法源代码dh_lsb.m⽂件:function out=dh_lsb(block,I) % block:隐藏的最⼩分块⼤⼩ I:携密载体si=size(I);% 将图像划分为M*N个⼩块N=floor(si(2)/block(2));M=floor(si(1)/block(1));out=[];% 计算⽐特1判决阈值:即每⼩块半数以上元素隐藏的是⽐特1时,判决该⼩块嵌⼊的信息为1thr=ceil((block(1)*block(2)+1)/2);idx=0;for i=0:M-1% 计算每⼩块垂直⽅向起⽌位置rst = i*block(1)+1;red=(i+1)*block(1);for j=0:N-1% 计算每⼩块图像隐藏的秘密信息序号idx=i*N+j+1;% 计算每⼩块⽔平⽅向起⽌位置cst=j*block(2)+1;ced=(j+1)*block(2);% 提取⼩块最低位平⾯,统计1⽐特个数,判决输出秘密信息tmp=sum(sum(bitget(I(rst:red,cst:ced),1)));if(tmp>=thr)out(idx)=1;elseout(idx)=0;end;end;end;3)测试脚本源代码test.m⽂件:fid=1;len=10;% 随机⽣成要隐藏的秘密信息d=randsrc(1,len,[0,1]);block=[3,3];[fn,pn]=uigetfile({'*.bmp','bmp file(*.bmp)';},'选择载体');s=imread(strcat(pn,fn));ss=size(s);if(length(ss)>=3)I=rgb2gray(s);elseI=s;end;si=size(I);sN=floor(si(1)/block(1))*floor(si(2)/block(2));tN=length(d);% 如果载体图像尺⼨不⾜以隐藏秘密信息,则在垂直⽅向上复制填充图像if sN<tNmultiple=ceil(tN/sN);tmp=[];for i=1:multipletmp=[tmp;I];end;I=tmp;end;% 调⽤隐藏算法,把携密载体写⾄硬盘stegoed=hide_lsb(block,d,I);imwrite(stegoed,'hide.bmp','bmp');[fn,pn]=uigetfile({'*.bmp','bmp file(*.bmp)';},'选择隐蔽载体');y=imread(strcat(pn,fn));sy=size(y);if(length(sy)>=3)I=rgb2gray(y);elseI=y;end;% 调⽤提取算法,获得秘密信息out=dh_lsb(block,I);% 计算误码率len=min(length(d),length(out));rate=sum(abs(out(1:len)-d(1:len)))/len;y=1-rate;fprintf(fid,'LSB:len:%d\t error rate:%f\t error num:%d\n',len,rate,len*rate);通过运⾏测试代码,对灰度图xxx3.bmp⽂件进⾏LSB算法的信息隐藏,并⽣成⽂件bide.bmp。
LSB图片信息隐藏隐藏实验
![LSB图片信息隐藏隐藏实验](https://img.taocdn.com/s3/m/fa8a03505901020207409cbe.png)
上海电力学院高级程序设计(C)课程设计报告LSB信息隐藏实验题目:院系:计算机科学与技术学院专业年级:信息安全2012级学生姓名:涂桂花学号:指导教师:魏为民2015年4月14日目录一、实验目的 0二、实验内容和步骤 01. 操作环境 02. 系统配置 03. 操作步骤 04. 程序源代码 (3)三、实验结果 (3)1. 测试图片 (3)2. 测试结果 (3)3.截屏 (4)四.实验小结 (4)1. 遇到的问题总结合分析: (4)2. 未解决的问题 (4)3. 实验效果和分析 (4)4. 总结: (4)附件: (5)上 海 电 力 学 院实 验 报 告 课程名称实验项目 姓名 学号 班级 专业同组人姓名 指导教师 魏为民 实验日期 一、实验目的1.用MATLAB 函数实现LSB 信息隐藏和提取。
2.了解信息隐藏的作用和实现方法原理。
3.学会分析了解隐藏算法。
二、实验内容和步骤如操作环境、系统配置、操作步骤、程序源代码等。
1.操作环境操作系统 Windows 7 旗舰版 64位 SP1 ( DirectX 11 )2.系统配置处理器 AMD E1-2100 APU with Radeon HD Graphics 双核3.操作步骤1) 打开MATLAB 软件,新建文件夹名为“ LSB ”。
2) 在“Command Window ”窗口里输入“guide ”,回车。
a. 如下图所示建立图形界面。
将5个push button 控件的“String ”属性设置为下图相应显示的名字,Tag 属性设置为pbt+String 名的格式。
将4个axec 控件的Tag 属性设置为如下图所显示的名字。
3) 分别右键点击5个push button 控件,View Callbacks->CallBacks.给每个控件添加信息安全 LSB 信息隐藏实验 涂桂花 20123333 2012252 信息安全 无Callback代码。
信息隐藏实验报告
![信息隐藏实验报告](https://img.taocdn.com/s3/m/322182b7bb0d4a7302768e9951e79b896902685e.png)
信息隐藏实验报告
一、实验目的
本次实验的主要目的是探讨如何利用信息隐藏技术将信息嵌入图片、
视频、音频、文档等多媒体类型文件中,从而来保护图片、视频、音频、
文档等多媒体类型文件的安全。
同时,也为以后使用信息隐藏技术方便安
全地管理文件提供参考。
二、实验内容
1、利用信息隐藏技术嵌入图片中的实验
该实验首先采用Steganography Studio和WinStego两款软件,分别
用来嵌入图片中信息。
此外,还可以利用Cat-pdf、Cat hex等技术来隐
藏文档中的信息。
实验过程:
(1)安装Steganography Studio,打开软件,点击图片处进入图片
界面;
(2)选择一张要嵌入信息的图片,拖拽到Steganography Studio的
图片界面中;
(3)点击“文件”,选择“嵌入文件”,选择要嵌入图片中的信息;
(4)点击“嵌入文件”按钮,将信息嵌入图片中;
(5)点击“文件”,选择“保存”,将嵌入信息的图片保存至指定
位置。
2、利用信息隐藏技术嵌入视频中的实验
该实验采用XviD Video Codec和VirtualDub软件来嵌入视频中的信息。
实验过程:
(1)安装XviD Video Codec和VirtualDub;
(2)打开VirtualDub,添加要嵌入信息的视频;
(3)在“菜单”中选择“视频”,选择“压缩”;。
实验1 信息安全实验-加密与隐藏
![实验1 信息安全实验-加密与隐藏](https://img.taocdn.com/s3/m/a250ac48fe4733687e21aa53.png)
实验1 加密与隐藏一、实验目的(1)提高对加密与解密原理的认识;(2)提高对信息隐藏原理的认识;(3)学会使用加密与隐藏软件。
二、实验环境Pentiuum III、600 MHz以上CPU , 128M 以上内存,10G 以上硬盘,安装windows 98 以上操作系统,加密与隐藏软件EsayCode Boy Plus 。
EasyCode Boy Plus ,界面如图1-1所示。
图1-1 EasyCode Boy Plus界面三、实验内容与步骤3.1 加密文件任意编写一个 Word 文档,如 my.doc,执行 ECBoy.exe 程序,打开 EsayCode Boy Plus 窗口→选中“加密”→“添加文件→选中要加密的文件(如 my. doc )→在密码输人框中输人密码→“开始加密”→打开加密文件,如 my.doc ,看到的将是乱码。
说明:实际上EasyCode Boy Plus可以加密任何类型的文件,并对文件的每个比特单元加密。
如果需要加密一个文件夹,可以单击“批量添加文件”,程序将加密文件夹中的所有文件;如果被加密的文件较大,可以选中“启动快速加密”选项;如果只对文件名加密,可以选中“加密文件名”选项,这时加密后的文件名会改变,无法打开或执行。
3.2 解密文件在 Esaycode Boy Plus 窗口→选中“解密”→选择被加密的文件→在密码输人框中输人密码→“开始解密”→打开解密的文件,如 my.doc,可以看到文件的内容已经被解密或文件已经可以运行。
3.3生成随机密码在 Esaycode Boy Plus 窗口→选中“加密”→“产生随机密码”→在弹出的“随机密码生成器”窗口中打开所有选项,改变密码位数或密码中特殊字符数→单击“生成。
说明: EsayCode Boy Plus 可以生成安全强度很高的密码。
一般情况下使用 8位由大小写字母和数字组成的密码就可以了。
3.4 生成可自解密文件在 EsayC0de Boy Plus窗口→选中“编译 ExE”→选择“将文件编译为 ExE 文件”→“浏览”→选择要加密的文件(如 my . doc )→在密码输人框中输人密码→“开始编译/加密”→打开被加密的.exe 文件,如 my.doc ,程序会弹出窗口提示输人密码,输人密码正确后才能打开文件。
信息隐藏实验一matlab基本操作
![信息隐藏实验一matlab基本操作](https://img.taocdn.com/s3/m/85e186d87cd184254a3535c8.png)
其中为原始信号矩阵,[]为分块大小,为对每 一分块的操作规则,是中调用的参数。 实验 : >>(); >> (,[ ],'**'');
二、 基本操作
熟悉脚本编程的基本语法
一般形式为: <文件名>
运行方式:在命令窗口直接输入文件名, 按结束; 在编辑窗口打开菜单,单击
例:绘制图像
;
;
[]((),‘’)代表像素值,代表色
谱
二、 基本操作
熟悉的函数编写
一般形式:<因变量><函数名>(<自变 量>)
例:读入并绘制图像
()
();
();
在命令窗口输入(‘’);
关于符号:命令中的符号一定要是英文输入法中的符号。 关于类型:一般为和,用读入的是类型,进行数值计算时要转化为。
():前两个参数表示将画面分为*个子图像,表示子
图像序号,排序顺序为从左至右,从上至下。
() :显示图像函数
实验 :
>>()()(''),
()()('');
实验 :读取图像库任意一幅图像,转换为灰度图像和二 值图像显示。
转换为灰度图像:()
转换为二值图像: (),为阈值,阈值不同转换的图像也 不尽相同。(参考《实验教程》实验)
谢谢
二、 基本操作
熟悉取图像大小的操作,完成实验
实验: >>[]();
熟悉基本绘图操作,完成实验
([,'属性值'])以、为轴绘制曲线,可以设
置绘制属性
在同一幅图上绘制多幅图像: (,……)
信息隐藏与数字水印实验教程课程设计
![信息隐藏与数字水印实验教程课程设计](https://img.taocdn.com/s3/m/8f4d4ef54128915f804d2b160b4e767f5acf80fe.png)
信息隐藏与数字水印实验教程课程设计课程设计简介信息隐藏和数字水印是一类在数字媒体内容中嵌入一些“隐蔽”的信息的可逆技术,其中信息隐藏以隐藏为目标,数字水印以鉴别为目标。
本课程设计是一款针对信息隐藏和数字水印技术的实验教程,旨在让学生了解信息隐藏和数字水印的基本概念、算法流程及实验操作。
实验教程实验1:LSB信息隐藏LSB信息隐藏是一种较为简单的信息隐藏技术,利用了图像或音频信号中的最低有效位(LSB)来储存信息。
本实验将让学生了解LSB信息隐藏的基本思路和实现流程。
实验步骤:1.安装Python编程环境和必要的库(numpy、pillow等);2.编写Python代码实现将信息隐藏到图像中的最低有效位;3.对图像进行解密,将隐藏的信息提取出来并显示。
实验要求:1.能够了解LSB信息隐藏的原理;2.能够独立完成Python代码的编写和调试;3.能够对嵌入信息后的图像进行正确解密。
实验2:DCT数字水印DCT数字水印是一种在频域中实现数字水印嵌入到图像或视频信号中的可逆算法,其中DCT(离散余弦变换)是一种常见的频域转换方式。
本实验将让学生了解DCT数字水印的基本原理和实现方法。
实验步骤:1.安装MATLAB编程环境和必要的工具箱(image processing等);2.编写MATLAB代码实现将数字水印嵌入图像中的DCT系数;3.对嵌入数字水印后的图像进行攻击,如JPEG压缩、调整亮度等;4.对加入攻击后的图像进行解密,将数字水印提取出来并验证。
实验要求:1.能够了解DCT数字水印的基本原理;2.能够独立完成MATLAB代码的编写和调试;3.能够对加入攻击后的图像进行正确解密和验证。
实验结论通过本次课程设计,学生能够了解信息隐藏和数字水印的基本概念,并通过实验了解LSB信息隐藏和DCT数字水印的基本算法和实现方式。
同时,学生也能够了解到数字水印的鲁棒性和对攻击的抵抗能力,以及对数字媒体内容可信度的提升。
一个图像DCT域的信息隐藏实验
![一个图像DCT域的信息隐藏实验](https://img.taocdn.com/s3/m/f15f177c8e9951e79b892733.png)
a z o(o o) =e sr c1; r [w ]
【lk lrn itra(, u t e ) k ,2=adnevl c n, y; ao k
作者 简介 : 张智佳 (9 7 ) 男, 1 8 ~ , 湖北 京 山人 , 汉 大学计算 机 学院信 息安 全专 业学 生 , 究方 向为信 息安 全 。 武 研
读 入 要隐 藏文 件 并 返 回文 件长 度cu t o n
() 2 在流 程 图中信 息 的嵌 入 与提 取 的原 理为 : 根据 JE P G的
压 缩原 理 , 图象进 行8 8 块 D T 换 , 择 ( ,) ( ,) 将 x分 C变 选 4 1 和 2 3 这
对 图像矩 阵分 为 8 的 8 x 小块 ,对每块作dt o 变换
() 1 由于 D T 换 只能 针 对二 维 图象 , 以如 果 载体 图象 C变 所 是rb g 模式 , 则读 取 图象 的一 层来 作D T 换 。对 这一 层嵌 入信 C变 息后 , 再将 这 一层写 回到 原rb g 图象 中 , 提取 时也 是 提取 这一 层
上 的信 息 。
要 : 过 修 改L B 入 信 息 的 信 息 隐 藏 方 法 是 比 较 容 易 实 现 的 , 用 这 种 方 法 实 现 的 隐 藏 信 息 是 十 分 脆 弱 的 , 通 S嵌 但 连
最 简单 的修 改都 不能 容 忍。本 文通 过一 个 图像D T 的信 息隐藏 实验 , C域 用MA L T AB函数 实现 图像 D T 的信 息 隐藏 C域 和提 取 , 并分 析 了隐蔽载体在J E 压 缩条 件 下的健 壮参数 a PG 与隐藏 鲁棒 性、 可检 测性 的 关 系。 不 ・8 Nhomakorabea・ 4
LSB信息隐藏实验报告
![LSB信息隐藏实验报告](https://img.taocdn.com/s3/m/f4baea79a5e9856a561260e1.png)
Centr al South University信息隐藏实验报告学院: 信息科学与工程学院班级:信息安全1201学号:0909121724姓名:吕秋言时间: 2018年6 月实验一:基于图像的LSB信息隐藏一、实验目的该实验为验证性实验。
目的是通过实验使学生掌握经典信息隐藏算法,在Matlab环境下,编写基于图像的LSB信息隐藏算法程序。
用Matlab函数实现LSB信息隐藏及提取,并进行分析。
b5E2RGbCAP二、实验要求1、实验前要做好充分准备,包括:复习实验所涉及的知识点,掌握Matlab编程语言和调试环境。
2、实验时注意记录实验过程中产生的数据、出现的问题及解决问题的方法。
3、理论联系实际,认真分析实验结果,回答思考题。
4、实验后完成实验报告,并附相关截图。
三、实验环境计算机<安装Visual C++ 6.0和Matlab 6.5以上版本)四、实验原理隐秘算法核心是将我们选取的像素点的最不重要位依次替换成秘密信息,以达到信息隐秘的目的。
嵌入过程包括选择一个图像载体像素点的子集{j1,…,jl(m>},然后在子集上执行替换操作像素cji←→mi,即把cji的LSB与秘密信息mi进行交换(mi可以是1或0>。
一个替换系统也可以修改载体图像像素点的多个比特,例如,在一个载体元素的两个最低比特位隐藏两比特、三比特信息,可以使得信息嵌入量大大增加但同时将破坏载体图像的质量。
在提取过程中,找出被选择载体图像的像素序列,将LSB(最不重要位>排列起来重构秘密信息,算法描述如下:p1EanqFDPw嵌入过程:for(i=1。
i<=像素序列个数。
i++>si←cifor(i=1。
i<=秘密消息长度。
i++>//将选取的像素点的最不重要位依次替换成秘密信息sji←cji←→mi提取过程:for(i=1。
i<=秘密消息长度。
i++>{ i←→ji//序选取mi←LSB(cji>}五、实验内容与步骤基本演示环境:matlabLSB,Least Significant Bits,最低有效位,将图像加密处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
综合评分:
实验一:MATLAB基本操作实验
【实验目的】:
熟悉MATLAB里的基本矩阵操作
掌握MATLAB函数编写
图像变换及翻转实验
【实验内容】:(请将你实验完成的项目涂“■”)
实验完成形式:
■用MA TLAB命令行或者函数的方式实现彩色图像与灰度图像和二值图像的转换与显示。
■用MA TLAB函数方式实现图像分块DCT变换与显示。
■用MA TLAB函数方式实现对图像的变换、翻转和剪裁等。
□其它:(请注明)
实验选择载体:
□256×256灰度图像□256×256RGB图像■任意大小的RGB图像
□其他可读写文件
实验效果和分析:
■掌握了基本的图像知识。
■掌握了基本的图像操作。
□其它:(请注明)
【实验工具及平台】:
■Windows+Matlab□其它:(请注明)
【实验涉及到的相关算法】:
1、与实验内容选择的项目对应;
实验1.1-1.5是简单的matlab的基本操作。
计算以及文件打开什么的
实验1.6对RGB图像分层
实验1.7 RGB图像合并
原理:GRB图像有三个通道,红,绿,蓝。
红、绿、蓝三个颜色通道每种色各分为255阶亮度。
可以将三个通道分层,或者合并。
data(high,with,RGB),1:R,2:G,3:B
实验1.8
subplot(m,n,p):前两个参数表示将画面分为m*n个子图像,p表示子图像序号,排序顺序为从左至右,从上至下。
imshow(x) :显示图像函数
实验1.9 调用rgb2gray()函数和im2bw()分别实现把RGB图转灰度图,把灰度图转二值图像。
实验1.10熟悉取图像大小
实验1.11 同一坐标轴里面话两个函数额图像
plot(x1,y1);hold on;plot(x2,y2);hold off;
实验1.12 用离散余弦变换分析合成图像
离散余弦正变换:data1=dct2(data1);
离散余弦逆变换:data3=idct2(data2);
实验1.13
实验1.14对图像进行旋转和变化
Rot90(A,K)%让矩阵A逆时针旋转K个90度。
Flipup(A)%矩阵A上下翻转
Fliplr(A)%矩阵A左右翻转
Flipdim(A,dim)%dim为旋转方式
2、请使用流程图、伪代码、NS图或文字方式描述,不要
..贴代码
【实验分析】:
1、请尽量使用曲线图、表等反映你的实验数据及性能
2、对照实验数据从理论上解释原因
3、如无明显必要,请.不要
....实验效果图
..大量粘贴
实验1.6
>> data1=imread('E:/picture/1.jpg');
>> imshow(data1)
>> imageR=data(:,:,1);%提取出了红通道的图片,如下图
>> imageR=data1(:,:,1);
>> imshow(imageR);
改变参数,可以分别提取出G,B通道的图像,可以看到明显的对比。
实验1.7
>> data2(:,:,1)=imageR;%给data2的R层赋值>> data2(:,:,2)=imageG;%给data2的G层赋值>> data2(:,:,3)=imageB;%给data2的B层赋值>> imshow(data2);
进行重构:
实验1.8
实验1.9
左侧二值图像,右侧灰度图像实验1.11
>> t=0:0.01*pi:2*pi;
>> plot(t,sin(t));
>> title('0到2π的正弦曲线','FontSize',16);
>> xlabel('t=0到2π');
>> ylabel('sin(t)');
>> text(pi,sin(pi),'\leftarrow sin(t)=0');
>> hold on;
>> plot(t,cos(t));
>> hold off;
实验1.12
虽然dct变换图像是全黑的,但是放大后还是可以看到左上角有一点白
放大后的dct
对图像进行旋转:
B = rot90(A)旋转矩阵A,逆时针旋转90度。
B = rot90(A,k)逆时针方向由k*90度旋转矩阵A,其中,k是整数。
>> im5=rot90(im1);
>> imshow(im5);
>> im5=rot90(im1,2); >> imshow(im5);
>> im5=rot90(im1,3); >> imshow(im5);
>> im1=flipud(im); >> imshow(im1);
>> im1=fliplr(im); >> imshow(im1);
信息隐藏实验报告学号:2013302530107 姓名:王思锦报告时间:2015年10月30日11。