基于Logistic混沌算法的论文题目 动态口令芯片设计
学生姓名 项智
学生学号
专业班级 09微电子1班
学院名称 电子与通信工程
指导老师 赵杰
2012年6月5日
摘 要
为了解决信息安全问题得到加密用的混沌随机数本文分析了Lo gi s ti c混沌模型提出了一种便于硬件实现的离散Lo gi s ti c混沌算法并完成了其硬件结构设计。针对混沌随机数的典型应用本文利用所述离散Lo gi s ti c混沌算法硬件电路完成了一款动态口令芯片的设计其具有安全性好性价比高速度快等优点其应用价值广。
关键字 Logistic FPGA动态口令混沌
Abstract
In order to sove the problem of information security,and get the chaotic randomnumbers for encryption,this paper analyzed the Logistic random chaos model and gave akind of discrete Logistic chaos algorithm which is easy for hardware realization,andcompleted its hardware structure design.The dynamic password chip is a typicalapplication of random number in chaos,and this paper used the discrete Logistic chaosalgorithm mentioned above,and completed a dynamic password chip design,it has theadvantages of good security,low cost,high speed,and extensive application value.Keywords:Logistic;FPGA;dynamic pas sword; chaotic
目 录
一、 引言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
二、 方案论证. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
三、 Logistic混沌算法设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
(一) Logistic混沌模型分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
(二) 离散化的Logistic混沌算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
(三) Logistic混沌算法系统设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
(四) Logistic混沌算法模块设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
四、 动态口令芯片设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
一动态口令芯片的设计方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
二动态口令芯片的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
1.动态口令芯片硬件实现平台. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
2.软件设计和仿真平台. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
3.基于FPGA的硬件电路模块设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
五、 动态口令芯片的效果分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
六、 结论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
七、 参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
八、 附录. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
(一) 动态口令芯片的电路图. . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
1.动态口令芯片的整体结构图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
2 Logistic核心算法模块结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
3.基于FPGA设计的顶层电路图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
(二) 基于FPGA设计的动态口令芯片各个子模块的设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
1. count模块设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
2.求补码模块(minu s)设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
3.mux2_1模块代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48
4.diedai模块设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49
5. enable模块设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
6.yin gs h e模块的设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53
7.xiaodou模块的设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
8.key模块设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
9.deal模块的设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
10.dis_choose模块的设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
11.fenpin模块的设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68
12.display模块的设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70
一、引言
随着现代信息技术的不断发展信息安全技术变得越来越重要。为了使信息在的过程中不被窃取通常要采用加密技术[1]。比较通用的加密技术中序列密码是一中和非常典型有效的加密方法[2] 其采用伪随机数序列和需要加密的内容进行运算得到加密后的内容。混沌现象是一种确定性的类似随机的过程这种过程既非周期又不收敛并且对初始值有及其敏感的依赖性。从时域上看混沌映射得到的序列类似于随机序列相关性较弱具有很好的类白噪声特性 因此可以用来产生伪随机信号或伪随机码[3]。 Lo gi s ti c映射是一种非常简单却被广泛应用的经典混沌映射[4-5]。
动态口令技术是一种非常有效的身份认证&加密技术[6-7]。通常的动态口令技术采用时间同步的认证机制[8] 常用的算法是使用Hash函数的MDS算法[9]。该算法具有计算代价大芯片成本高专利授权费贵等缺陷。本文采用Lo gi s ti c混沌模型设计出一套可以用硬件实现的算法并利用该算法实现了一个动态口令IC具有安全性好性价比高速度快等优点应用价值广泛。本设计的实现平台采用FPGA FPGA技术应用逐渐在中国得以推广其广泛于数字通信技术计算机应用技术 自动化控制等领域。 FPGA的最新发展主要包括功能扩展和现场可编程技术在原来离线的串/并行格式编
程的基础上创新产生了所谓的在线式可编程技术ISP和动态可重配技术或称cache logic 。使FPGA器件不仅仅是现场可编程而且可用户在线可编程动态容量可扩展从而进一步提高了FPGA技术的应用灵活性降低了应用系统的实现成本[10]。
二、方案论证
方案一用CPLD去实现该动态口令牌芯片设计
方案二用FPGA去实现该动态口令牌芯片设计
方案比较尽管CPLD和FPGA都是可编程的ASIC芯片但是FPGA相比CPLD而言更适合完成时序逻辑 同时在编程上 FPGA比CPLD具有更大的灵活性支持在线可编程再者FPGA相比CPLD集成度要高而且FPGA内部触发器资源丰富在时序要求较高的场合用FPGA去实现更容易达到时序收敛基于上述比较最终方案选择方案二。
三、 Lo gistic混沌算法设计
(一)Lo gi s ti c混沌模型分析
现代混沌学研究起源于20世纪60年代混沌是一种特殊的动力学行为其会在该动力学系统中表现出一种确定性的类随机的过程。这种过程非周期不收敛但是有边界。所以这样的一种过程只要其初始值有微小的变化就会形成完全不同的两组序列所以利用混沌现象的天然随机过程可以得到很好的随机序列从而应用到加密领域达到很好的加密效果。
Logistic是混沌模型中比较经典的一种其起源于虫口模型worm numbermodel[11]
Xk+1=aXk 1
1式中Xk+1为下一代虫子的数量而Xk为上一代虫子的数量这是个理想的情况但是实际中由于虫子的食物问题生存空间问题天灾问题事实上两代虫子之间的数量可以表示为如下式
Xk+1=aXk 1-Xk 2
根据研究表明[12] 当a和X k满足关系 3.5699a4且0<Xk<1时虫子的数量在代与代之间处于混沌变化下一代虫子的数量和这当代的数量之间的关系非收敛变化具有很强的随机性无法从动力学行为[13]规律找到破解密文的办法。
可见(x)不依赖于其初始值的不同而不同所以其遍历性等同于零均值白噪声[14] 所以在保证初始值未知的情况下这样的随机序列与利用的物理效应得到的随机序列在统计意义上是一致的。
(二)离散化的Lo gi s ti c混沌算法
根据前面对Lo gi s ti c混沌模型的分析可知 Lo gi s ti c映射关系中虫子的数量在代与代之间处于混沌变化可以把每一代虫子的数量作为一个数据而随着虫子的繁衍每一代虫子的数量的序列可以形成一个随机性良好的随机序列。
而Lo gi s ti c混沌模型本身的数学关系的定义域但是由于硬件计算需要
使用离散化的方式 因此需要把Lo gi s ti c混沌模型中的映射关系的定义域从实数域映射到整数域。首先定义表达式2中的a为序列选择因子通常也称之为系统的密码。设离散化Lo gi s ti c混沌算法中的序列选择因子为X。而X的取值范围为[0,N],其中N为自然数显然这样的序列因子是不能进行计算的设x是经过变换的序列选择因子且满足3.56699x4可以证明X,x满足表达式4 b*N*xint(b*N*3.5699)int(X*b*0.4301)x
其中 “int ”代表对“”内的数据进行取整数运算 b为计算精度影响因子取值为自然数。为了保证四位有效数字的计算精度N应该不小于自然104 b至少取值为1。这样在二进制计算中可以令N为一个32位二进制数。另外可以较容易证明表达式5成立。int(X*0
为了把浮点运算转换为整数运算并且适用于硬件电路实现可以把表达式5和N=232-1 b=1代入4 经过一系列数学推导得到如下式子6 x
设最后产生的随机序列为SK并且假设SK的取值范围为[0,M]。而满足虫口关系表达式2的序列为sk显然有sk
由于x和sk满足虫口模型 因此将6和7代入2 经过一定的数学推导过程得到如下式子8
Sk
在本文中取值M2161 并且由于M216 ,N232 ,代入上述表达式
8可得
表达式9中除法运算均为整数运算 因此9是一个纯整数域上的迭代运算表达式称之为离散化的Lo gi s ti c混沌算法所生成的Sk序列就是一个良好的混沌随机数序列。其中X为上文所述的序列选择因子式子
15332603705int(X7046/214)将定义在实数域中的序列选择因子X映射到整数域中。 Sk为混沌随机序列式子216-Sk-1为求混沌序列Sk的补码。1/248为将产生的混沌随机序列向右移48位得到新的混沌随机序列。
(三)Logi s tic混沌算法系统设计
为了实现该Lo gi s ti c混沌算法根据表达式9 设计出如图1所示的Logi s tic混沌算法系统结构
图1.Logi s ti c混沌算法系统结构
由于产生S k序列的Lo gi s tic混沌算法是一个反复迭代的过程S k+1的产生依赖于Sk的取值。因此称这个运算为“Lo gi s tic迭代运算”。图1中的“Lo gi s ti c
OneTechCloud(易科云)是一家主打CN2等高端线路的VPS主机商家,成立于2019年,提供的产品包括VPS主机和独立服务器租用等,数据中心可选美国洛杉矶、中国香港、日本等,有CN2 GIA线路、AS9929、高防、原生IP等。目前商家针对全场VPS主机提供月付9折,季付8折优惠码,优惠后香港VPS最低季付64元起(≈21.3元/月),美国洛杉矶CN2 GIA线路+20Gbps防御型VPS...
阿里云香港配置图提速啦是成立于2012年的十分老牌的一个商家这次给大家评测的是 阿里云香港 16核32G 20M 这款产品,单单说价格上就是十分的离谱原价8631元/月的现价只要 999元 而且还有个8折循环优惠。废话不多说直接进入正题。优惠时间 2021年8月20日-2021年9月20日 优惠码 wn789 8折优惠阿里云香港BGP专线 16核32G 10M带宽 优惠购买 399元购买链接阿里云...
公司介绍成都随风云科技有限公司成立于2021年,是国内领先的互联网业务平台服务提供商。公司专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前公司研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务,拥有丰富的国内BGP、双线高防、香港等优质的IDC资源。公司一直秉承”以人为本、客户为尊、永续创新&...