CN101814985A - 应用多混沌映射多动态s盒的分组密码系统 - Google Patents

应用多混沌映射多动态s盒的分组密码系统 Download PDF

Info

Publication number
CN101814985A
CN101814985A CN201019097007A CN201019097007A CN101814985A CN 101814985 A CN101814985 A CN 101814985A CN 201019097007 A CN201019097007 A CN 201019097007A CN 201019097007 A CN201019097007 A CN 201019097007A CN 101814985 A CN101814985 A CN 101814985A
Authority
CN
China
Prior art keywords
box
mapping
dynamic
utilize
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201019097007A
Other languages
English (en)
Other versions
CN101814985B (zh
Inventor
武相军
路杨
王红涛
王慧
贾培艳
张济仕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Henan University
Original Assignee
Henan University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Henan University filed Critical Henan University
Priority to CN2010190970079A priority Critical patent/CN101814985B/zh
Publication of CN101814985A publication Critical patent/CN101814985A/zh
Application granted granted Critical
Publication of CN101814985B publication Critical patent/CN101814985B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

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

Description

应用多混沌映射多动态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的第k个字节,T0=ρ,Ti,16≡Ti,0,Ti,17≡Ti,1,f0=η0,η0为128位初始序列η的第一个字节(令η=η0η1η2…η16),⊕表示异或运算,函数
Figure GSA00000033940400051
表示将密钥Ti的右边64位分配给轮子密钥pi
图2中,明文块Bi=xi-1,0,xi-1,1,…,xi-1,7,pi-1,0,pi-1,1,…,pi-1,7是第i轮循环的子密钥pi-1的8个字节,第i轮输出块Bi′=xi,0,xi,1,…,xi,7(它为第(i+1)轮的输入)。
本实施例提供了一种应用多个离散混沌映射多动态S盒的混沌分组密码系统,该密码系统共包括四个模块,下面对每一模块的实施方式作进一步的详细说明。
子密钥产生模块方式:
本模块中使用的混沌系统为下列四个一维离散Logistic映射:
x n + 1 1 = λ 1 x n 1 ( 1 - x n 1 ) , λ 1 = 3.6 x n + 1 2 = λ 2 x n 2 ( 1 - x n 2 ) , λ 2 = 3.75 x n + 1 3 = λ 3 x n 3 ( 1 - x n 3 ) , λ 3 = 3.9 x n + 1 4 = λ 4 x n 4 ( 1 - x n 4 ) , λ 4 = 4 , - - - ( 1 )
式(1)中,xn i(i=1,2,3,4)表示第i个Logistic映射迭代n次后的值, x 0 i ∈ ( 0,1 ) . 为消除初始值的影响,将上述各映射分别迭代200次,得到x200 i。以x200 i作为初始值,将上述各映射分别迭代1600次。设第i个映射的第j次迭代值为xj i,用二进制形式表示为 x j i = 0 . b j 1 i b j 2 i · · · b jn i · · · , bjn i表示xj i的第n个二进制位。从xj i(i=1,2,3,4)中抽取第4、第5二进制位上的数值,得到一个8位的序列bj4 1bj4 2bj4 3bj4 4bj5 1bj5 2bj5 3bj5 4,以类似的方式总共抽取16次得到两个128位的序列:
ρ=B100,4B100,5B200,4B200,5B300,4B300,5…B1600,4B1600,5
η=B50,4B50,5B150,4B150,5B250,4B250,5…B1550,4B1550,5
这里, B j , 4 = b j 4 1 b j 4 2 b j 4 3 b j 4 4 , B j , 5 = b j 5 1 b j 5 2 b j 5 3 b j 5 4 .
本分组密码系统中,假设轮循环次数为r,执行第i轮循环的函数f依赖于第i轮子密钥pi的值,子密钥长度是64位。第i轮循环子密钥pi的产生方法为:
Figure GSA00000033940400065
式(2)中,i=1,…,r,k=1,…,16,Ti,k表示密钥Ti的第k个字节,T0=ρ,Ti,16≡Ti,0,Ti,17≡Ti,1,f0=η0,η0为128位序列η的第一个字节(令η=η0η1η2…η16)。这里,函数
Figure GSA00000033940400066
表示将密钥Ti的右边64位分配给轮子密钥pi
动态S盒生成模块方式:
模块(2)中设计生成多个动态S盒所选用的混沌映射如下:
二维Logistic映射: x n + 1 = x n + h ( x n - x n 2 + y n ) y n + 1 = y n + h ( y n - y n 2 + x n ) , ( h = 0.65 ) ;
Standard映射: x n + 1 = x n + k sin y n y n + 1 = y n + x n + 1 , ( k = 3 ) ;
二维超混沌映射: x n + 1 = ay n 2 y n + 1 = b + cx n + dy n , ( a = 1.3 , b = - 1.05 , c = 1.15 , d = - 0.2 ) ;
Henón映射: x n + 1 = 1 - gx n 2 + y n y n + 1 = σx n , ( g = 1.4 , σ = 0.3 ) .
生成第m(1≤m≤t,1<t≤90)个S盒的算法步骤如下:
ST1.将相空间划分为等长的750个区间,令0,1,2,…,749与每个区间一一对应。若某点位于区间k中,则记该点的量值为(k+1)mod 750。
ST2.选取750个初始点,用(xi0,yi0)表示第i(0≤i≤749)个初始点的坐标值,所有的纵坐标值yi0(0≤i≤749)构成初始点集合U。根据Chebyshev映射产生一个随机数,Chebyshev映射定义如下:
xn+1=cos(σarccos(xn)),σ=2.5,xn∈[-1,1]。
利用Chebyshev映射产生随机数的具体方法是:任意选取初始值x0,将Chebyshev映射迭代N次后得到xN,然后计算Floor(10*|xN|)mod 4的结果即为所求,函数Floor(x*)表示取不大于x*的最大整数。然后根据该随机数按照如下规则选择混沌映射和迭代次数:若随机数为0,选择二维Logistic映射,迭代1500次;若随机数为1,选择Standard映射,迭代2000次;若随机数为2,选择二维超混沌映射,迭代2300次;若随机数为3,选择Henón映射,迭代2800次。对于任意的初始点(xi0,yi0),经过迭代Ni次后得到yi0的像yi′,将所有初始点yi0(0≤i≤749)对应的像组成像集合V。显然,集合U,V中的元素个数均为750。
ST3.从集合U中找出具有唯一像的初始点集合Φ,选择包含Φ中256个不同元素的子集A,从集合V中找出A中元素对应的像的集合B。
ST4.对集合A、B中的元素分别分配新的量值([0,255]之间的整数),但集合A(B)中各元素新的量值不能出现相同值。若A中某个元素的新量值是a,对应像的新量值是b,则记f(a)=b。据此求得的映射f一一对应,f就是S盒。
步骤ST1中选取区间个数的方法为:若设混沌映射具有均匀分布、各态遍历的不变测度,设步骤ST1中划分的区间个数为n+1,根据文献“Chaos andcryptography:block encryption ciphers based on chaotic maps”[IEEE Transactionson Circuits and Systems-I,vol.48,no.2,pp.163-168,2001],则给定像Ij刚好是某个初始点的像的概率为:
P ( I j ) = Σ i = 1 n 1 n ( n n + 1 ) n = ( n n + 1 ) n ,
并有limn→∞P(Ij)=1/e。因此当n较大时,对应于某初始点的像的概率为1/e。若要构造映射f:{0,…,j-1}→{0,…,j-1},对于较大的n值,区间的数量应略大于je。当j=256时,划分区间的数量应略大于256e≈696。在本分组密码系统中,选取区间个数为750。
按照以上算法,可以生成多个不同的动态S盒。生成多个动态S盒的算法源代码如下:
int func[50][256];//动态S盒,这里假设生成50个S-box
double comp(double startpointx,double startpointy)//计算迭代N次后的值
{
    int rndNum;
    double xx,x,y,z;
    //利用Chebyshev映射产生随机数
    z=startpointx;
    for(i=0;i<1200;i++)
    {
        z=cos(2.5*arccos(z));
    }
    rndNum=floor(abs(z))%4;
    x=startpointx;
    y=startpointy;
    Switch(rndNum)
    {
        Case 0:
          for(i=0;i<1500;i++)//选择二维Logistic映射迭代
          {
            xx=x;
            x=x+0.65*(x-x*x+y);
            y=y+0.65*(y-y*y+xx);
          }
          break;
        Case 1:
           for(i=0;i<2000;i++)//选择Standard映射迭代
          {
            x=x+3*sin(y);
            y=y+x;
          }
          break;
        Case 2:
          for(i=0;i<2300;i++)//选择二维超混沌映射迭代
         {
            xx=x;
            x=1.3*y*y;
            y=-1.05+1.15*xx-0.2*y;
         }
         break;
       Case 3:
          for(i=0;i<2800;i++)//选择Henón映射迭代
        {
            xx=x;
            x=1-1.4*x*x+y;
            y=0.3*x;
        }
        break;
    }
    return y;
}
//生成多动态S盒函数Sbox()
void Sbox()
{
    int i,j,k,sno,min,num,s;
    int magnitude[750],flag[750],SetA[256],SetB[256],refunc[256];
    double d,startpointx,startpointy,image;
    double startarray[750],imagearray[750];
    d=2.56/750;
    for(sno=0;sno<50;sno++)
    {
        startpointx=-(0.02+sno*0.02)*d;
        startpointy=-(0.05+sno*0.05)*d;
        s=0;
        for(i=0;i<750;i++)
        {
            flag[i]=0;
            magnitude[i]=0;
            startarray[i]=0;
            imagearray[i]=0;
        }
        for(i=0;i<256;i++)
        {
            SetA[i]=0;
            SetB[i]=0;
            refunc[i]=0;
            func[sno][i]=0;
        }
/*********选择初始点,并随机选择混沌映射计算其对应的像值************/
        for(i=0;i<750;i++)
        {
            Startpointx=startpointx+d;
            Startpointy=startpointy+2*d;
            startarray[i]=startpointy;
            image=comp(startpointx,startpointy);
            imagearray[i]=image;
        }
/************选择具有唯一像的初始点集合A,包含元素256个************/
        for(j=0;j<750;j++)
        {
            magnitude[j]=floor(imagearray[j]/d);
            if(flag[magnitude[j]]==0)
            {
                if(s<256)
                {
                    SetA[s]=j;
                    s++;
                    flag[magnitude[j]]=1;
                }
                else
                    goto OutputB;
            }
        }
/************生成与集合A相对应的像集合B,包含元素256个************/
OutputB:
        for(k=0;k<256;k++)
        {
            i=SetA[k];
            SetB[k]=magnitude[i];
        }
        for(i=0;i<256;i++)
        {
            min=750;
            for(j=0;j<256;j++)
            {
                if(SetB[j]<min)
                {
                    min=SetB[j];
                    num=j;
                }
            }
            subsetb[num]=750;
            refunc[i]=num;
        }
/********对集合A、B中的元素重新分配量值,构造一一对应f,即S盒********/
        for(i=0;i<256;i++)
        {
            for(j=0;j<256;j++)
            {
                if(refunc[j]==i)
                {
                    func[sno][i]=j;
                    break;
                }
            }
        }
    }
}
加密模块实施方式:
将明文M划分成一系列长度为64位的块:
令xi,0,xi,1,…,xi,7表示块Bi的8个字节,即Bi=xi,0,xi,1,…,xi,7。使用轮变换函数f对每一数据块依次进行加密,假设每个数据块加密时循环轮数为r轮,则对块Bi的加密过程可用下式描述:
x i , 2 = x i - 1,1 ⊕ f 0 x i , 3 = x i - 1,2 ⊕ f 1 · · · x i , 0 = x i - 1,7 ⊕ f 6 x i , 1 = x i - 1,0 ⊕ f 7 , - - - ( 3 )
式(3)中,i=1,…,r,f0=pi,0,函数fj(1≤j≤7)定义如下:
fj=f[xi-1,1⊕…⊕xi-1,j⊕pi-1,j],                    (4)
式(4)中,函数f:χ→χ(χ={0,1,2,…,255})就是模块(2)生成的动态S盒,pi,0,pi,1,…,pi,7是第i轮循环的子密钥pi的8个字节。从式(3)可知,第i轮输出块Bi=xi,0,xi,1,…,xi,7是第(i+1)轮的输入(最后一轮除外)。因此,第r轮(最后一轮)的输出Br=xr,0,xr,1,…,xr,7即为密文块。密文块的长度也是64位(8个字节),和明文块的长度相同。以往很多混沌密码算法的密文文件大小为明文文件大小的2倍,进行网络传输时将消耗大量的时间,这很不利于大文件的网络传输,而本发明刚好可克服这一缺点。使用上述加密算法从明文文件的第一个数据块开始,利用立方映射产生一个随机数,根据该随机数选择一个S盒进行加密运算。当一个明文块加密完成后,即可对下一个明文块进行加密。重复上述加密过程,直至把所有的明文数据块全部处理完毕。
立方映射定义如下:
x n + 1 = θx n ( 1 - x n 2 ) , θ = 2.59 .
假设共有N个S盒,利用立方映射产生随机数的具体方法是:任意选取初始值x0,迭代k次后得到像xk,然后计算Ceil(100*|xk|)mod N就是所要求的随机数,函数Ceil(x*)表示取大于x*的最小整数。
解密模块实施方式:
解密过程与加密过程类似,只须按照与加密过程相逆的顺序进行运算即可。从密文文件的第一个数据块开始,利用立方映射产生一个随机数(随机数产生方式同上),根据该随机数选择一个S盒进行解密运算。令密文块Ci=zi,0,zi,1,…,zi,7,zi,0,zi,1,…,zi,7是块Ci的8个字节。对密文块Ci的解密过程可用下式描述:
zi-1,k=zi,k+1⊕fk-1[zi,1,…,zi,k-1,pi,k-1],                 (5)
式(5)中,k=1,…,8,f0=pi,0,zi,8≡zi,0,zi,9≡zi,1,函数fk(1≤k≤7)定义同式(4),pi,0,pi,1,…,pi,7是第i轮循环的子密钥pi的8个字节。与加密过程类似,第i轮输出块Ci=zi,0,zi,1,…,zi,7是第(i+1)轮的输入,第r轮(最后一轮)的输出Cr=zr,0,zr,1,…,zr,7即为明文块。当一个密文块解密完成后,即可对下一个密文块进行解密。重复上述解密过程,直至把所有的密文数据块全部处理完毕。

Claims (3)

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映射,利用这四个混沌映射生成两个128位的序列ρ和η,利用序列ρ和η生成每轮循环的64位子密钥。
3.根据权利要求1所述的分组密码系统,其特征在于,步骤(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盒。
CN2010190970079A 2010-02-08 2010-02-08 应用多混沌映射多动态s盒的分组密码系统 Expired - Fee Related CN101814985B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010190970079A CN101814985B (zh) 2010-02-08 2010-02-08 应用多混沌映射多动态s盒的分组密码系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010190970079A CN101814985B (zh) 2010-02-08 2010-02-08 应用多混沌映射多动态s盒的分组密码系统

Publications (2)

Publication Number Publication Date
CN101814985A true CN101814985A (zh) 2010-08-25
CN101814985B CN101814985B (zh) 2011-05-04

Family

ID=42622114

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010190970079A Expired - Fee Related CN101814985B (zh) 2010-02-08 2010-02-08 应用多混沌映射多动态s盒的分组密码系统

Country Status (1)

Country Link
CN (1) CN101814985B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103856320A (zh) * 2014-03-17 2014-06-11 重庆科技学院 一种基于多级混沌系统的动态s盒构造方法
CN104683096A (zh) * 2013-11-29 2015-06-03 中国航天科工集团第三研究院第八三五七研究所 动态s盒变换方法及系统
CN106411499A (zh) * 2016-06-06 2017-02-15 清华大学 一种rc4硬件电路掩码防护方法及系统
CN108133450A (zh) * 2016-12-01 2018-06-08 钦州市晶通科技有限公司 一种基于混合反馈的混沌图像加密方法
CN108833733A (zh) * 2018-06-04 2018-11-16 河南师范大学 一种基于混沌s盒的图像加密算法的解密方法
CN109412784A (zh) * 2018-10-17 2019-03-01 哈尔滨工业大学(威海) 一种基于s盒的wsn动态复合混沌加密方法
CN110138859A (zh) * 2019-05-16 2019-08-16 广州温芯云科技有限公司 一种基于物联网体温贴的人体体温实时监测系统
CN111368316A (zh) * 2020-03-02 2020-07-03 中国邮政储蓄银行股份有限公司 文件加解密的方法及装置
CN113691364A (zh) * 2021-08-31 2021-11-23 衡阳师范学院 一种基于位片技术的动态s盒分组密码的加密及解密方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2374258B (en) * 2001-04-05 2004-03-31 Ibm Method and apparatus for encryption of data
CN101604439A (zh) * 2008-06-13 2009-12-16 西北工业大学 一种基于多混沌系统的彩色图像加密方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104683096A (zh) * 2013-11-29 2015-06-03 中国航天科工集团第三研究院第八三五七研究所 动态s盒变换方法及系统
CN104683096B (zh) * 2013-11-29 2017-12-22 中国航天科工集团第三研究院第八三五七研究所 动态s盒变换方法及系统
CN103856320A (zh) * 2014-03-17 2014-06-11 重庆科技学院 一种基于多级混沌系统的动态s盒构造方法
CN103856320B (zh) * 2014-03-17 2017-02-15 重庆科技学院 一种基于多级混沌系统的动态s盒构造方法
CN106411499A (zh) * 2016-06-06 2017-02-15 清华大学 一种rc4硬件电路掩码防护方法及系统
CN108133450A (zh) * 2016-12-01 2018-06-08 钦州市晶通科技有限公司 一种基于混合反馈的混沌图像加密方法
CN108833733A (zh) * 2018-06-04 2018-11-16 河南师范大学 一种基于混沌s盒的图像加密算法的解密方法
CN108833733B (zh) * 2018-06-04 2019-08-16 河南师范大学 一种基于混沌s盒的图像加密算法的解密方法
CN109412784A (zh) * 2018-10-17 2019-03-01 哈尔滨工业大学(威海) 一种基于s盒的wsn动态复合混沌加密方法
CN110138859A (zh) * 2019-05-16 2019-08-16 广州温芯云科技有限公司 一种基于物联网体温贴的人体体温实时监测系统
CN111368316A (zh) * 2020-03-02 2020-07-03 中国邮政储蓄银行股份有限公司 文件加解密的方法及装置
CN111368316B (zh) * 2020-03-02 2022-08-09 中国邮政储蓄银行股份有限公司 文件加解密的方法及装置
CN113691364A (zh) * 2021-08-31 2021-11-23 衡阳师范学院 一种基于位片技术的动态s盒分组密码的加密及解密方法
CN113691364B (zh) * 2021-08-31 2024-02-09 衡阳师范学院 一种基于位片技术的动态s盒分组密码的加密及解密方法

Also Published As

Publication number Publication date
CN101814985B (zh) 2011-05-04

Similar Documents

Publication Publication Date Title
CN101814985B (zh) 应用多混沌映射多动态s盒的分组密码系统
CN1993922B (zh) 流密码组合系统和方法
CN101076968B (zh) 使用拟群的密码原语、差错编码和伪随机数改进方法
CN102263636B (zh) 一种融合神经网络与混沌映射的流密码密钥控制方法
CN107147487A (zh) 对称密钥随机分组密码
CN109981249B (zh) 基于拉链式动态散列和nlfsr的加密解密方法及装置
JP2008513811A (ja) 計算変換の方法及びシステム
CN103780382A (zh) 一种基于超球面的多变量公钥加密/解密系统及方法
Gafsi et al. High securing cryptography system for digital image transmission
Liu et al. Chaos-based color image encryption using one-time keys and Choquet fuzzy integral
CN103346875A (zh) 混沌保密通信系统中数字混沌密码的产生方法
Najm et al. A New WoT Cryptography Algorithm Based on GOST and Novel 5d Chaotic System
CN101179375A (zh) 基于混沌算法的网络数据加密卡
CN104601323B (zh) 基于bdd解决社会主义百万富翁问题的方法
CN103220130A (zh) 数字混沌保密通信的加密及解密方法
Kapalova et al. DEVELOPMENT OF A NEW LIGHTWEIGHT ENCRYPTION ALGORITHM.
Abidi et al. Proving chaotic behavior of cbc mode of operation
Cui et al. A new image encryption algorithm based on DNA dynamic encoding and hyper-chaotic system
Kun et al. An improved AES algorithm based on chaos
CN103297221B (zh) 基于数字混沌编码算法的混沌保密通信系统
Grozov et al. Construction of a cryptographically secure pseudorandom sequence generator based on the blender algorithm
KR101076747B1 (ko) 스트림 모듈의 계층적 트리 구조를 통한 무작위 접근이 가능한 암호화/복호화 방법 및 장치
Salman et al. SMART CLOUD SECURITY USING HYBRID ENCRYPTION ALGORITHMS WITH 4-D CHAOTIC KEY
CN114422130B (zh) 一种基于量子幂函数混淆的量子加密方法
Panda et al. Equivalence of DES and AES algorithm with cellular automata

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110504

Termination date: 20140208