
技术摘要:
本发明公开了一种基于SVD及CBC模式结合的图像压缩加密传输方法,SVD能够保留图像数据90%以上的信息,但是数据传输量变为原始数据的几分之一,更重要的一点是它同时减少了图片数据的噪声量,使得传输的图片数据具有类对称性,这使得采用CBC分块处理加密图片数据时的算法 全部
背景技术:
在网络数据传输过程中,在很多情况下,数据中的一小段携带了数据集中的大部 分信息,其他信息要么是噪声,要么就是毫不相关的信息,在线性代数中,矩阵分解可以将 与原始矩阵表示成新的易于处理的形式,这种新形式是两个或多个矩阵的乘积,类似于代 数中的因子分解。不同的矩阵分解技术具有不同的性质,其中有些更适合于某个应用。 通过SVD(奇异值分解)对数据的处理,我们可以使用小得多的数据集来表示原始 数据集,这样做实际上是去除了噪声和冗余信息,以此达到了优化数据、提高结果的目的。 最早的SVD应用之一就是信息检索,我们称利用SVD 的方法为隐性语义检索(LSI)或隐形语 义分析(LSA),SVD的另一个应用就是推荐系统,较为先进的推荐系统先利用SVD从数据中构 建一个主题空间,然后再在该空间下计算相似度,以此提高推荐的效果。SVD(奇异值分解) 与PCA (主成分分析)不同,PCA是对数据的协方差矩阵进行矩阵的分解,而SVD是直接在原 始矩阵上进行的矩阵分解。并且能对非方阵矩阵分解,得到左奇异矩阵U、sigma矩阵Σ、右 奇异矩阵VT。SVD(奇异值分解)可以将一个矩阵分解成3个矩阵,其中U、VT都是单式矩阵 (unitary matrix),Σ是一个对角矩阵,也就是说只有对角线有值。对角元素称为奇异值, 它们对应了原始矩阵Data的奇异值,一般奇异值我们只选择某一部分,选择的规则很多种, 主要的一种为:选择奇异值中占总奇异值总值90%的那些奇异值。 目前,在数字图像数据传输过程中,为了有效保护数字图像信息,提高数字图像加 密的效率和安全性,当前有许多图像加密算法被提出来,但是均存在不同的问题,具体如 下: (1),基于混沌序列的像素置乱和像素值变换的数字图像加密算法,将图像块的重 要信息嵌入到由混沌系统决定的另一图像块中的最低位,以提高加密图像的抗剪切能力。 但这种算法,一旦受到轻微的噪声干扰就无法恢复被剪切部分的图像,当被剪切块的重要 信息对应的隐藏块也被剪切时,该图块也将无法恢复,影响数字图像数据传输准确性; (2),基于图像位平面的图像加密算法,同时给出一种抗剪切恢复算法,但被剪切 像素的恢复依赖于该像素的8个位平面的恢复值,从低位平面到高位平面的像素值的不正 确性以指数比例影响到像素值的不正确性,致使恢复的图像质量不理想。 因此,如何克服上述的问题,有效保护数字图像信息,并提高数字图像加密的效率 和安全性,尤其是加密安全性,是当前急需解决的问题。
技术实现要素:
本发明的目的是克服现有的数字图像数据传输安全加密方法所存在的问题。本发 明的基于SVD及CBC模式结合的图像压缩加密传输方法,传输带宽得到了有效利用,同时在 4 CN 111614864 A 说 明 书 2/6 页 服务器端解密时省去了大量防剪切丢失算法分析的时间,方法独特,设计巧妙,显著提升了 C-S架构下的各种加密传输应用的性能,尤其在图像识别分析等物联网和人工智能领域,具 有良好的应用前景 为了达到上述目的,本发明所采用的技术方案是: 一种基于SVD及CBC模式结合的图像压缩加密传输方法,包括以下步骤, 步骤(A),对客户端的原始图像数据进行初始分析,包括数据量、格式、色彩、模式, 形成原始图像数据矩阵; 步骤(B),将原始图像数据矩阵通过奇异值分解分解成三个子矩阵,包括 U单式矩 阵、VT单式矩阵、Σ对角矩阵,所述Σ对角矩阵内对角元素为奇异值,对应的原始图像数据 矩阵的奇异值; 步骤(C),选择奇异值中占总奇异值总值90%的奇异值,该选择的奇异值分布在Σ 对角矩阵的对角线上; 步骤(D),对选择的奇异值进行对称性和完整性分析,形成对角阵数据矩阵; 步骤(E),对对角阵数据矩阵进行分块压缩处理,形成分块压缩数据子模块; 步骤(F),对分块压缩数据子模块进行编号,并产生混沌序列进行加密; 步骤(G),对加密后的分块压缩数据子模块进行数据传输到服务器端; 步骤(H),服务器端对接收到分块压缩数据子模块,执行防剪切丢失解密处理,然 后对该图像进分析。 前述的基于SVD及CBC模式结合的图像压缩加密传输方法,步骤(C),选择奇异值中 占总奇异值总值90%的奇异值,是用于舍弃接近于0的数值和分散较为稀疏的数值。 前述的基于SVD及CBC模式结合的图像压缩加密传输方法,步骤(D),对选择的奇异 值进行对称性和完整性分析,用于查看剩下的奇异值有没有重复的,进一步压缩传输量。 前述的基于SVD及CBC模式结合的图像压缩加密传输方法,步骤(F),对分块压缩数 据子模块进行编号,并产生混沌序列进行加密,包括以下步骤, (F1),产生混沌序列 设原始图像数据大小为m×n,构建混沌序列:{(Xi,Yi,Zi)|i= 1,2,3,…,m×n}, 其中,序列{Xi|i=1,2,3,…,m×n}、{Yi|i=1,2,3,…,m×n}、{Zi|i=1,2,3,…,m×n}将 用于数字图像的像素位置加密和像素值加密; (F2),根据混沌序列对依次对分块压缩数据子模块的像素位置加密,将分块压缩 数据子模块内的原像素(i,j)变换到新位置(row,col); (F3),根据混沌序列对依次对分块压缩数据子模块的像素值加密,将分块压缩数 据子模块内的像素以块为单位,对对每一块的所有像素进行链式加密。 前述的基于SVD及CBC模式结合的图像压缩加密传输方法,(F2),根据混沌序列对 依次对分块压缩数据子模块的像素位置加密,将分块压缩数据子模块内的原像素(i,j)变 换到新位置(row,col),包括以下步骤, (F21),将混沌序列{Xi|i=1,2,3,…,m×n}按升序或降序排序得到新的有序序列 {cX i|i=1,2,3,…,m×n},将cX(i)混沌序列的值用其在Xi 中的位置索引值替代,即得到 服从[1,m×n]的排序位置分布的混沌随机序列 {sX i|i=1,2,3,…,m×n}, (F22),根据混沌随机序列sX i的序列值一一把对应的分块压缩数据子模块的X像 5 CN 111614864 A 说 明 书 3/6 页 素分量(i,j)按行列顺序变换到(row,col)的新位置为 row=sX((i-1)n j; col=sX((i-1)n j)modn 其中,i=1,2,3,…,m;j=1,2,3,…,n;若col=0,则row=row-1,col =n; (F23),根据(F12)和(F22)的方式,将分块压缩数据子模块的Y像素分量、Z像素分 量位置置乱加密。 前述的基于SVD及CBC模式结合的图像压缩加密传输方法,(F3),根据混沌序列对 依次对分块压缩数据子模块的像素值加密,把块像素用一维矩阵表示,则第i行第j列的第k 像素表示为P(i,j,k),加密后为: C(i,j,k)=P(i,j,k)(异或)C(i,j,k-1)(异或)mX(p) C(i,j,0)=f(i,j)mod L 其中,P(i,j,k)和C(i,j,k)分别为当前被加密像素和加密后像素,C(i, j,k-1)为 前一已加密像素,C(i,j,0)为初始密文,通过f(i,j)实现随机取值, i=1,2,3,…,u;j=1, 2,3,…,v;k的取值范围与块有关,k=1,2,3,…;p为当前被加密像素序号,p=1,2,3,…,m ×n,f(i,j)是自定义函数,也可以通过mX(k)、mY(k)、mZ(k)序列之一取得随机值,L是图像 像素值数,且取值与图像类型有关。 前述的基于SVD及CBC模式结合的图像压缩加密传输方法,步骤(H),服务器端对接 收到分块压缩数据子模块,执行防剪切丢失解密处理,然后对该图像进分析,所述执行防剪 切丢失解密处理的过程为: C(i,j,0)=f(i,j)mod L。 本发明的有益效果是:本发明的基于SVD及CBC模式结合的图像压缩加密传输方 法,通过SVD将原始图像数据矩阵通过奇异值分解,能够极大压缩原始图像数据的大小,并 通过CBC模式克服SVD奇异值分解,存在着两个问题: (1)会影响其准确率,在稀疏情况下,SVD的矩阵分解通常会出现过拟合的问题; (2)SVD分解的复杂度比较高,假设对一个m*n的矩阵进行分解,时间复杂度为O(n^ 2*m n*m^2),其实就是O(n^3)。对于m、n比较小的情况,可能是可以接受的,但是在海量数据 下,m和n的值通常会比较大,可能是百万级别上的数据,这个时候如果再进行SVD分解需要 的计算代价就是很大的。 本发明通过SVD能够保留图像数据90%以上的信息,但是数据传输量变为原始数 据的几分之一,更重要的一点是它同时减少了图片数据的噪声量,使得传输的图片数据具 有类对称性,这使得采用CBC分块处理加密图片数据时的算法执行时间大大减少,传输带宽 得到了有效利用,同时在服务器端解密时省去了大量防剪切丢失算法分析的时间,方法独 特,设计巧妙,显著提升了C-S架构下的各种加密传输应用的性能,尤其在图像识别分析等 物联网和人工智能领域,能够完美的解决上述SVD奇异值分解出现的问题,同时采用像素位 置变换和像素值变换加密使用,实现安全可靠,快速加密的目的,具有良好的应用前景。 附图说明 图1是本发明的基于SVD及CBC模式结合的图像压缩加密传输方法的流程图。 6 CN 111614864 A 说 明 书 4/6 页