LSB图像信息隐藏实验.doc

LSB图像信息隐藏实验.doc

ID:56197525

大小:241.00 KB

页数:8页

时间:2020-03-19

LSB图像信息隐藏实验.doc_第1页
LSB图像信息隐藏实验.doc_第2页
LSB图像信息隐藏实验.doc_第3页
LSB图像信息隐藏实验.doc_第4页
LSB图像信息隐藏实验.doc_第5页
资源描述:

《LSB图像信息隐藏实验.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、学号:姓名:专业年级班级:实验室:组别:实验日期:课程名称保密技术实验实验课时实验项目名称和序号1.LSB图像信息隐藏实验同组者姓名实验目的1.掌握对图像的基本操作。2.能够用LSB算法对图像进行信息隐藏3.能够用LSB提取算法提取隐藏进图像的信息4.能够反映jpeg压缩率与误码率之间的关系实验环境Windows+matlab实验内容和原理1.用MATLAB函数实现LSB信息隐藏和提取2.分析了LSB算法的抗攻击能力3.能随机选择嵌入位(考虑安全性因素)实验步骤方法关键代码实验算法1:LSB嵌入1.读

2、取一副256*256大小的图片,判断是否为RGB图像。若为RGB图像,则读取图像的一层信息(如R层)。通过读取图像的尺寸大小来判断是否为RGB图像。RGB图像是三维多彩图,size有3个参数,最小参数是3,只要判断读取到的图像大小大于2,就确定读入的是RBG图像2.以二进制形式读取要嵌入到图片里的消息。并读取消息的长度(嵌入消息的长度不能超过图像位数)。3.产生与消息长度一致的一串随机数(不能相同)。自定义一个randinterval函数来实现伪随机数的生成 产生的伪随机数是代表消息要隐藏的像素位置(

3、行和列的信息)随机数代码:function[row,col]=randinterval(matrix,count,key)%randinterval.m%参数说明%matrix是载体矩阵,即要隐藏信息的图层%cout为要嵌入信息的像素数量%key为自定义秘钥,随机种子[m,n]=size(matrix);interval1=floor(m*n/(count+eps))+1;interval2=interval1-2;ifinterval2==0error('载体太小不能把秘密信息隐藏进去');endr

4、and('seed',key);a=rand(1,count);row=zeros([1count]);col=zeros([1count]);r=1;c=1;row(1,1)=r;col(1,1)=c;fori=2:countifa(i)>=0.5c=c+interval1;elsec=c+interval2;endifc>nr=r+1;ifr>merror('载体太小不能把秘密信息隐藏进去');endc=mod(c,n);ifc==0c=1;endendrow(1,i)=r;col(1,i)=c;

5、end1.按照产生的随机数的序列依次将图片层的最后一位改为消息的信息。即用消息替换图片的最后一位信息。2.嵌入完成后,如果为RGB则将该层返回原图像。然后将数据信息写回图像。LSB就完成了。image=imread('1.jpg');Hide_image=image;Hide_image=double(Hide_image);mysize=size(image);ifnumel(mysize)>2['thephotoisargbstylephoto']%是rgb图像输出到命令行窗口image1=Hid

6、e_image(:,:,1);%第三个参数1代表的读取的是红层,但是没有将2,3层设为0,因为会叠加,所以显示出来的第一层图像还是灰色的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);fori=1:msg_len

7、image1(row(i),col(i))=image1(row(i),col(i))-mod(image1(row(i),col(i)),2)+msg(p,1);ifp==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('

8、未嵌入信息的图片');subplot(122);imshow(Hide_image);title('嵌入信息的图片');else['thephotoisnotargbstyle']fclose('all');end实验算法2:读取LSB隐藏的信息1.读取已经隐藏信息的图像。如果为RGB图像,则读取图像的一层(该层为嵌入信息的那层)。2.用与LSB算法中相同的随机数种子产生相同的一串随机数。随机数串的长度由LSB中获得(长度不得大于图像大小)。用同一个伪随

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。