一种应用混沌密码加密和解密的方法转让专利

申请号 : CN201010198959.2

文献号 : CN102064934B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 余小龙林迎珍崔明根

申请人 : 深圳市九洲电器有限公司

摘要 :

本发明涉及一种应用混沌密码加解密的方法,该加密方法包括:A1.分别将区间[-1,1]划分为N个子域和M个子域;B1.在区间[-1,1]上建立混沌序列模型;C1.根据给定的第一初始值、第二初始值和混沌序列模型生成置换序列和替代序列;D1.判断置换序列的每个元素在N个子域上所属的子域序列数,以形成置换符号序列,及判断替代序列的每个元素在M个子域上所属的子域序列数,以形成替代符号序列;E1.根据置换符号序列,对明文进行置换操作;F1.根据替代符号序列,对置换后明文进行替代操作;G1.对替代后明文进行逆置换操作,以形成密文。由于所生成的置换符号序列和替代符号序列都为伪随机序列,所以,该加解密方法有良好的抗破译性。

权利要求 :

1.一种应用混沌密码加密的方法,其特征在于,包括:A1.分别将区间[-1,1]划分为N个子域和M个子域,其中,M和N分别为大于1的自然数;

B1.在区间[-1,1]上建立混沌序列模型;

C1.根据给定的第一初始值和混沌序列模型生成置换序列{xi},及根据给定的第二初始值和混沌序列模型生成替代序列{x'i},所述第一初始值和第二初始值在区间[-1,1]内;

D1.判断置换序列的每个元素在N个子域上所属的子域序列数,置换序列的每个元素所对应的子域序列数构成置换符号序列{si},及判断替代序列的每个元素在M个子域上所属的子域序列数,替代序列的每个元素所对应的子域序列数构成替代符号序列{s'i};

E1.根据所述置换符号序列{si},对明文{mi}进行置换操作,以形成置换后明文{m'i};

F1.根据所述替代符号序列{s'i},对置换后明文{m'i}进行替代操作,以形成替代后明文{ci};

G1.对替代后明文{ci}进行逆置换操作,以形成密文,所述逆置换与步骤E1所述的置换互为反运算。

2.根据权利要求1所述的应用混沌密码加密的方法,其特征在于,在所述步骤A1中,按照以下公式分别将区间[-1,1]划分为N个子域πi和M个子域πi=[ti,ti+1),i=0,1,2…N-2;πN-1=[tN-1,tN];

ti=-cos(iπ/N),i=0,1,2…N-1;ui=-cos(iπ/M),i=0,1,2…M-1。

3.根据权利要求2所述的应用混沌密码加密的方法,其特征在于,在步骤B1中,所构造的混沌序列模型为:且该混沌序列模型在a点是连续的,其中,p=3,q=5,a=0。

4.根据权利要求3所述的应用混沌密码加密的方法,其特征在于,所述步骤C1和所述步骤D1之间还包括:H1.分别将置换序列{xi}和替代序列{x'i}的每个元素按照以下公式变形以生成第二置换序列{yi}和第二替代序列{y'i}:yi=1-arccos(xi)/π

y'i=1-arccos(x'i)/π。

5.根据权利要求4所述的应用混沌密码加密的方法,其特征在于,在所述步骤H1和步骤所述步骤D1之间还包括:I1.分别对第二置换序列{yi}和第二替代序列{y'i}的各个元素进行均匀化位处理,以生成新置换序列{zi}和新替代序列{z'i}。

6.根据权利要求5所述的应用混沌密码加密的方法,其特征在于,所述均匀化位处理为:将元素转换为二进制双精度浮点数,得到52位尾数位;

将元素的26位低尾数倒序;

将26位高尾数和倒序后的26位低尾数进行位异或操作,以形成新的26位高尾数位;

组合新的26位高尾数位和倒序后的26位低尾数位,以形成新的元素。

7.根据权利要求6所述的应用混沌密码加密的方法,其特征在于,所述步骤E1包括:E11.将置换符号序列{si}的每个元素加1以构成新置换符号序列{si+1};

E12.将明文{mi}分块,且每个明文块的块长为N,并对每个明文块的元素进行顺序编号,及将新置换符号序列{si+1}分块,每个新置换符号序列块的块长为N,并对每个新置换符号序列块的元素进行顺序编号;

E13.逐一将每个明文块的每一元素与所选明文块的置换元素交换位置,所述置换元素通过以下步骤获得:在与所选明文块对应的新置换符号序列块中找出与所选明文块所选元素的编号相同的元素;在所选明文块中找出编号为所找出的新置换符号序列块中的元素所对应的元素,该明文块中所找出的元素即为置换元素;

E14.将置换后的每个明文块进行组合,以形成置换后明文{m'i}。

8.根据权利要求7所述的应用混沌密码加密的方法,其特征在于,所述步骤F1按以下公式进行替代操作:

9.一种应用混沌密码解密的方法,其特征在于,包括:A2.分别将区间[-1,1]划分为N个子域和M个子域,其中,M和N分别为大于1的自然数;

B2.在区间[-1,1]上建立混沌序列模型;

C2.根据加密时的第一初始值和混沌序列模型生成置换序列,及根据加密时的第二初始值和混沌序列模型生成替代序列,所述第一初始值和第二初始值在区间[-1,1]内;

D2.判断置换序列的每个元素在N个子域上所属的子域序列数,置换序列的每个元素所对应的子域序列数构成置换符号序列,及判断替代序列的每个元素在M个子域上所属的子域序列数,替代序列的每个元素所对应的子域序列数构成替代符号序列;

E2.根据所述置换符号序列,对密文进行置换操作,以形成置换后密文;

F2.根据所述替代符号序列,对置换后密文进行替代操作,以形成替代后密文;

G1.对替代后密文进行逆置换操作,以形成明文,所述逆置换与步骤E2所述的置换互为反运算。

10.根据权利要求9所述的应用混沌密码加密的方法,其特征在于,在所述步骤A2中,按照以下公式分别将区间[-1,1]划分为N个子域πi和M个子域πi=[ti,ti+1),i=0,1,2…N-2;πN-1=[tN-1,tN];

ti=-cos(iπ/N),i=0,1,2…N-1;ui=-cos(iπ/M),i=0,1,2…M-1。

说明书 :

一种应用混沌密码加密和解密的方法

技术领域

[0001] 本发明涉及信息技术领域,更具体地说,涉及一种应用混沌密码加密和解密的方法。

背景技术

[0002] 随着全球信息化的飞速发展,我国大量建设的各种信息化系统已经成为国家关键基础设施,其中许多业务要与国际接轨,诸如通信、电子商务、金融网络等,同时,在信息开放的今天,如何保障我国的政府、军事、商业和金融等行业领域的信息安全,成为我国建设的重要课题。信息安全已成为影响国家全局和长远利益的急待解决的关键问题。
[0003] 解决信息安全问题的关键技术之一是密码技术,密码技术主要包括加密技术、认证技术和密钥管理技术。密码学的研究已有几千年的历史,一般认为,一个保密系统,应该是只有在密钥不知道,而密码算法公知于众的情况下,系统有好的抗破译能力,这才是一个好的保密系统。现有商用的对称加密体制一般为DES(数据加密标准)和AES(高级加密标准)。
[0004] 混沌现象是20世纪60年代发现的,被认为是继牛顿定律和相对论之后的最重要发现,改变了人们对客观事物的认识方法。混沌具有随机系统的特征,又具有很强的确定性和规律性,绝非一片混乱,形似紊乱而实则有序。
[0005] 混沌的典型特征包括以下几个方面:
[0006] 1.非线性,线性系统不可能产生混沌;
[0007] 2.确定性,系统状态的演变必须遵循确定的准则;
[0008] 3.对初值敏感相依性,初始状态微小变化会导致系统轨道演变以指数速度分离;
[0009] 4.存在奇异吸引子,来自于轨道的无穷伸缩、折叠的奇异吸引子是轨道不稳定和耗散系统容积收缩两种系统内在性质同时发生的现象,存在于有限的区域内,空间结构十分复杂;
[0010] 5.长期不可预测性,由于系统对初值敏感相依性,导致系统的长期行为类似布朗运动,只能用概率论的方法对系统长期行为进行描述,而不能进行确定论的描述;
[0011] 6.自相似结构,混沌区中有周期窗口,窗口内细分有混沌区域,这种结构无穷次重复,并具有各态历经和层次分明的特性,同时,混沌运动具有各种尺度,而无特定尺度,这种系统称为自相似结构;
[0012] 7.无序中的有序性,混沌运动中周期点集的稠密性,决定了系统内部高低频率成分竞争的有序性。
[0013] 混沌密码是密码学领域的前沿课题,虽目前还不成熟,但对建立密码体制具有强大的吸引力,所建立的密码体制可应用在直接扩频通信、扩频调频通信、保密通信、联想记忆、优化设计、信号检测、模式识别等诸多领域。

发明内容

[0014] 本发明要解决的技术问题在于,提供一种应用混沌密码加密和解密的方法。
[0015] 本发明解决其技术问题所采用的技术方案是:构造一种应用混沌密码加密的方法,包括:
[0016] A1.分别将区间[-1,1]划分为N个子域和M个子域,其中,M和N分别为大于1的自然数;
[0017] B1.在区间[-1,1]上建立混沌序列模型;
[0018] C1.根据给定的第一初始值和混沌序列模型生成置换序列{xi},及根据给定的第二初始值和混沌序列模型生成替代序列{x'i},所述第一初始值和第二初始值在区间[-1,1]内;
[0019] D1.判断置换序列的每个元素在N个子域上所属的子域序列数,置换序列的每个元素所对应的子域序列数构成置换符号序列{si},及判断替代序列的每个元素在M个子域上所属的子域序列数,替代序列的每个元素所对应的子域序列数构成替代符号序列{s'i};
[0020] E1.根据所述置换符号序列{si},对明文{mi}进行置换操作,以形成置换后明文{m'i};
[0021] F1.根据所述替代符号序列{s'i},对置换后明文{m'i}进行替代操作,以形成替代后明文{ci};
[0022] G1.对替代后明文{ci}进行逆置换操作,以形成密文,所述逆置换与步骤E1所述的置换互为反运算。
[0023] 在本发明所述的应用混沌密码加密的方法中,在所述步骤A1中,按照以下公式分别将区间[-1,1]划分为N个子域πi和M个子域
[0024] πi=[ti,ti+1),i=0,1,2…N-2;πN-1=[tN-1,tN];
[0025] ti=-cos(iπ/N),i=0,1,2…N-1;
[0026]
[0027] ui=-cos(iπ/M),i=0,1,2…M-1。
[0028] 在本发明所述的应用混沌密码加密的方法中,在步骤B1中,所构造的混沌序列模型为:
[0029]
[0030] 且该混沌序列模型在a点是连续的,其中,p=3,q=5,a=0。
[0031] 在本发明所述的应用混沌密码加密的方法中,所述步骤C1和所述步骤D1之间还包括:
[0032] H1.分别将置换序列{xi}和替代序列{x'i}的每个元素按照以下公式变形以生成第二置换序列{yi}和第二替代序列{y'i}:
[0033] yi=1-arccos(xi)/π
[0034] y'i=1-arccos(x'i)/π。
[0035] 在本发明所述的应用混沌密码加密的方法中,在所述步骤H1和步骤所述步骤D1之间还包括:
[0036] I1.分别对第二置换序列{yi}和第二替代序列{y'i}的各个元素进行均匀化位处理,以生成新置换序列{zi}和新替代序列{z'i}。
[0037] 在本发明所述的应用混沌密码加密的方法中,所述均匀化位处理为:
[0038] 将元素转换为二进制双精度浮点数,得到52位尾数位;
[0039] 将元素的26位低尾数倒序;
[0040] 将26位高尾数和倒序后的26位低尾数进行位异或操作,以形成新的26位高尾数位;
[0041] 组合新的26位高尾数位和倒序后的26位低尾数位,以形成新的元素。
[0042] 在本发明所述的应用混沌密码加密的方法中,所述步骤E1包括:
[0043] E11.将置换符号序列{si}的每个元素加1以构成新置换符号序列{si+1};
[0044] E12.将明文{mi}分块,且每个明文块的块长为N,并对每个明文块的元素进行顺序编号,及将新置换符号序列{si+1}分块,每个新置换符号序列块的块长为N,并对每个新置换符号序列块的元素进行顺序编号;
[0045] E13.逐一将每个明文块的每一元素与所选明文块的置换元素交换位置,所述置换元素通过以下步骤获得:在与所选明文块对应的新置换符号序列块中找出与所选明文块所选元素的编号相同的元素;在所选明文块中找出编号为所找出的新置换符号序列块中的元素所对应的元素,该明文块中所找出的元素即为置换元素;
[0046] E14.将置换后的每个明文块进行组合,以形成置换后明文{m'i}。
[0047] 在本发明所述的应用混沌密码加密的方法中,所述步骤F1按以下公式进行替代操作:
[0048]
[0049]
[0050] 本发明还构造一种应用混沌密码解密的方法,包括:
[0051] A2.分别将区间[-1,1]划分为N个子域和M个子域,其中,M和N分别为大于1的自然数;
[0052] B2.在区间[-1,1]上建立混沌序列模型;
[0053] C2.根据加密时的第一初始值和混沌序列模型生成置换序列,及根据加密时的第二初始值和混沌序列模型生成替代序列,所述第一初始值和第二初始值在区间[-1,1]内;
[0054] D2.判断置换序列的每个元素在N个子域上所属的子域序列数,置换序列的每个元素所对应的子域序列数构成置换符号序列,及判断替代序列的每个元素在M个子域上所属的子域序列数,替代序列的每个元素所对应的子域序列数构成替代符号序列;
[0055] E2.根据所述置换符号序列,对密文进行置换操作,以形成置换后密文;
[0056] F2.根据所述替代符号序列,对置换后密文进行替代操作,以形成替代后密文;
[0057] G1.对替代后密文进行逆置换操作,以形成明文,所述逆置换与步骤E2所述的置换互为反运算。
[0058] 在本发明所述的应用混沌密码加密的方法中,在所述步骤A2中,按照以下公式分别将区间[-1,1]划分为N个子域πi和M个子域
[0059] πi=[ti,ti+1),i=0,1,2…N-2;πN-1=[tN-1,tN];
[0060] ti=-cos(iπ/N),i=0,1,2…N-1;
[0061]
[0062] ui=-cos(iπ/M),i=0,1,2…M-1。
[0063] 实施本发明的应用混沌密码加解密的方法,由于所生成的置换符号序列和替代符号序列都为伪随机序列,然后将该置换符号序列用于对明文在加密时的置换或对密文解密时的置换,将该替代符号序列用于对明文在加密时的替代或对密文解密时的替代,所以,该加解密方法有良好的抗破译性。

附图说明

[0064] 下面将结合附图及实施例对本发明作进一步说明,附图中:
[0065] 图1是本发明应用混沌密码加密方法实施例一的流程图;
[0066] 图2是本发明应用混沌密码加密方法实施例二的流程图;
[0067] 图3是图1中步骤S105实施例三的流程图;
[0068] 图4是本发明应用混沌密码解密方法实施例一的流程图;
[0069] 图5A是一帧图像加密前的效果图;
[0070] 图5B是图5A对应的直方图;
[0071] 图6A是图5A加密后的效果图;
[0072] 图6B是图6A对应的直方图;
[0073] 图7A是图6A解密后的效果图;
[0074] 图7B是图7A对应的直方图。

具体实施方式

[0075] 如图1所示,在本发明的应用混沌密码加密方法实施例一的流程图中,该加密方法包括以下步骤:
[0076] 步骤S101.分别将区间[-1,1]划分为N个子域和M个子域,其中,M和N分别为大于1的自然数,应当说明的是,本发明并不限定M与N的关系,也即,M与N可相等也可不等;在该步骤中,优选按照以下公式分别将区间[-1,1]划分为N个子域πi和M个子域[0077] πi=[ti,ti+1),i=0,1,2…N-2;πN-1=[tN-1,tN];
[0078] ti=-cos(iπ/N),i=0,1,2…N-1;
[0079]
[0080] ui=-cos(iπ/M),i=0,1,2…M-1。
[0081] 步骤S102.在区间[-1,1]上建立混沌序列模型;在该步骤中,所构造的混沌序列模型优选为:
[0082]
[0083] 且该混沌序列模型在a点是连续的。
[0084] 步骤S103.根据给定的第一初始值和混沌序列模型生成置换序列{xi},及根据给定的第二初始值和混沌序列模型生成替代序列{x'i},所述第一初始值和第二初始值在区间[-1,1]内;
[0085] 步骤S104.判断置换序列的每个元素在N个子域上所属的子域序列数,置换序列的每个元素所对应的子域序列数构成置换符号序列{si},及判断替代序列的每个元素在M个子域上所属的子域序列数,替代序列的每个元素所对应的子域序列数构成替代符号序列{s'i};
[0086] 步骤S105.根据所述置换符号序列{si},对明文{mi}进行置换操作,以形成置换后明文{m'i};
[0087] 步骤S106.根据所述替代符号序列{s'i},对置换后明文{m'i}进行替代操作,以形成替代后明文{ci};
[0088] 步骤S107.对替代后明文{ci}进行逆置换操作,以形成密文,所述逆置换与步骤E1所述的置换互为反运算。
[0089] 图2是本发明应用混沌密码加密方法实施例二的流程图,该加密方法包括步骤S101~步骤S109,且步骤S101~步骤S107与实施例一的加密方法相同,在此不做赘述,以下仅说明其不同的部分:在步骤S103和步骤S104之间还包括:
[0090] 步骤S108.分别将置换序列{xi}和替代序列{x'i}的每个元素按照以下公式变形以生成第二置换序列{yi}和第二替代序列{y'i}:
[0091] yi=1-arccos(xi)/π
[0092] y'i=1-arccos(x'i)/π。
[0093] 步骤S109.分别对第二置换序列{yi}和第二替代序列{y'i}的各个元素进行均匀化位处理,以生成新置换序列{zi}和新替代序列{z'i}。
[0094] 优选地,均匀化位处理包括以下步骤:
[0095] 将元素转换为二进制双精度浮点数,得到52位尾数位;
[0096] 将元素的26位低尾数倒序;
[0097] 将26位高尾数和26位低尾数进行位异或操作,以形成新的26位高尾数位;
[0098] 组合新的26位高尾数位和26位低尾数位,以形成新的元素。
[0099] 图3是图1中步骤S105的置换操作方法实施例三的流程图,该置换操作可包括:
[0100] 步骤S1051.将置换符号序列{si}的每个元素加1以构成新置换符号序列{si+1};
[0101] 步骤S1052.将明文{mi}分块,且每个明文块的块长为N,并对每个明文块的元素进行编号,及将新置换符号序列{si+1}分块,每个新置换符号序列块的块长为N,并对每个新置换符号序列块的元素进行编号;
[0102] 步骤S1053.逐一将每个明文块的每一元素与所选明文块的置换元素交换位置,所述置换元素通过以下步骤获得:在与所选明文块对应的新置换符号序列块中找出与所选明文块所选元素的编号相同的元素;在所选明文块中找出编号为所找出的新置换符号序列块中的元素所对应的元素,该明文块中所找出的元素即为置换元素;
[0103] 步骤S1054.将置换后的每个明文块进行组合,以形成置换后明文{m'i}。
[0104] 另外,优选地,图1中步骤S106按以下公式进行替代操:
[0105]
[0106]
[0107] 下面举例说明本发明是如何应用混沌密码进行加密的:在一个实施例中,若N=5,M=128,则可根据上述步骤S101中优化的方案将区间[-1,1]分别划分为5个子域和128个子域,其中,所划分的5个子域用于生成置换符号序列,所划分的128个子域用于生成替代符号序列。另外,设定上述步骤S102中优选的混沌序列模型中p=3,q=5,a=0,且设定序列的长度为10。以下仅说明替代符号序列的生成过程,应当理解,置换符号序列的生成过程与之相同。在符号序列的生成过程中,若所给定的第二初始值(也即第二密钥)为0.36984,首先,根据上述优选的混沌序列模型和第二初始值(x0=0.36984)计算替代序列的每个元素,如:
[0108] x1=cos3arccos(x0)=cos3arccos(-0.36984)=0.948164317738909;
[0109] x2=cos3arccos(x1)=cos3arccos(0.948164317738909)=-0.046125774585775;
[0110] 由上可得到替代序列{x'i,i=1,2…10}为:
[0111] {0.948164317738909,-0.046125774585775,0.137984777348860,0.638180181315167,-0.313682044196893,0.817585365834289,-0.997290103616569,-0.9756989754091
17,-0.788319853347615,0.405359772299888};
[0112] 接着,根据公式y'i=1-arccos(x'i)/π将替代序列{x'i,i=1,2…10}变形为第二替代序列{y'i,i=1,2…10}:
[0113] {0.897062499728422,0.485312498642106,0.544062504073683,0.720312520368413,0.398437398157933,0.804687805526201,0.0234390276309995,0.0703170828929983,0.210951248678995,0.632853746036985};
[0114] 然后,对第二替代序列{y'i,i=1,2…10}进行均匀化位处理,以生成新替代序列{z'i,i=1,2…10}:
[0115] {0.730322929341273,0.6819030984308525,0.016439713073868,0.111822733184400,0.312022387488202,0.311067822061398,0.308204047434274,0.509768106305316,
0.623058506142243,0.357539921621779};
[0116] 最后,判断新替代序列的每个元素在区间[-1,1]上的128个子域上所属的子域序列数,如新替代序列的第一个元素z'1=0.730322929341273,在[-1,1]上的128个子域上,其属于第87个子域,即,新替代序列的第一个元素z'1所对应的子域序列数s'1为87,依次类推,新替代序列的每个元素所对应的子域序列数所构成的替代符号序列{s'i,i=1,2…10}为{87,2,14,39,39,39,65,79,79,45}。以上说明了符号序列的生成过程,置换符号序列的生成过程与之相同,可先选取第一初始值(也即第一密钥),例如为-0.36984,然后按照上面的步骤,生成置换符号序列{si,i=1,2…10}为{3,1,3,1,4,1,4,3,2,0};
然后将置换符号序列{si,i=1,2…10}的每个元素加1以构成新置换符号序列{si+1}为:
{4,2,4,2,5,2,5,4,3,1}。
[0117] 在完成了新置换符号序列和替代符号序列的生成后,开始对明文进行处理,设定 明 文{mi,i=1,2…10}为{88,40,91,51,103,39,116,79,76,6},首 先,将 明文{88,40,91,51,103,39,116,79,76,6}分块,且每个明文块的块长为5,共可分成两个明文块:{88,40,91,51,103}和{39,116,79,76,6},同样地,将新置换符号序列{4,2,4,2,5,2,5,4,3,1}也进行分块,且每个新置换符号序列块长为5,共可分成两个新置换符号序列块:{4,2,4,2,5}和{2,5,4,3,1};然后,将第一个明文块{88,40,91,51,103}和第一个新置换符号序列块{4,2,4,2,5}进行置换操作,如以第一个元素为例,第一个新置换符号序列块的第一个元素为4,也就是将第一个明文块的第四个元素51与第一个元素88交换位置,并依次类推,得到置换后第一明文块{51,91,88,40,103},同样地,第二个明文块{39,116,79,76,6}和第二个新置换符号序列块{2,5,4,3,1}进行置换操作后,得到置换后第二明文块{39,6,79,76,116},再将置换后的两个明文块{51,91,88,40,103}和{39,6,79,76,116}组合,以形成置换后明文{m'i,i=1,2…10}为{51,91,88,40,103,39,6,79,76,116};接着,将所形成置换后明文{51,91,88,40,103,39,6,79,76,116}与替代符号序列{87,2,14,39,39,39,65,79,79,45}按 公式进行位异或
操作,可得到替代后明文{ci,i=1,2…10}为{100,61,15,89,79,64,71,71,3,90};最后,对替代后明文{100,61,15,89,79,64,71,71,3,90}进行逆置换操作,该逆置换操作与上述的置换操作互为反运算,所以所形成密文为{15,89,61,100,79,64,90,71,3,71},就这样便完成了明文的加密。
[0118] 图4本发明应用混沌密码解密方法实施例一的流程图,该解密方法与实施例一的加密方法对应,可包括步骤S201~步骤S207,其中,步骤S201~步骤S204与图1所示的加密方法中的步骤S101~步骤S104完全相同,即生成与加密步骤相同的置换符号序列和替代符号序列,应当说明的是,在解密时,所使用的第一初始值和第二初始值为加密时所给定的第一初始值和第二初始值。下面说明解密方法和加密方法所不同的部分:
[0119] 步骤S205.根据上述所产生的置换符号序列,对密文进行置换操作,以形成置换后密文;
[0120] 步骤S206.根据上述所产生的替代符号序列,对置换后密文进行替代操作,以形成替代后密文;
[0121] 步骤S207.对替代后密文进行逆置换操作,以形成明文,所述逆置换与步骤S205所述的置换互为反运算。
[0122] 应当说明的是,凡是加密方法所适用的优选方案同样适用于解密方法,只是将在加密方法中对明文的操作换为解密方法中对密文的操作,在此不做赘述。
[0123] 例如,继续使用上述说明如何应用混沌密码进行加密的例子,现针对该例子说明如何应用混沌密码进行解密:由于解密与加密所使用的是相同的混沌序列模型、相同的第一初始值和第二初始值、相同的区间划分,所以,所生成的新置换符号序列和替代符号序列相同,即,新置换符号序列为{4,2,4,2,5,2,5,4,3,1},替 代 符 号 序 列 为 {87,2,14,39,39,39,65,79,79,45},所 接 收 到 的 密 文 为 {15,89,61,100,79,64,90,71,3,71},根 据 置 换 符 号 序 列{4,2,4,2,5,2,5,4,3,1},对密文{15,89,61,100,79,64,90,71,3,71}进行置换操作,所形成的置换后密文为{100,61,15,89,79,64,71,71,3,90};然后,根据替代符号序列{87,2,14,39,39,39,65,79,79,45},对置换后密文{100,61,15,89,79,64,71,71,3,90}进行替代操作,所形成的替代后密文为{51,91,88,40,103,39,6,79,76,116};最后对替代后密文{51,91,88,40,103,39,6,79,76,116}进行逆置换操作,得到明文{88,40,91,51,103,
39,116,79,76,6},由此可知,解密后的明文和加密前的明文相同。
[0124] 下面一组附图是利用本发明的加解密方法对一帧图像进行加解密实验的仿真图,其中,图5A是图像加密前的效果图,图5B是图5A对应的直方图,图6A是图5A加密后的效果图,图6B是图6A对应的直方图,图7A是图6A解密后的效果图,图7B是图7A对应的直方图,应当说明的是,若图像大小为n*m,则在加密时需选取三个初始值,即三个初始密钥,其中一个用来生成替代符号序列,其共用于行元素的替代操作和列元素的替代操作,一个用来生成行置换符号序列,一个用来生成列置换符号序列。另外,若n或m为奇数,则在边界加一行或一列灰度为零的像素,使图像扩充成偶数行或列的大小。结合图5A~图7B,通过利用本发明的加解密方法对该图像进行加解密,由于置换符号序列和替代符号序列都为伪随机序列,所以,该加解密方法有良好的抗破译性。
[0125] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。