当前位置: 首页 > 专利查询>河南大学专利>正文

应用多混沌映射多动态S盒的分组密码系统技术方案

技术编号:15119484 阅读:86 留言:0更新日期:2017-04-09 18:02
本发明专利技术涉及一种应用多混沌映射多动态S盒的分组密码系统,包括子密钥产生模块、动态S盒生成模块、加密模块和解密模块,首先利用多个混沌系统产生轮循环子密钥,利用多个混沌系统生成多个动态S盒;利用加密模块对明文件进行加密,明文文件被加密后,若需要解密时利用解密模块按照与加密过程相逆的顺序对密文件解密。本发明专利技术应用多混沌映射多动态S盒的分组密码系统,使用模块化程序设计方法,大大提高了加/解密运算速度,同时便于硬件实现,可广泛应用于政府、电子商务、军事、数字银行等众多领域。

【技术实现步骤摘要】
一、
:本专利技术属于信息安全领域中的混沌数字密码设计技术,是一种应用多个离散混沌映射多动态S盒的混沌分组密码系统,具体涉及一种应用多混沌映射多动态S盒的分组密码系统。二、
技术介绍
:随着Internet技术的飞速发展,计算机网络技术正日益广泛的应用到社会各个领域,信息的安全与保密显得尤其重要。为了保证网络信息安全,国内外研究人员设计并公布了众多密码算法,现行的密码算法主要包括序列密码、分组密码、公钥密码、散列函数等。其中,分组密码,也称为块密码,它是现代密码学中的一个重要研究分支,主要由加密算法、解密算法和密钥编排算法三部分组成。分组密码因具有速度快、易于标准化和便于软硬件实现等特点而在计算机通信和信息系统安全领域中有着极其广泛的应用。混沌是非线性确定系统中由于内禀随机性而产生的外在复杂表现,是一种貌似随机的非随机运动。混沌由于其对初值敏感性、对参数敏感性、遍历性、类随机性、弱相关性等特点,非线性科学界和信息工程界普遍关注混沌理论在信息安全和保密通信等领域中的应用。近年来,研究人员提出了许多基于混沌系统的加密算法。但从密码分析角度看,大多数混沌数字密码存在着安全性不高、运算速度慢、难以在实际中应用等缺陷。本专利技术提供了一种利用多个混沌映射多个动态S盒的分组加(解)密方法和系统,该密码系统安全性高,运算速度快,便于硬件实现。三、
技术实现思路
:本专利技术目的在于克服目前技术中混沌数字密码系统安全度低、运算速度慢、难以硬件实现等缺陷,提供一种能提高混沌数字密码性能的应用多混沌映射多动态S盒的分组密码系统。技术方案:一种应用多混沌映射多动态S盒的分组密码系统,利用计算机技术、信息编码理论及数字混沌技术实现,包括子密钥产生模块、动态S盒生成模块、加密模块和解密模块,具体运行步骤如下:(1)在子密钥产生模块中,利用t个混沌系统产生轮循环子密钥,t≥2,t为整数;(2)在动态S盒生成模块中,利用q个混沌系统生成z个动态S盒,q≥2,z≥2,q、z均为整数;(3)利用加密模块对明文件进行加密,将明文文件按64位分成多个分组,从第一个分组开始,利用立方映射产生一个随机数h,根据该随机数h选择第h个S盒并利用第(1)步中子密钥模块产生的子密钥,进行轮循环加密运算;在当前的明文分组加密完成后,即可对下一个明文分组进行加密;重复这一过程,直至处理完所有明文数据分组,h≥0,h为整数;-->(4)在需要解密时利用解密模块对密文件解密,按照与加密过程相逆的顺序进行运算获得解密密文,即:从密文文件的第一个数据块开始,利用立方映射产生一个随机数h’,根据该随机数h’选择第h’个S盒并利用第(1)步中子密钥模块产生的子密钥,进行轮循环解密运算;在当前的密文块解密完成后,即可对下一个密文块进行解密;重复这一过程,直至处理完所有密文块,h’≥0,h’为整数。步骤(1)的子密钥产生模块中使用的混沌系统为四个系统参数和初始值均不相同的一维Logistic映射,利用这四个混沌映射生成两个128(16字节)位的序列ρ和η,利用序列ρ和η生成每轮循环的64位(8字节)子密钥。步骤(2)中动态S盒生成模块,设计生成z个动态S盒所使用的混沌系统分别为二维Logistic映射、Standard映射、二维超混沌映射、Henón映射,生成第m个S盒的算法步骤如下,其中1≤m≤p,1<p≤90,z≥2,m、p、z均为整数,0≤i≤749,n、k、i为自然数:ST1.将相空间划分为等长的n+1=750个区间,令0,…,n与每个区间一一对应;若某点位于区间k中,则该点的量值记为(k+1)mod 750;ST2.选取750个初始点,用(xi0,yi0)表示第i个初始点的坐标值;所有的纵坐标值yi0组成初始点集合U;利用Chebyshev映射产生一个随机数,根据该随机数选取一个二维离散混沌映射,对于任意的初始点(xi0,yi0),迭代Ni次后得到yi0的像yi′;所有初始点yi0对应的像组成像集合V;ST3.从集合U中找出具有唯一像的初始点集合Φ;选择包含Φ中256个元素的子集A,从集合V中找出A中元素对应的像的集合B;ST4.对集合A、B中的元素分别分配新的量值即[0,255]之间的整数,但集合A或B中各元素新的量值不能重复;若A中某个初始点的新量值是a,对应像的新量值是b,则记f(a)=b;据此求得的映射f一一对应,f就是S盒。步骤ST2中利用Chebyshev映射产生一个随机数,然后根据该随机数选取二维离散混沌映射。并且,选取的混沌映射不同,进行迭代的次数也不同。模块(3)负责对明文文件进行加密,首先将明文M划分成一系列长度为64位(8字节)的块,从第一个数据块开始,利用立方映射产生一个随机数,根据该随机数选择一个S盒进行加密运算。假设对每个数据块进行加密时循环轮数为r轮,加密过程为:使用轮变换函数f和第i轮循环的子密钥pi对数据块的各个字节进行异或运算,第i轮输出块是第(i+1)轮的输入(最后一轮除外)。第r轮的输出Br=xr,0,xr,1,…,xr,7即为密文块。密文块的长度也是64位,和明文块的长度相同,这一结果在网络保密通信中是非常有意义的。这里的轮变换函数f实质上就是模块(2)生成的动态S盒。当一个明文块加密完成后,即可对下一个明文块进行加密。重复上述加密过程,直至把所有的明文数据块全部处理完毕。模块(4)负责对密文文件进行解密,解密运算是加密的逆运算,只须按照与加密过程相逆的顺序进行运算即可解密密文。Jakimoski和Kocarev在文献“Differential and linear probabilities of ablock-encryption cipher”[IEEE Transactions on Circuits and Systems-I,vol.50,no.1,pp.121-123,2003]中给出了分组加密算法中函数f的微分近似概率为2-5<DPf=12/256<2-4,线性近似概率为LPf≈2-3.825。同时,该文献证明了分组加密算法循环轮数为-->11轮时,差分(线性)轨迹至少包含17个动态S盒。本专利技术选取适当的循环轮数,例如取循环轮数r=500,对于500轮循环差分轨迹至少包含(500×17)/11≈773个动态S盒,则DP≤(2-4.678)773≈2-3615,LP≤(2-3.825)773≈2-2957。据此可知,攻击者不可能构建分组加密算法的差分(线性)特征,即微分或线性分析不能够破译密文信息。此外,本文算法的密钥长度是128位,加密强度是2128,如果将该密码系统所使用的混沌系统的参数、初始值、迭代次数、S盒数目、轮循环次数r也计入密钥,则密钥空间将是十分巨大的,足以应付穷举攻击。本专利技术应用多混沌映射多动态S盒的分组密码系统,使用模块化程序设计方法,大大提高了加/解密运算速度,同时便于硬件实现,可广泛应用于政府、电子商务、军事、数字银行等众多领域。四、附图说明:图1为本专利技术的子密钥产生流程图。图2为本专利技术的加密流程图。五、具体实施方式:实施例一:参见图1、图2,图1中,四个混沌映射分别迭代1600次后产生两个128位的初始序列ρ和η,根据式(2)生成第i轮子密钥pi。图中,Ti,k表示密钥Ti的本文档来自技高网...

【技术保护点】
一种应用多混沌映射多动态S盒的分组密码系统,利用计算机技术、信息编码理论及数字混沌技术实现,其特征在于,包括子密钥产生模块、动态S盒生成模块、加密模块和解密模块,具体运行步骤如下:(1)在子密钥产生模块中,利用t个混沌系统产生轮循环子密钥,t≥2,t为整数;(2)在动态S盒生成模块中,利用q个混沌系统生成z个动态S盒,q≥2,z≥2,q、z均为整数;(3)利用加密模块对明文件进行加密,将明文文件按64位分成多个分组,从第一个分组开始,利用立方映射产生一个随机数h,根据该随机数h选择第h个S盒并利用第(1)步中子密钥模块产生的子密钥,进行轮循环加密运算;在当前的明文分组加密完成后,即可对下一个明文分组进行加密;重复这一过程,直至处理完所有明文数据分组,h≥0,h为整数;(4)在需要解密时利用解密模块对密文文件解密,按照与加密过程相逆的顺序进行运算获得解密密文,即:从密文文件的第一个数据块开始,利用立方映射产生一个随机数h’,根据该随机数h’选择第h’个S盒并利用第(1)步中子密钥模块产生的子密钥,进行轮循环解密运算;在当前的密文块解密完成后,即可对下一个密文块进行解密;重复这一过程,直至处理完所有密文块,h’≥0,h’为整数。...

【技术特征摘要】
1.一种应用多混沌映射多动态S盒的分组密码系统,利用计算机技术、信息编码理论及数字混沌技术实现,其特征在于,包括子密钥产生模块、动态S盒生成模块、加密模块和解密模块,具体运行步骤如下:(1)在子密钥产生模块中,利用t个混沌系统产生轮循环子密钥,t≥2,t为整数;(2)在动态S盒生成模块中,利用q个混沌系统生成z个动态S盒,q≥2,z≥2,q、z均为整数;(3)利用加密模块对明文件进行加密,将明文文件按64位分成多个分组,从第一个分组开始,利用立方映射产生一个随机数h,根据该随机数h选择第h个S盒并利用第(1)步中子密钥模块产生的子密钥,进行轮循环加密运算;在当前的明文分组加密完成后,即可对下一个明文分组进行加密;重复这一过程,直至处理完所有明文数据分组,h≥0,h为整数;(4)在需要解密时利用解密模块对密文文件解密,按照与加密过程相逆的顺序进行运算获得解密密文,即:从密文文件的第一个数据块开始,利用立方映射产生一个随机数h’,根据该随机数h’选择第h’个S盒并利用第(1)步中子密钥模块产生的子密钥,进行轮循环解密运算;在当前的密文块解密完成后,即可对下一个密文块进行解密;重复这一过程,直至处理完所有密文块,h’≥0,h’为整数。2.根据权利要求1所述的分组密码系统,其特征在于,步骤(1)的子密钥产生模块中使用的混沌系统为四个系统参数和初始值均不相同的一维Logistic映射,利用...

【专利技术属性】
技术研发人员:武相军路杨王红涛王慧贾培艳张济仕
申请(专利权)人:河南大学
类型:发明
国别省市:河南;41

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

1