安企神电脑监控软件 在线试用
扫码咨询客服
安企神电脑监控软件、局域网监控软件
首页
功能介绍
产品简介
下载中心
帮助中心
客户列表
关于安企神

基于混沌映射网络的数字图像加密算法

更新时间:2022-10-28 15:43:04


本文简介:基于混沌映射网络的数字图像加密算法是利用多个一维分段线性混沌映射组合成混沌网络并与标准幻方变换相结合,设计出的一种保密性更强,加密效率更高,适应现代密码体制要求的数字图像新加密算法。基于混沌映射网络的数字图像加密算法1、混沌映射的选择有相关资料提出了一个具有良好随机统计特性的一维分段线性混沌映射,其定义如下:其中,p是控制参数,且p∈(0,1/2)。该混沌映射在区间[0,1]上具有下面的一些比较好

基于混沌映射网络的数字图像加密算法

基于混沌映射网络的数字图像加密算法是利用多个一维分段线性混沌映射组合成混沌网络并与标准幻方变换相结合,设计出的一种保密性更强,加密效率更高,适应现代密码体制要求的数字图像新加密算法。

基于混沌映射网络的数字图像加密算法

1、混沌映射的选择

有相关资料提出了一个具有良好随机统计特性的一维分段线性混沌映射,其定义如下:

基于混沌映射网络的数字图像加密算法

其中,p是控制参数,且p∈(0,1/2)。该混沌映射在区间[0,1]上具有下面的一些比较好的统计特性:

(1)其Lyapunov指数大于零,系统是混沌的,输出信号满足遍历各态性、混和性和确定性。

(2)具有一致的不变分布密度函数f(x)=1。

(3)输出轨道的近似自相关函数τ(n)=δ(n)。

2、混沌映射网络及其伪随机序列的产生

(1)混沌映射网络模型

本文的混沌映射网络由4个相同结构的一维分段线性混沌映射组成,并且要求初始参数X00≠X10。如图所示。

基于混沌映射网络的数字图像加密算法

每次输出X02和X12的同时,也将X02, X12分别反馈回X00和X10作为前2个混沌映射下次迭代的输入参数及控制参数。图中的 模0.5操作是为了使得每个一维分段线性混沌映射的控制参数落在(0, 1/2)之间。

(2)伪随机序列的构造

首先分别用上图中的第(0,1)和第(1,1)离散混沌映射产生_2个拟混沌序列,为了性能更好,可以让映射先行迭代N0次):X02(1),X02(2)....X02(i),X12(1),X12(2)...X12(i)。然后按下式定义随机序列向量Uj(j=0,1...,对任意Ui有:

基于混沌映射网络的数字图像加密算法

则该序列具有良好的伪随机特性。

3、基于一维混沌映射网络的图像加密

基于混沌映射网络的数字图像加密算法

一维混沌映射网络的图像文件加密/解密方案的具体步骤如下:

(1)通过标准幻方矩阵对图像进行像素位置置乱。

(2)按照签名的方法,产生伪随机序列序列Uj。

(3)按如下方式把伪随机序列Uj转化为整数序列φ(k)=(U8(K-1),,U8(K-1)+1....U8(K-1)+7),其中,k=1,2。

(4)按如下方式加密图像:C(k)= φ(k)⊕{(p(k)+2×φ(k)_ _mod G}=⊕C(k-1)

_其中,P(K)和(C(K)分别是当前正在加密的明文像素和得到的密文像素;C(K-1)是前一个像素的密文值;C(0)是初始的秘密值;G是图像的灰度级数,在256灰度级图像中,G=256。

(5)回到步骤(2)直到所有的像素被处理。 为了增强安全性,可以重复步骤(1)~步骤(5)多轮。

(6)图像的解密过程与上述加密过程类似,在步骤(4)时,采用下式:

P(K)={C(K)⊕φ(K)⊕(K-1)+G-2×φ(K)}modG

基于一维混沌映射网络的数字图像加密算法是一种安全有效的数字图像加密方法,具有良好的安全性能,目前已被广泛的使用。

小知识之伪随机序列:

如果一个序列,一方面它是可以预先确定的,并且是可以重复地生产和复制的;一方面它又具有某种随机序列的随机特性(即统计特性),我们便称这种序列为伪随机序列。

立即下载试用

基于3DES加密算法的研究

关于加密方法,我们之前有介绍过很多,最近大出风头的秀尔算法和DES、MD5等等一直占据鳌头,今天我们来介绍一个小众的加密算法——就是3DES。

加密算法主要通过软件和硬件两种方式来实现,软件的实现方式具有灵活方便的优点,同时也具有加密速度受限制的缺点。采用硬件实现加密算法是实际应用中必须要考虑到的问题。目前经常采用硬件FPGA等来实现,该种实验方式具有处理速度快的特点,但是对系统的复杂度要求较高。

嵌入式微处理器具有实现简单,系统集成度高,体积小,易于移植等众多优点,因此有必要研发基于嵌入式微处理器的加密算法硬件设备,在此提出一种基于ARM处理器的3DES的硬件实现方法。

3DES算法原理

DES是美国国家标准局颁布的数据加密算法,作为世界范围内的公开加密标准已经使用了20多年。随着计算机处理速度的提高,DES算法面临着一些安全威胁,DES采用56位密钥,曾经有人用穷举搜索法对DES进行过密钥搜索攻击。

近年来也有人提出了差分和线性攻击方案,该方案的实施必须有超高速计算机的支持。为了增强DES算法应对差分或线性攻击的可能性,人们提出了一系列改进方案,采用增加密钥长度是一种可行的途径。

为了增加密钥的长度,可将分组密码进行级联,在不同的密钥作用下,连续多次对一组明文进行加密。其中,最有效的方法是使用三重DES加密,它可使加密密钥长度扩展到128位,在提高加密强度的同时,足以应付目前的各种攻击。

DES是一个分组加密算法,它以64位为分组对数据加密。64位的分组明文序列作为加密算法的输入,经过16轮加密得到64位的密文序列。加密的密钥为64位,实际长度为56位,DES算法的保密性取决于密钥。DES对64位的明文分组进行操作。

首先通过一个初始置换IP,将64位的明文分成各32位长的左半部分和右半部分,该初始置换只在16轮加密过程进行之前进行一次。在经过初始置换操作后,对得到的64位序列进行16轮加密运算,这些运算被称为函数f,在运算过程中,输入数据与密钥结合。经过16轮运算后,左、右两部分合在一起得到一个64位的输出序列,该序列再经过一个末尾置换IP-1,获得最终的加密结果。过程如图1所示。

在每一轮加密过程中,函数厂的运算包括以下四个部分:

首先进行密钥序列移位,从移位后的56位密钥序列中选出48位;

然后通过一个扩展置换将输入序列32位的右半部分扩展成48位,再与48位的轮密钥进行异或运算;

再者通过8个s盒将异或运算后获得的48位序列替代成一个32位序列;

最后对32位序列应用置换P进行置换变换,得到-厂的32位输出序列。将函数厂的输出与输入序列的左半部分进行异或运算后的结果作为新一轮加密过程输入序列的右半部分,当前输入序列的右半部分作为新一轮加密过程输入序列的左半部分。

上述过程重复操作16次,便实现了DES的16轮加密运算。

假设Bi是第i轮计算的结果,则Bi为一个64位的序列,Li和Ri分别是Bi的左半部分和右半部分,Ki是第i轮的48位密钥,且f是实现代换、置换及密钥异或等运算的函数,那么每一轮加密的具体过程为:

以上操作的详细过程如图2所示。

在3DES加密算法中,加密过程用两个不同的密钥K1和K2对一个分组消息进行三次DES加密。首先使用第一个密钥进行DES加密,然后使用第二个密钥对第一次的结果进行DES解密,最后使用第一个密钥对第二次的结果进行DES加密。

解密过程首先使用第一个密钥进行DES解密,然后使用第二个密钥对第一次的结果进行DES加密,最后再使用第一个密钥对第二次的结果进行DES解密。

DES算法的密钥长度是56位,三重DES算法的密钥长度是112位,加密强度显著增强,可以很好地应付各种攻击,目前尚没有可行的攻击方法,应用3DES的加密系统具有很大的实用价值。

本文为收集整理,文章部分观点不代表本站观点,如有侵权或其它问题请反馈客服。https://www.wgj7.com/cjwt/16243.html