一种图像加解密系统技术方案

技术编号:6529895 阅读:231 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开一种图像加解密系统。该图像加解密系统,包括输入输出接口单元、伪随机数发生器,加密/解密单元,水印嵌入单元,水印检测单元,其中:所述输入输出接口单元,用于输入需要加密/解密的图像文件及初始条件值,输出加密/解密后的图像文件。所述伪随机数发生器,用于根据输入的初始条件值生成二进制随机数序列;所述水印检测单元,用于对嵌入水印的图像进行检测,所述水印检测单元中包括含水印图像DCT系数选择模块和水印判断模块。其具有简单、容易实现的特点,能够达到理想的加密效果,解密后也能够几乎还原。

【技术实现步骤摘要】

本专利技术涉及计算机数据加解密
,特别是,涉及一种图像加解密系统和方法。
技术介绍
数字图像的安全是近年来信息安全领域中研究的焦点之一。图像加密和图像隐藏是从不同的角度提出的数字图像安全技术,将图像加密技术与图像隐藏技术有机结合,就可进一步提高信息的安全性。其中数字图像加密技术不仅可以有效地保护图像数据,而且还可以作为图像隐藏技术的预处理和后处理。因此,图像加密技术具有非常重要的现实意义。传统保密学主要是对一维数据流提供了较好的算法,而对图像信息还缺少足够的方法,因为图像数据有着与原有需要加密数据不同的特点,如数据量大、二维的自相似性和相关性等,因此如何对图像进行有效的加密,是传统保密学研究中遇到的新问题。
技术实现思路
本专利技术的目的在于克服现有技术中的缺陷,提供一种图像加解密系统和方法,其具有简单、容易实现的特点,能够达到理想的加密效果,解密后也能够几乎还原。为实现本专利技术目的而提供的一种图像加解密系统,包括伪随机数发生器,加密/ 解密单元,其中所述伪随机数发生器,用于根据输入的初始条件值生成的实数值随机数序列,并将所述实数值随机数序列截取转换为二进制序列和整数值序列;所述加密/解密单元,用于对输入的图像文件进行加密或者进行解密。较优地,所述的图像加解密系统,还包括输入输出接口单元,用于输入需要加密/ 解密的图像文件及初始条件值,输出加密/解密后的图像文件。较优地,所述加密/解密单元,包括加密单元和解密单元,其中所述加密单元,用于利用伪随机数发生器产生的二进制序列,通过Rijndael算法中密钥异或操作实现图像像素的RGB或灰度值变换,然后通过S-盒变换来完成图像像素的替代;再利用伪随机数发生器生成的整数值序列来实现图像像素的行列置换操作,循环进行κ轮加密,最终实现图像加密;所述解密单元是加密单元的加密过程的反次序单元,用于利用伪随机数发生器产生的二进制序列,进行加密的逆运算,然后进行密钥异或运算,最终端实现图像解密。较优地,所述加密单元,包括变换子单元,替代子单元和置换子单元,其中所述变换子单元,用于采用轮密钥异或操作实现图像像素的RGB或灰度变换;所述替代子单元,用于采用S-盒变换来完成图像像素的替代;所述置换子单元,用于采用行置换和列置换来完成图像像素的置换。为实现本专利技术目的还提供一种图像加密方法,包括下列步骤步骤S100,输入需要加密的图像文件,并输入加密的初始条件值;步骤S200,根据输入输出接口单元输入的初始条件值生成的实数值随机数序列, 并将所述实数值随机数序列截取转换为二进制序列和整数值序列;步骤S300,利用伪随机数发生器产生的二进制序列,通过Rijndael算法中密钥异或操作实现图像像素的RGB或灰度值变换,然后通过S-盒变换来完成图像像素的替代;再利用伪随机数发生器生成的整数值序列来实现图像像素的行列置换操作,循环进行N轮加密,最终实现图像加密。所述输入加密的初始条件值,包括密钥序列的加密迭代初值&、加密系统参数λ、加密参数L、加密参数κ ;整数序列的加密迭代初值X' C1、加密系统参数λ'、加密参数L'和加密参数K';其中,X0为伪随机数发生器的密钥序列的加密迭代初值 ’X' ^为整数序列的加密迭代初值;λ、λ ‘为伪随机数发生器的加密系统参数,3. 569 945 6. . . < λ、λ ‘ ^4;L、L'为加密截取值,表示截取实值随机数序列{Xn,n = 0,l,2,K}中的每个实值 Xn前。L'位二进制数;κ , κ ‘是加密参数;当实值随机数序列转化为二进制随机数序列时,指定取实值随机数序列{χη,η = 0,1,2,K}中Xn的第K、K ‘位二进制数来组成二进制密钥序列。较优地,所述步骤S300包括下列步骤步骤S310,以伪随机数发生器产生的二进制数密钥序列Kt (t = 0,1,..., (MXNXS)-I)作为种子密钥进行密钥扩展,密钥用w[] [NX8]存放,最前面的M行为种子密钥,用于第一轮加密时与待加密图像中的像素异或;从第二轮加密开始使用轮密钥,第r轮的轮密钥由w中的第MXr行到第MX (r+l)-l行给出;w的前M行是种子密钥;后面各行由先前的行按递归方式确定如果i不是M的倍数,则第i行是第i-Μ行与第i_l行的逐位异或;否则,第i行是第i_M行与第i-Ι行的一个非线性函数的逐位异pt/ · 'τΛ ,步骤S320,按顺序取出w[][NX8]中的M行密钥,按字节与待加密图像中的像素 Bij (i = 0,1, ... ,M-1, j = 0,1, ... , N-1)中的RGB三个分量异或得到新的像素((i = 0,1,…,M-I, j = 0,1,…,N-1);步骤S330,利用查找表进行S-盒变换;将中的RGB三个分量分别作替换操作, 即前4位作为S-盒列坐标,后4位作为S-盒行坐标,用S-盒行列坐标处的值替换中的 RGB 三个分量得到新的像素值 Cij ((i =0,1,..., M-l,j = 0,1,. . .,N-1);步骤S340,以伪随机数发生器根据加密迭代初值X' C1、加密系统参数λ'、加密参数L'和解密参数κ ‘生成的整数值随机数序列PPt(t = 0,1,. . .,M-l,Μ,. . .,M+N-1) 作为图像像素进行横向和纵向移动的位数,进行像素的行列置换;将图像的每行像素Cij依次循环左移PPt (t = 0,1,. . . ,M-1)个位置变换到该行的另一位置;步骤S350,将图像的每列像素Cij依次向下循环移动PPt (t = M,. . .,M+N-1)个位置变换到该列的另一位置;步骤S360,返回步骤S320,进行下一轮加密,直到完成N轮,得到加密图像。为实现本专利技术目的还提供一种图像解密方法,包括下列步骤步骤S100’,输入需要加密的图像文件,并输入加密的初始条件值。输入输出接口单元输入初始条件值包括密钥序列的加密迭代初值\、加密系统参数λ、加密参数L、加密参数κ ;整数序列的加密迭代初值X' C1、加密系统参数λ ‘、加密参数L'和加密参数κ ‘;设定κ丨的值为κ ‘ = (κ ‘ +N)% L',N为加密次数;步骤S200’,利用伪随机数发生器产生的二进制密钥序列和整数值序列,进行加密的逆运算,然后进行密钥异或运算,最终端实现图像解密。较优地,所述步骤S200’包括下列步骤步骤S210’,伪随机数发生器利用迭代初值X' C1、系统参数λ ‘、参数L'和参数κ ‘,生成整数值序列PPt(t = 0,1,. . .,M-l,Μ,. . .,M+N-1),进行每列像素Cij(i = 0, 1,. . .,M-l,j = 0,1,. . .,N-1)依次向上循环移动PPt(t = M,. . .,M+N-1)个位置变换到该列的另一位置;步骤S220’,将加密的每行像素依次循环右移PPt (t = 0,1,. . .,M-1)个位置变换到该行的另一位置;步骤S230’,利用逆S-盒替换表通过查表查找到逆元。将Cij中的RGB三个分量分别作逆S-盒替换,即前4位作为S-盒列坐标,后4位作为逆S-盒行坐标,用逆S-盒行列坐标处的值替换Cij得到像素值、(i = 0,1,. . .,M-l,j =本文档来自技高网...

【技术保护点】
1.一种图像加解密系统,其特征在于,包括输入输出接口单元、伪随机数发生器,加密/解密单元,水印嵌入单元,水印检测单元,其中:所述输入输出接口单元,用于输入需要加密/解密的图像文件及初始条件值,输出加密/解密后的图像文件。所述伪随机数发生器,用于根据输入的初始条件值生成二进制随机数序列;所述加密/解密单元,用于根据所述伪随机数发生器生成的二进制随机数序列,对输入的图像文件进行加密或者进行解密;所述水印嵌入单元,用于在图像中嵌入水印,所述水印嵌入单元中包括原始图像DCT系数选择模块和水印嵌入模块;所述水印检测单元,用于对嵌入水印的图像进行检测,所述水印检测单元中包括含水印图像DCT系数选择模块和水印判断模块。

【技术特征摘要】
1.一种图像加解密系统,其特征在于,包括输入输出接口单元、伪随机数发生器,加密 /解密单元,水印嵌入单元,水印检测单元,其中所述输入输出接口单元,用于输入需要加密/解密的图像文件及初始条件值,输出加密/解密后的图像文件。所述伪随机数发生器,用于根据输入的初始条件值生成二进制随机数序列; 所述加密/解密单元,用于根据所述伪随机数发生器生成的二进制随机数序列,对输入的图像文件进行加密或者进行解密;所述水印嵌入单元,用于在图像中嵌入水印,所述水印嵌入单元中包括原始图像DCT 系数选择模块和水印嵌入模块;所述水印检测单元,用于对嵌入水印的图像进行检测,所述水印检测单元中包括含水印图像DCT系数选择模块和水印判断模块。2.根据权利要求1所述的图像加解密系统,其特征在于,所述加密/解密单元,包括加密单元和解密单元,其中所述加密单元中包括图像加密单元和水印加密单元,所述图像加密单元和水印加密单元分别针对图像和水印取不同的初始条件值,图像初始条件值和水印初始条件值均利用伪随机数发生器产生的二进制随机数序列,截取其中的一段二进制随机数序列,执行以下加密程序通过Rijndael算法中密钥异或操作实现图像像素的RGB或灰度值变换,再通过 S-盒变换来完成图像像素的替代;再实现图像像素的行列置换操作,然后截取另一段二进制随机数序列,循环进行下一轮加密操作,直到图像进行一定轮的加密,且水印也进行了一定轮的加密,最终实现图像和水印双重加密,并且利用RSA算法随机选取整数做为图像初始条件值和水印初始条件值加密密钥,根据所述图像初始条件值和水印初始条件值加密密钥分别对图像初始条件值和水印初始条件值进行加密,且通过图像初始条件值和水印初始条件值加密密钥分别计算出图像初始条件值和水印初始条件值初始条件值解密密钥;所述解密单元中包括图像解密...

【专利技术属性】
技术研发人员:李金祥顾才东陈珂牛丽杨元峰熊志勇
申请(专利权)人:江苏省现代企业信息化应用支撑软件工程技术研发中心
类型:发明
国别省市:32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1