安企神电脑监控软件 在线试用
扫码咨询客服
安企神电脑监控软件、局域网监控软件
首页
功能对比
下载中心
购买咨询
客户列表
关于安企神

基于Arnold变换的数字图像加密算法

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


本文简介:目前常用的图像置乱方法有Arnold变换、幻方变换、Tangram算法、Conway游戏、Gray码变换等。Arnold变换算法简单且具有周期性,所以在图像信息隐藏方面得到了很好的应用。下面我就给大家介绍一种基于改进的Arnold变换和扩展的多维Arnold变换并且加入了Logistic混沌映射的图像加密算法。一、关于Arnold变换设有单位正方形上的点(x,y),将点(x,y)变到另一点(x′,

基于Arnold变换的数字图像加密算法

目前常用的图像置乱方法有Arnold变换、幻方变换、Tangram算法、Conway游戏、Gray码变换等。Arnold变换算法简单且具有周期性,所以在图像信息隐藏方面得到了很好的应用。下面我就给大家介绍一种基于改进的Arnold变换和扩展的多维Arnold变换并且加入了Logistic混沌映射的图像加密算法。

一、关于Arnold变换

设有单位正方形上的点(x,y),将点(x,y)变到另一点(x′,y′)的变换为:

基于Arnold变换的数字图像加密算法
此变换称作二维Arnold变换,简称Arnold变换。可见Arnold变换实际上是一种点的位置移动。

对于正方形数字图像,我们可以把其表示成:

基于Arnold变换的数字图像加密算法

式中N是数字图像矩阵的阶数;Fxy表示坐标为(x,y)的像素点的灰度值。将Arnold变换应用在数字图像上,可以通过像素点坐标的改变而改变图像灰度值的布局,把数字图像看作一个矩阵,可由式(3)实现图像像素点的置乱。

基于Arnold变换的数字图像加密算法

式中(x,y)是原图像中像素点的位置坐标;(x′,y′)是变换后该像素点对应的位置坐标。

对于二维平面上的位置变换来说,可以由上述的Arnold变换推广出一类变换,满足“位置移动”的要求。有专家证明了对于如下2×2的变换矩阵:1c,当其元素满足ad-bc=1时,它对平面坐标的变换可作为一种置乱变换,所以可将Arnold变换推广为:

基于Arnold变换的数字图像加密算法

式中参数a,b是正整数;N是数字图像矩阵的阶数。

另外还有专家将Arnold变换推广到高维的情形,相应的变换矩阵为:

基于Arnold变换的数字图像加密算法

对于矢量(x0,x1,…,xN-1)T,做如下变换(x′0,x′1,…,x′N-1)T=AN(x0,x1,…,xN-1)T,这就给定了一种在N维空间上离散网格点的移动方式。

二、图像加密、解密算法

1、图像加密算法

(1)位置置乱

首先产生Arnold变换的参数a,b值的序列,利用简单的logistic混沌映射来实现。

Logistic映射的函数式如:

基于Arnold变换的数字图像加密算法

其中当μ=4时系统处于混沌状态,此时系统产生的序列具有随机性,遍历性,对初值的敏感性,其范围为(0,1)。以K1和K2为初值产生两个混沌序列,其中K1和K2的范围亦为(0,1)。对产生的两个混沌实值序列均从第一百个实值开始取用,组成实值序列X1和X2。

对于实值XK(i)=0b1b2b3b4b5…序列YK由式(7)得到:

基于Arnold变换的数字图像加密算法

然后把Y1(i)和Y2(i)的值分别赋给参数ai和bi。

基于Arnold变换的数字图像加密算法

设方形图像Fxy的大小为N×N,即x∈[1,N],y∈[1,N],利用式(9)对整个图像做变换,变换迭代n1次所得图像记为F′xy:

基于Arnold变换的数字图像加密算法

式中x和y分别表示原图像矩阵像素点的横纵坐标;x′和y′分别表示图像经Arnold变换后图像矩阵的像素点横纵坐标。

将图像F′xy分为B×B块,每块有N2/B2个点。将最终加密的密图F″xy分成N2/B2块,每块有B×B个点,使N2/B2μB2。图像F′xy和位置置乱后图像F″xy的分块矩阵分别记为Block1和Block2,Block1可表示为:

基于Arnold变换的数字图像加密算法

其中(m1,m2)为图像F′xy分块矩阵的块位置坐标,取出F′xy的每个分块,对其进行n2次Arnold变换,每块做变换所取的a,b值都是不同的,如式(11)所示。

基于Arnold变换的数字图像加密算法

式中x=1,2,…,N;y=1,2,…,N;x′=1,2,…,N/B;y′=1,2,…,N/B。然后将Block1中变换后的第一块的像素点分布在Block2中每一块的第一个位置上,将Block1中变换后的第二块的像素点分布在Block2中每一块的第二个位置上,依此类推,直到Block1最后一块的所有像素点分布在Block2中每块的最后一个位置上,该过程由式(12)实现。

基于Arnold变换的数字图像加密算法

式中(m1,m2)为图像F′xy分块矩阵的块位置坐标;x″,y″为加密后图像F″xy的像素点的横纵坐标。至此完成了对图像的位置置乱。

(2)灰度置乱

首先取出位置置乱后的图像F″xy第一列像素点的灰度值,对其进行N维Arnold变换,即

基于Arnold变换的数字图像加密算法

其中L是图像的灰度级,将变换后的列向量放入到密图D的最后一列上,然后取出图像的第二列像素点的灰度值如上做N维的Arnold变换,将结果放入密图的倒数第二列,依此类推,直到将图像的最后一列变换后结果放入到密图的第一列,至此完成了对图像灰度值的一次列置乱。灰度值的行置乱方法与此类似,首先取出列置乱后图像D的第一行像素点的灰度值,对其转置向量做如上Arnold变换,即:

基于Arnold变换的数字图像加密算法

然后将变换结果放入到密图D′的最后一行,依此类推,直到将图像的最后一行像素点的灰度值置乱变换后的结果放入到密图D′的第一行,至此完成对图像灰度值的一次行置乱。可以通过多次行和列的置乱迭代得到较好的加密图像。对于扩展的N维空间Arnold变换其周期计算要复杂得多,而且由于图像不同行不同列可能的灰度值有不同的组合排列,这导致要恢复原始图像需要完成的变换次数很大,而且难以确定,给破译造成了困难。

(3)密钥设计

本算法有3个密钥,将产生混沌序列的初始值K1和K2作为密钥,K1和K2的取值范围为(0,1)。设K3是一个12位的十进制数,如K3=12305678912表示n1=123,n2=056,n3=789,n4=123,即图像位置置乱时整体变换迭代次数为123次,各分块变换迭代次数为56次,图像灰度置乱中行变换迭代次数为789次,列迭代次数为123次。

2、加密算法的步骤

设Fxy是一个N阶的正方形图像,其中x=1,2,3,…,N,y=1,2,3,…,N,则利用该算法对图像Fxy进行文件加密的具体步骤如下:

(1)利用logistic混沌映射产生Arnold变换矩阵的参数a,b的序列,对整个图像做矩阵参数a=a0,b=b0的Arnold变换,并迭代n1次产生图像F′xy;

(2)将图像F′xy分成B×B块,将位置置乱后的密图F″xy分成N2/B2块,每块有B×B个点,取出图像F′xy第一块中的各像素点对应放入矩阵partimage中,对图像块partimage做参数=a1,b=b1的Arnold变换,迭代n2次产生图像块lastpart,并将lastpart中的点依次放入密图F″xy中每个图像块的第一个像素点的位置;

(3)取出图像F′xy第二块中的各像素点对应放入矩阵partimage中,对partimage做矩阵参数a=a2,b=b2的Arnold变换,迭代n2次产生图像块lastpart,并将lastpart中的点依次放入密图F″xy中每个图像块的第二个像素点的位置;

(4)重复步骤3的操作,直到将F′xy中最后一块的所有像素点分布在F″xy中每块的最后一个位置上,至此完成了图像位置置乱过程,得到位置置乱密图F″xy。

(5)对位置置乱后图像F″xy做灰度值的列置乱迭代n3次,得到图像D。然后对列置乱后图像D做灰度值的行置乱迭代n4次。

解密算法与加密算法密钥相同,利用Arnold变换的周期性,以及矩阵除法可实现图像的解密。

小知识之Arnold变换

Arnold变换是一种常用的图像置乱技术。

立即下载试用

基于动态信任的内生安全架构

动态信任是一种新型的信息安全架构,近年来随着物联网、云计算和移动化等技术的发展而逐渐受到关注。传统的信息安全架构往往是建立在固定的信任模型之上,而动态信任则更加灵活和自适应,可以根据实际情况动态调整信任度,从而提高整个系统的安全性。本文将从以下几个方面来探讨基于动态信任的内生安全架构,包括动态信任的概念、功能特点、应用场景、实现方法等。

一、动态信任的概念

动态信任是指基于多方交互和数据分析,根据实时风险评估结果自适应调整信任度的一种信任模型。它与传统的访问控制模型不同,传统模型是基于身份验证和访问授权来限制访问权限的,而动态信任则更加注重实时风险评估和动态调整信任度。动态信任由于其灵活性和自适应性被广泛应用于物联网、云计算和移动化等领域,成为一种新型的内生安全框架。

二、动态信任的功能特点

1、实时风险评估
动态信任的核心是实时风险评估,通过对多方交互数据的分析、模型预测和机器学习等方法,从而实现对用户、设备、应用以及网络等方面的风险评估。同时,动态信任支持多种评估方法,可以根据实际情况选择不同的评估方法来评估系统的安全性。

2、动态调整信任度
动态信任可以根据实时风险评估结果自适应调整信任度,从而提高整个系统的安全性。例如,对于一个新的设备或应用,由于缺少足够的信任度,系统可以限制其访问权限,等到其表现良好后再逐步增加信任度。另外,在不同的应用场景中,可以根据不同的容错需求设置不同的信任阈值,从而更加灵活地调整系统的安全性。

3、安全事件的自适应响应
基于动态信任的内生安全框架可以根据实时风险评估结果自适应响应安全事件,例如实时阻断异常访问或异常信任行为等,从而保护整个系统的安全。另外,动态信任还可以实现安全威胁预警和安全日志审计等功能,为后续的安全事件响应提供支持。

三、动态信任的应用场景

基于动态信任的内生安全框架适用于物联网、云计算和移动化等领域,可以提高系统的安全性和稳定性。具体应用场景如下:

1、物联网领域
对于物联网场景,动态信任可以实现对设备、应用、用户等的实时风险评估和动态信任管理,从而保护整个物联网系统的安全。例如,可以基于设备的行为、属性等数据进行风险评估,判断设备是否存在安全风险,并进行相应的防御措施。

2、云计算领域
对于云计算场景,动态信任可以实现对用户、应用、网络等的实时风险评估和自适应调整信任度,从而提高整个云计算系统的安全性和稳定性。例如,可以根据用户的访问情况和应用的行为数据等进行风险评估,判断用户和应用是否存在安全风险,并相应的限制其访问权限。

3、移动化场景
对于移动应用场景,动态信任可以实现对应用、用户等的实时风险评估和自适应调整信任度,从而保护整个移动应用系统的安全。例如,可以根据应用的行为数据、用户的位置信息等进行风险评估,判断应用和用户是否存在安全风险,并相应的限制其访问权限。

四、动态信任的实现方法

基于动态信任的内生安全框架的实现方法主要包括以下几个方面:

1、机器学习技术
机器学习技术可以实现对多方交互数据的分析和预测,进而实现实时风险评估和动态信任管理。例如,可以使用支持向量机、神经网络、朴素贝叶斯等算法对数据进行分类和预测,从而实现安全风险评估。

2、分布式计算技术
分布式计算技术可以实现对大规模数据的分析和处理,多种评估方法的实现和系统的扩展性等。例如,可以使用MapReduce等分布式计算技术来实现大规模数据的分析和处理,从而提高系统的效率和准确性。

3、安全日志管理技术
安全日志管理技术可以实现对安全事件的记录、分析和响应等功能,从而提高系统的安全性和稳定性。例如,可以使用SIEM技术来实现安全事件的实时监测、分析和响应,从而提供相应的安全保障。

总之,基于动态信任的内生安全框架是一种新型的信息安全架构,其具有灵活性和自适应性等特点,可以根据实际情况动态调整信任度,提高整个系统的安全性。在物联网、云计算和移动化等领域具有广泛的应用前景,同时也面临着各种技术挑战和安全威胁。因此,我们需要进一步探索动态信任技术的研究和应用,并积极探索基于动态信任的内生安全框架的实现方法和应用策略,从而实现网络信息安全的可靠保障。

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