资源描述:
《图片保密传输的数学模型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、图片保密传输的数学模型摘要:在当前信息量如此膨胀的通信时代,如何保证信息传输的安全已经越来越重要,而密码学也逐渐从单纯的数学问题慢慢渗透进了其他各个行业,变为了一门具有特色性的学科。密码在图片保密传输中已经有很多的应用,本文通过Matlab软件应用LSB算法对图片进行加密,并以另一张图片作为载体进行传输,并再次利用LSB算法对图片进行解密并提取出原图,整个过程较为简单,且具有较大的负载量,但是由于负载量的增大也导致安全性的降低,本文最后给出了提高安全性的随机算法,来加强保密性。关键字:图片保密传输、LSB、数学建模、Matlab10一、问题重述下面是两幅图片:为了保密,需要将图片(
2、1)隐藏在图片(2)中进行传输,并且要求在信息传输过程中信息被破译的概率小于5%。(1)试建立信息加密的数学模型与方法;(2)试建立信息解密的数学模型与方法;10(3)对上面二幅图片完成加密-传送-接收-解密的全过程,并进一步设计程序,给出良好的界面;(4)试对加密图和解密图进行比较和检测,给出检测效率的定量估计方法。二、模型假设1.假设图片的变动在人眼无法辨别的情况下视为安全。2.假设传输过程中只有指定对象得到密钥。三、符号说明LSB:LeastSignificantBit最低有效位cj:载体像素mi:密文0、1信息量A:安全性K:还原效率dt:灰度像素数值总差值total:像素
3、数值和四、模型的分析及建立为了将一张图片隐藏到另一张图片中,首先需要了解图像在matlab中的工作原理。一个彩色图像就是一个三维矩阵,如果使用matlab的话,可以使用imread来读取一副图像,在workspace中就可以看到矩阵了,但是三维矩阵不能直接显示。三维数组有三个面,依次对应于红(Red)、绿(Green)、蓝(Blue)三种颜色,而面中的数据则分别是这三种颜色的强度值。设所得矩阵为X三维矩阵(256,256,3),X(:,:,1)代表红颜色的2维矩阵X(:,:,2)代表绿颜色的2维矩阵,X(:,:,3)代表蓝颜色的2维矩阵,第一第二维取值在0-255(2^81byte
4、),第三维是1-3。欲将图面进行隐藏即是将图片的矩阵信息进行隐藏,一般隐藏信息的技术分为:1.空间域隐秘技术LSB方法拼凑方法文档结构微调方法2.变换域隐秘技术DCT变换,小波变换,傅立叶变换,Fourier-Mellin变换或其它变换通过观察图片可以看出图像信息量较大,所以比较适合采用LSB方法,LSB替换:嵌入过程包括选择一个载体元素的子集{cj1,…,cjl(m)},然后在子集上执行替换操作cji←→mi,即把cji的LSB与mi进行交换(mi可以是1或0)。10这是一种典型的空间域数据隐藏算法,L.F.Tumer与R.G.VanSchyadel等先后利用此方法将特定的标记隐
5、藏于数字音频和数字图像,该方法是利用原始数据的最低几位来隐藏信息(具体取多少位,以人的听觉或视觉系统无法察觉为原则),LSB方法的优点是有较大的信息隐藏量,但采用此方法实现的数字水印是很脆弱的,无法经受一些无损和有损的信息处理,而且如果确切地知道水印隐藏在几位LSB中,数字水印很容易被擦除或绕过【1】。因为只是要求在信息传输过程中信息被破译的概率小于5%,所以LSB方法还是基本可以满足的。我们通过程序可以进一步判断此方法的合理性,首先将需要加密的图片保存为1.jpg,将载体图片保存为2.jpg,运行程序W=imread('1.jpg');size(W)Z=imread('2.jpg
6、');size(Z),可以得到ans=3044043ans=4362923,计算可得需要加密的图像像素点有122816个,而载体图像像素点有127312个。如此之大的隐藏信息量,又为了确保安全性,可见必须舍弃精密度来保证信息量和保密性,从而LSB方法是较为合理的选择。五、模型的求解1.图片的信息化由于LSB算法适合将数字信息进行插入保密,所以我们需要将需要被隐藏的图片数字信息话,并保存到文件中,这里可以利用Matlab中的imread函数迅速的将图片信息转化为数字信息,但是为了保证载体的安全性,又能保证密文的可加密和可解读性,imread函数显然不能独立完成信息化。考虑到图片的载体
7、一般为像素点,所以可以通过改变其像素点的值来进行加密,为了使其变化不被人眼所示,所以可以将变动限制为0和1。这里利用文件将图片信息转化为0、1可读的文本文件,从而将图片加密转化为密文加密,降低了加密的难度。但是通过计算,如果将隐藏图片转化为0、1的二进制信号,则数据量暴增为11790336,远远超过了载体的像素点127312,为解决此问题,则要么增大载体,要么缩减数据量,这里由于密文实为图像,而图像具有可缩放的性质,于是采用缩减数据量的方法,具体实现函数见附录的%in