混沌置换网络的设计及其硬件实现
发布时间:2008/5/27 0:00:00 访问次数:684
     索 英 陈 慧 袁赣南
    
     来源:《电子技术应用》
     摘要:利用logistic映射迭代产生的混沌序列作为二维置换网络的置换地址,构造二维置换网络对明文进行置换加密。同时提出了一种logistic混沌映射的整数实现方法,给出了它的fpga实现。并通过硬件装置实现了logistic映射的混沌二维置乱网络。
    
    
     关键词:logistic映射
     混沌序列 置换网络
     在密码学研究中,置换网络起着中心作用,明文字母之间的双射变换可以由一个输入和输出字母相同的置换网络实现。一个置换网络可看作是有n个多输入和n个多输出变量的黑盒子,其每个输出变量都是n个输入的布尔函数,它的好坏直接影响到分组密码的抗破译性。置换网络的研究涉及电话交换、开关理论和密码学多个领域[1]。密码学中,使用置换来进行数据变换,主要有两种作用,其一是对数据内容作不可预测的替换,其二是改变数据在数据序列中的位置,即随机换位。对于第二种置换网络也称为置乱网络,本文主要研究一种二维混沌置乱方法来对数据进行换位加密。
     混沌现象是非线性动力系统中一种确定性的类随机过程,混沌信号具有初始值的高度敏感性、不可预测性,并具有遍历性[2,3]等特点。因此,特别适合于混沌保密通信。本文将logistic映射生成的混沌序列引入置换网络,它可以作为理想的置换网络地址产生器[4]。
     fgpa(现场可编程门阵列)是由掩膜可编程门阵列pld演变而来的,并将二者的特性结合在一起,使fpga既有掩膜可编程门阵列的高逻辑密度和通用性,又有pld的可编程性。fpga技术的发展使得单个芯片上集成的逻辑门数越来越多,其实现的功能越来越复杂。它以编程方便、集成度高、速度快等特点受到设计人员的青睐。人们可以通过硬件编程的方法设计和开发asic(专用集成电路)芯片,极大地提高了芯片的研制效率、降低了开发费用。本文用它来作为混沌序列发生器,产生置换网络的置换地址。
     1 logistic映射及其fpga实现
     logistic映射由下式定义:
     x(n+1)=μxn(1-xn) 0<μ≤4
     0<x<1 (1)
     x(n+1)=4xn(1-xn)
     0<x<1 (2)
     logistic映射的输入和输出都分布在(0,1)上,可以用概率统计方法定量分析其序列的特性,schuster
     h.g证明了[5]式(2)产生的混沌序列{xk:k=0,1,2…}的概率分布密度函数ρ(x)如下式所示:
    
    
    
    
    
     从式(3)可以看出,logistic映射生成的混沌序列具有遍历性,同时它还具有δ-like型自相关函数和零的互相关函数[6],因而可以作为良好的置换网络地址产生器。
     对于式(2)所表示的logistic混沌映射,如果用浮点运算,计算的精度与产生混沌序列的周期长度有以下近似关系:
     l(n)=2(log2n+2) (4)
     从式(4)可以看出如果运算精度比较小,运算结果将很快脱离混沌态,但运算精度过大又会造成运算时间过长、使用资源较多,不利于硬件电路的实现。这里提出一种logistic混沌映射的整数实现方法,在降低运算精度的情况下,可以使混沌序列仍保持混沌态。下面在给出logistic混沌映射整数实现方法的基础上,给出了它的fpga实现方法。
     logistic映射的输入和输出都分布在区间(0,1)上,把区间上的小数x写成精度l的二进制小数形式:
    
    
    
    
     索 英 陈 慧 袁赣南
    
     来源:《电子技术应用》
     摘要:利用logistic映射迭代产生的混沌序列作为二维置换网络的置换地址,构造二维置换网络对明文进行置换加密。同时提出了一种logistic混沌映射的整数实现方法,给出了它的fpga实现。并通过硬件装置实现了logistic映射的混沌二维置乱网络。
    
    
     关键词:logistic映射
     混沌序列 置换网络
     在密码学研究中,置换网络起着中心作用,明文字母之间的双射变换可以由一个输入和输出字母相同的置换网络实现。一个置换网络可看作是有n个多输入和n个多输出变量的黑盒子,其每个输出变量都是n个输入的布尔函数,它的好坏直接影响到分组密码的抗破译性。置换网络的研究涉及电话交换、开关理论和密码学多个领域[1]。密码学中,使用置换来进行数据变换,主要有两种作用,其一是对数据内容作不可预测的替换,其二是改变数据在数据序列中的位置,即随机换位。对于第二种置换网络也称为置乱网络,本文主要研究一种二维混沌置乱方法来对数据进行换位加密。
     混沌现象是非线性动力系统中一种确定性的类随机过程,混沌信号具有初始值的高度敏感性、不可预测性,并具有遍历性[2,3]等特点。因此,特别适合于混沌保密通信。本文将logistic映射生成的混沌序列引入置换网络,它可以作为理想的置换网络地址产生器[4]。
     fgpa(现场可编程门阵列)是由掩膜可编程门阵列pld演变而来的,并将二者的特性结合在一起,使fpga既有掩膜可编程门阵列的高逻辑密度和通用性,又有pld的可编程性。fpga技术的发展使得单个芯片上集成的逻辑门数越来越多,其实现的功能越来越复杂。它以编程方便、集成度高、速度快等特点受到设计人员的青睐。人们可以通过硬件编程的方法设计和开发asic(专用集成电路)芯片,极大地提高了芯片的研制效率、降低了开发费用。本文用它来作为混沌序列发生器,产生置换网络的置换地址。
     1 logistic映射及其fpga实现
     logistic映射由下式定义:
     x(n+1)=μxn(1-xn) 0<μ≤4
     0<x<1 (1)
     x(n+1)=4xn(1-xn)
     0<x<1 (2)
     logistic映射的输入和输出都分布在(0,1)上,可以用概率统计方法定量分析其序列的特性,schuster
     h.g证明了[5]式(2)产生的混沌序列{xk:k=0,1,2…}的概率分布密度函数ρ(x)如下式所示:
    
    
    
    
    
     从式(3)可以看出,logistic映射生成的混沌序列具有遍历性,同时它还具有δ-like型自相关函数和零的互相关函数[6],因而可以作为良好的置换网络地址产生器。
     对于式(2)所表示的logistic混沌映射,如果用浮点运算,计算的精度与产生混沌序列的周期长度有以下近似关系:
     l(n)=2(log2n+2) (4)
     从式(4)可以看出如果运算精度比较小,运算结果将很快脱离混沌态,但运算精度过大又会造成运算时间过长、使用资源较多,不利于硬件电路的实现。这里提出一种logistic混沌映射的整数实现方法,在降低运算精度的情况下,可以使混沌序列仍保持混沌态。下面在给出logistic混沌映射整数实现方法的基础上,给出了它的fpga实现方法。
     logistic映射的输入和输出都分布在区间(0,1)上,把区间上的小数x写成精度l的二进制小数形式: