CN102135871A - 利用混沌原理产生随机数的装置及其动态口令牌 - Google Patents

利用混沌原理产生随机数的装置及其动态口令牌 Download PDF

Info

Publication number
CN102135871A
CN102135871A CN 201110076888 CN201110076888A CN102135871A CN 102135871 A CN102135871 A CN 102135871A CN 201110076888 CN201110076888 CN 201110076888 CN 201110076888 A CN201110076888 A CN 201110076888A CN 102135871 A CN102135871 A CN 102135871A
Authority
CN
China
Prior art keywords
module
random number
password
interative computation
output
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
CN 201110076888
Other languages
English (en)
Other versions
CN102135871B (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.)
Shenzhen Polytechnic
Original Assignee
Shenzhen Polytechnic
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 Shenzhen Polytechnic filed Critical Shenzhen Polytechnic
Priority to CN 201110076888 priority Critical patent/CN102135871B/zh
Publication of CN102135871A publication Critical patent/CN102135871A/zh
Application granted granted Critical
Publication of CN102135871B publication Critical patent/CN102135871B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明涉及一种利用混沌原理产生随机数的装置,包括密码产生模块、迭代运算模块、随机数输出处理模块以及迭代运算控制模块;其中:所述密码产生模块用于产生初始密码,并将所述初始密码传输到所述迭代运算模块;所述迭代运算模块用于将所述迭代运算控制模块传输来的迭代对象进行迭代运算后得到随机数;所述随机数输出处理模块用于按照设定变换所述随机数并输出;所述迭代运算控制模块与所述迭代运算模块的输出连接,并在所述迭代运算模块的运算中为所述迭代运算模块提供迭代运算的对象。本发明还揭示了一种使用上述装置的动态口令牌。实施本发明的利用混沌原理产生随机数的装置及其动态口令牌,具有以下有益效果:其成本较低、速度及稳定性较高。

Description

利用混沌原理产生随机数的装置及其动态口令牌
技术领域
本发明涉及数据加密领域,更具体地说,涉及一种利用混沌原理产生随机数的装置及其动态口令牌。
背景技术
随着信息技术(IT)的不断发展,数据的安全性要求越来越高,数据加密计算在数据传输,数据存储等诸多领域有重要应用意义。被加密之前的数据被称为“明文”,加密之后的数据被称作“密文”,而用于加密计算和解密计算的密码称之为“密钥”。加密是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。对数据进行加密可以防止数据被未经授权的人查看或修改,还可以使原本不安全的信道上成为安全的通信信道。具体而言,加密是将明文通过某种算法转换成一段无法识别的密文。在现代加密体系中,信息的安全依赖于密钥的保密性。 在现代加密体系中分两种加密方法:“私钥”加密法 ( 又称对称加密) 和“公钥”加密法又称非对称加密。通常,对数据加密应用于因特网电子商务、手机网络和银行自动取款机领域。
对于加密算法的实现有两大类实现方法,一种是基于通用处理器采用软件加密的方法,另外一种方法是使用专用处理器进行计算的硬件加密方法。对比这两种方法,软件加密的方法特点是在有MCU的系统中,实现的代价小,只需要增加小段软件程序代码即可。而对于硬件加密算法来说,其主要的优点是应用领域广泛,无论是不是存在MCU的系统,都可以实现加密,其次由于硬件本身的封闭性好,所以同样的算法,硬件加密更难于破解。最后,硬件加密的实现方法有利于加密速度的提高。对于专用处理器,其设计针对于算法实现,速度远远高于通用处理器。因此,设计并实现硬件加密算法具有非常广泛而现实的意义。
动态口令是根据特定算法生成不可预测的随机数字组合,每个口令只能使用一次。动态口令牌是用来生成动态口令的终端设备,也称动态令牌。动态口令认证技术被认为是目前能够最有效解决用户的身份认证方式之一,使用动态口令主要有2个方面价值:(1)防止速由于盗号而产生的财产损失。(2)采用动态口令的单位无需忍受定期修改各种应用系统登录密码的烦恼。动态口令牌芯片,是实现动态口令牌的核心部件,其算法非常复杂,目前市面上的动态口令牌算法具有芯片面积大,成本高,授权费用昂贵等缺点。
Logistic是一个著名的混沌原理,可以实现很好的混沌映射关系,是非常好的混沌模型,其可能的应用范围也非常广泛,无论手机、U盘、电脑中都可以应用。但是,现有技术中均使用Logistic的软件数据加密,并没有将其使用硬件电路实现。而采用软件实行的项目的速度及稳定性均受到一定的限制。因此,一种采用硬件实现的利用混沌原理的动态口令及动态口令牌就很有必要。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述采用硬件实现的成本高、采用软件实现的速度及稳定性较差的缺陷,提供一种成本低、速度及稳定性较好的利用混沌原理产生随机数的装置及其动态口令牌。
本发明解决其技术问题所采用的技术方案是:构造一种利用混沌原理产生随机数的装置,包括密码产生模块、迭代运算模块、随机数输出处理模块以及迭代运算控制模块;其中:
所述密码产生模块用于产生初始密码,并将所述初始密码传输到所述迭代运算模块;
所述迭代运算模块用于将所述迭代运算控制模块传输来的迭代对象进行运算后得到随机数,并将所述随机数传送到所述随机数输出处理模块;
所述随机数输出处理模块用于按照设定变换所述随机数并输出;
所述迭代运算控制模块与所述迭代运算模块的输出连接,并在所述迭代运算模块的运算中为所述迭代运算模块提供迭代运算的对象。
在本发明所述的利用混沌原理产生随机数的装置中,所述密码产生模块进一步包括密码存储单元和密码映射单元;所述密码存储单元用于存储在随机数产生过程中所用到的密码;所述密码映射单元用于将密码存储单元输出的密码进行映射并输出到所述迭代运算模块。
在本发明所述的利用混沌原理产生随机数的装置中,所述迭代运算控制模块进一步包括:随机数映射单元、初始随机种子产生单元、选择单元、迭代对象运算单元;其中
所述随机数映射单元连接在所述迭代运算模块的输出端和所述选择单元的一个输入端之间,用于对所述迭代运算模块输出的随机数进行映射并将映射结果输出到所述选择单元的一个输入端;
所述初始随机种子产生单元用于产生初始化的随机种子并将其输送到所述选择单元的另一个输入端;
所述选择单元用于选择其两个输入端输入信号之一作为迭代运算对象并输出到所述迭代运算模块一个输入端和所述迭代对象运算单元;
所述迭代对象运算单元用于将所述选择单元输出的迭代对象做对其定义域取补码的运算后输出到所述迭代运算模块的另一个输入端。
在本发明所述的利用混沌原理产生随机数的装置中,所述选择单元包括多路选择器和控制器,所述多路选择器在所述控制器的控制下在第一次迭代运算时使所述多路选择器输出初始化的随机种子;在之后的迭代运算时使所述多路选择器输出所述随机数映射单元输出的随机数。
在本发明所述的利用混沌原理产生随机数的装置中,所述随机数映射单元为实现了z=Z/(a*N*M)的运算单元;其中:z是所述随机数映射单元的输出,Z是所述迭代运算模块的输出,a是取值为自然数的计算精度因子,N是定义在整数域上的所述密码定义域的最大值,M是所述随机种子定义域的最大值。
在本发明所述的利用混沌原理产生随机数的装置中,所述迭代运算模块是一个对所述随机数映射单元的输出z及其补码z′相乘,并在得到其结果后再与所述密码映射单元输出相乘而得到输出数据的运算模块。
在本发明所述的利用混沌原理产生随机数的装置中,所述密码映射单元是一个实现int(N*a*3.5699)+int(X*a*0.4301)运算的硬件运算单元;其中,int为取整数运算,N是定义在整数域上的所述密码定义域的最大值,a是取值为自然数的计算精度因子,X是所述密码存储单元输出的密码值。
本发明还涉及一种利用上述产生随机数的装置而得到的动态口令牌,包括输入模块、迭代使能模块和核心计算模块;其中:
所述输入模块用于产生随机数种子的寄存器数值、密码的寄存器数值和密码输入完成信号并分别发送到所述核心计算模块的不同输入端;
所述迭代使能模块用于产生使得所述核心计算模块开始迭代运算的使能信号;
所述核心计算模块为前面所描述的利用混沌原理产生随机数的装置。
在本发明所述的动态口令牌中,还包括显示模块,所述显示模块分别与所述动态口令牌中各部分分别连接,用于显示所述各部分输出的内容。
在本发明所述的动态口令牌中,还包括时钟/复位模块,所述时钟/复位模块分别为所述动态口令牌中各部分提供时钟,并将其输出时钟发送到所述显示模块以显示所述时钟数值。
实施本发明的利用混沌原理产生随机数的装置及其动态口令牌,具有以下有益效果:由于其采用硬件方式实现了初始密码的产生以及初始密码与随机数运算后得到新的随机数作为密钥,因此在实现数据加密的基础上使得其成本较低、速度及稳定性较高。
附图说明
图1是本发明利用混沌原理产生随机数的装置及其动态口令牌实施例中产生随机数装置的结构示意图;
图2是所述实施例产生随机数装置中控制器硬件所实现的状态图;
图3是所述实施例产生随机数装置中密码映射单元硬件所实现的状态图;
图4所述实施例产生随机数装置中迭代运算模块硬件所实现的状态图;
图5所述实施例产生随机数装置中随机数映射单元硬件所实现的状态图;
图6是所述实施例中动态口令牌的结构示意图。
具体实施方式
下面将结合附图对本发明实施例作进一步说明。
如图1所示,在本发明利用混沌原理产生随机数的装置及其动态口令牌实施例中,其利用混沌原理产生随机数的装置包括如下部分:密码产生模块1、迭代运算模块2、随机数输出处理模块3以及迭代运算控制模块4;密码产生模块1用于产生初始密码,并将初始密码传输到迭代运算模块2;迭代运算模块2用于将迭代运算控制模块3传输来的迭代对象进行迭代运算后得到机数,并将所述随机数传送到随机数输出处理模块3;随机数输出处理模块3用于按照设定变换所述随机数并输出;迭代运算控制模块4与迭代运算模块2的输出连接,并在迭代运算模块2的迭代运算中为迭代运算模块2提供迭代运算的对象。从另一个角度来看,迭代运算控制模块4处理上述迭代运算模块2输出的、未达到设定要求的随机数,使其达到设定要求,从而成为迭代运算模块2下一次迭代运算的对象。
在图1中,迭代运算控制模块4进一步包括随机数映射单元45、初始随机种子产生单元42、选择单元、迭代对象运算单元44;选择单元又包括控制器41和多路选择器43。选择单元用于选择其两个输入端输入信号之一作为迭代运算对象并输出到迭代运算模块2一个迭代运算的对象输入端和迭代对象运算单元44。其中,多路选择器43在控制器41的控制下在第一次迭代运算时使多路选择器43输出初始化的随机种子(由初始化随机种子产生单元42产生),而在上述第一次迭代运算之后的迭代运算时使多路选择器43输出随机数映射单元45输出的随机数。具体而言,选择单元用于控制整个装置的输入是初始化的随机种子,还是迭代运算的上一次计算结果。其原理为:当迭代次数为零时(第一次迭代),选择随机种子作为上述输入,当迭代次数大于零时,选择上一次迭代运算结果作为上述输入。
随机数映射单元45连接在迭代运算模块2的输出端和上述选择单元(具体来讲是上述多路选择器43)的一个输入端之间,用于对不能满足要求(即事先设定)的迭代运算模块2输出的随机数进行映射并将映射结果输出到上述多路选择器43的一个输入端;对于上述的事先设定而言,由于经过Logistic迭代运算的输出结果尚不能满足Logistic迭代运算输入的要求,因此,需要经过映射计算得到相应的数值。设随机种子的定义域为[0,M],从随机数映射单元45输入的未经过处理的Logistic迭代运算的输出结果为Z,而经过随机数映射单元45变换的Logistic迭代运算结果为z,则z满足:z=Z/(a*N*M)。正如上面所述,多路选择器43当计算开始时,应该选择初始随机种子作为迭代运算的对象,当计算出第一个z之后,应该选择z作为迭代运算的对象。
初始随机种子产生单元42用于产生初始化的随机种子并将其输送到所述选择单元的一个输入端;初始随机种子产生单元42存储有随机种子,并在需要时将其输出。每次通过迭代运算出来的新的随机数,其取值范围和随机种子相同。迭代对象运算单元44用于将上述选择单元输出的迭代运算的对象做对其定义域取补码的运算后输出到迭代运算模块2的一个输入端。对定义域取补码运算的计算结果为z′,则其运算可表示为z′= M-z。
在本实施例中,密码产生模块1进一步包括密码存储单元11和密码映射单元12;密码存储单元11用于存储在随机数产生过程中所用到的密码(即用于存储整个加密过程使用到的密码);密码映射单元12用于将密码存储单元11输出的密码进行映射并输出到迭代运算模块2。由于密码的定义域和Logistic的迭代定义域不同,因此需要完成一个定义域的变化,密码映射单元12就是用于实现该变换。该变换满足式:
Figure 419857DEST_PATH_IMAGE001
其中,X为离散化密码,N为定义在整数域上的离散化密码的定义域最大值,X的取值范围为[0,N]。int代表取整数运算,a为计算精度影响因子,a取值为自然数。其中a*N*Y为变换后的输出结果,其中Y代表Logistic迭代模块的理论输入数值。
此外,在本实施例中,迭代运算模块2计算的输出结果为Z,在本实施例中满足Z=z* z`*a*N*Y。而随机数输出处理模块3是一个较为灵活的模块,可根据具体的应用需求,对计算出的随机数Z进行变换,得到需要的加密运算数据流或者动态密码口令等。
在本实施例中,选取32位二进制数作为密码,选取16位二进制数据作为产生加密随机数的随机数种子,而动态口令则为6位10进制数据,进而实现动态口令牌的电路设计。值得一提的是,上述数据位数的选择,也就是数据的取值范围,只是一个较为实用的例子,本发明其他实施例并不局限于此。
下面具体针对本实施例中的一些模块或单元的电路逻辑结构进行描述。这些描述均以状态机的形式出现,对于硬件电路而言,一个较为简单的方式就是用硬件描述语言实现这些状态机,这样也就得到(或限制)了这些模块或单元的具体硬件结构。对于图1中的控制器41而言,其输入信号为“上电/复位”信号,“迭代使能信号”,以及时钟信号。输出信号为“迭代次数”信号和“迭代状态”信号。其状态图如图2所示,控制器41需要一个1位的状态寄存器,和一个迭代次数寄存器。由于迭代状态只有两大类:“迭代次数为0”、“迭代次数大于0”。因此可以按照图2的方式构建有限状态机,进而用标准数字系统方法实现该有限状态机。而迭代次数寄存器的电路满足如下逻辑:当“上电/复位”信号有效时,对该寄存器清零,如果有“迭代操作信号”时,判断是否出现寄存器溢出,如果没有溢出,则对寄存器进行加“1”运算,否则就对寄存器赋值为“1”。
在本实施例中,图1中的密码存储单元11为一个32位的外部寄存器输入,初始随机种子产生单元42设计为一个16位的外部寄存器输入。多路选择器43为一个16位2选1多路选择器电路。迭代对象运算单元44为一个减法计算电路,其输出等于16位二进制数数“1111111111111111”减掉输入,因为输入也是一个16位二进制数据,因此输出不会出现负数。
在本实施例中,图1中的密码映射单元12满足表达式
Figure 523948DEST_PATH_IMAGE001
,如取a=1,取N=232-1。为了计算的方便,本发明中有些时候也可令N=232,可大大的简化运算,而实际运算误差也不大。根据该表达式,定义模块密码映射单元12的输入为32位二进制数X,则输出的具体计算定义为15332603750+int(X*0.4301)。其中X*0.4301为浮点运算,电路硬件无法直接实现,需要做一次变换,可以证明int(X*0.4301)= int(X*(0.4301*214)/214)≈int(X*7046/214)。
由于7046等于13位二进制数“1101110000110”,则可以利用标准的二进制乘法的计算方法,对X分别乘以二进制数“1101110000110”的每一位数字移位后进行累加,最终得到X*7046的结果。由于上述算法为一个状态机,因此需要一个状态机控制模块配合上述运算,状态转换规律如图3所示。按照图3的方式构建有限状态机电路,并且在每一个状态下,都进行一次累加运算,当状态跳转规律符合从状态寄存器=0的状态,依次经历状态寄存器=1、2、4……的状态,并最终回到状态寄存器=0的状态,此时该电路的输出是X*7046的结果,得到X*7046的结果以后,对这个结果进行二进制数的右移14位运算,可以得道int(X*7046/214),再对int(X*7046/214)进行加15332603750运算,可得到15332603750+int(X*0.4301)的结果,也就是图1中的密码映射单元12的输出,即该表达式中的a*N*Y。
图1中的迭代运算模块2完成Logistic迭代运算,其运算在本算法中满足Z=z* z′*a*N*Y,也就是对图1中的密码映射单元12、迭代对象运算单元44、多路选择器43的输出进行乘法运算。该运算受到外部信号的控制,通常称这个控制信号为“迭代使能信号”,每当迭代使能信号有效的时候,完成一次迭代运算。首现先完成z* z′的运算,由于z和z′在本发明中都是和随机数种子一样的16位二进制数,因此首现进行z* z′的运算。可以利用标准的二进制乘法的计算方法,对z分别乘以二进制数z′的每一位数字移位后进行累加,最终得到z* z′的结果。由于上述算法为一个状态机,因此需要一个状态机控制模块配合上述运算,状态转换规律如图4所示;按照图4的方式构建有限状态机电路,并且在每一个状态下,都进行一次累加运算,当状态跳转规律符合从状态寄存器=0的状态,依次经历状态寄存器=1、2、4……的状态,并最终回到状态寄存器=0的状态,此时该电路的输出是z* z′的运算结果。
z* z′的运算结果是一个32位二进制数据,可以用类似的方法继续计算其与表达式(1)中的a*N*Y的乘积,也就是其与图1中密码映射单元12输出结果的乘积。但是由于前面计算z* z′的乘积用掉了17个状态,也就是花掉了17个时间周期,因此在完成z* z′的运算结果与图1中密码映射单元12输出结果的乘积是,需要先让计算模块空转17个周期以上,才能开始进行计算,否则计算结果就会出错。
图1中的迭代对象运算单元44完成的等式为z′= M-z的映射关系,根据本实施例前面的数据选取可知:z=Z/(248),这样的运算,只需要一个48位右移电路就可以实现。
在本实施例中,随机数输出处理模块3跟据具体的应用需求,对计算出的随机数Z进行变换,得道需要的加密运算数据流或者动态密码口令。在本发明中,是要计算Z除以108的余数,由于求余数运算不能单纯使用组合逻辑计算,因此需要用到一个状态机。
图5给出了求余数运算的状态机,由于前面算出Z需要超过50个时钟周期以上的时间,因此,这里需要计算电路先空转50个以上的时间周期,等待最终准确的Z出现,才能进行计算。
本实施例还涉及一种使用上述产生随机数的装置的动态口令牌,如图6所示,动态口令牌包括输入模块61、迭代使能模块62、核心计算模块63、显示模块64以及时钟/复位模块65;其中:输入模块61用于产生随机数种子的寄存器数值、密码的寄存器数值和密码输入完成信号并分别发送到核心计算模块63的不同输入端;迭代使能模块62用于产生使得核心计算模块63开始迭代运算的使能信号;而核心计算模块63就是如上所述的利用混沌原理产生随机数的装置;显示模块64分别动态口令牌中各部分分别连接,用于显示各部分输出的内容;时钟/复位模块65分别为动态口令牌中各部分提供时钟。
在本实施例中,对于动态口令牌而言,除了其核心计算模块63是图1所示电路以外,还需要配合一些外部电路来完成整个动态口令牌的设计。 核心计算模块63的输入分别为16位二进制的随机数种子,32位二进制的密码,系统时钟,迭代使能信号,上电/复位信号,密码输入完成信号;其输出为动态口令。输入模块61是外围的输入控制模块,利用外部按键和拨码开关可以输入相应信息。经过输入模块61的处理,可以得到随机数种子的寄存器数值,密码的寄存器数值,以及当密码输入完成以后,发出一个“密码输入完成信号”, 核心计算模块63收到密码完成信号以后,可以计算出变换后的密码,并且进行存储。输入完成密码和随机数种子以后,要对系统进行复位,此时迭代使能模块62中的计数器清零,核心计算模块63内部的状态寄存器也按照设计清零。此时迭代使能模块62开始进行计数,每隔一定的时间,例如30s发出一个迭代使能信号。核心计算模块收到迭代使能信号之后,开始计算z* z′,此时z来源于随机种子,因为复位以后,多路选择器的控制器的状态为选择随机种子。然后计算Z=z* z′*a*N*Y,最后变换Z得到动态口令的数值。
经过上述过程,可以得到第一个由随机数种子经过变换之后得到的动态口令,当收到了第一个迭代使能信号以后,迭代次数寄存器会自动加1,完成了加1以后,多路选择器的开关会转变成选择上一次的z作为下一次迭代的输入。经过若时钟周期以后,就完成了第一次运算,核心计算模块63会等待下一次的迭代使能信号,直到下一次迭代使能信号到来之后,开始进行下一次计算。
图6中显示模块64主要控制把二进制的数据转化为LED数码管显示的电路模块,同时,该模块还受输入模块61控制来选择输出内容究竟是密码、随机种子,动态口令,还是迭代次数中的哪一种。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种利用混沌原理产生随机数的装置,其特征在于,包括密码产生模块、迭代运算模块、随机数输出处理模块以及迭代运算控制模块;其中:  
所述密码产生模块用于产生初始密码,并将所述初始密码传输到所述迭代运算模块;
所述迭代运算模块用于将所述迭代运算控制模块传输来的迭代对象进行运算后得到随机数,并将所述随机数传送到所述随机数输出处理模块;
所述随机数输出处理模块用于按照设定变换所述随机数并输出;
所述迭代运算控制模块与所述迭代运算模块的输出连接,并在所述迭代运算模块的运算中为所述迭代运算模块提供迭代运算的对象。
2.根据权利要求1所述的利用混沌原理产生随机数的装置,其特征在于,所述密码产生模块进一步包括密码存储单元和密码映射单元;所述密码存储单元用于存储在随机数产生过程中所用到的密码;所述密码映射单元用于将密码存储单元输出的密码进行映射并输出到所述迭代运算模块。
3.根据权利要求1所述的利用混沌原理产生随机数的装置,其特征在于,所述迭代运算控制模块进一步包括:随机数映射单元、初始随机种子产生单元、选择单元、迭代对象运算单元;其中
所述随机数映射单元连接在所述迭代运算模块的输出端和所述选择单元的一个输入端之间,用于对所述迭代运算模块输出的随机数进行映射并将映射结果输出到所述选择单元的一个输入端;
所述初始随机种子产生单元用于产生初始化的随机种子并将其输送到所述选择单元的另一个输入端;
所述选择单元用于选择其两个输入端输入信号之一作为迭代运算对象并输出到所述迭代运算模块一个输入端和所述迭代对象运算单元;
    所述迭代对象运算单元用于将所述选择单元输出的迭代对象做对其定义域取补码的运算后输出到所述迭代运算模块的另一个输入端。
4.根据权利要求3所述的利用混沌原理产生随机数的装置,其特征在于,所述选择单元包括多路选择器和控制器,所述多路选择器在所述控制器的控制下在第一次迭代运算时使所述多路选择器输出初始化的随机种子;在之后的迭代运算时使所述多路选择器输出所述随机数映射单元输出的随机数。
5.根据权利要求4所述的利用混沌原理产生随机数的装置,其特征在于,所述随机数映射单元为实现了z=Z/(a*N*M)的运算单元;其中:z是所述随机数映射单元的输出,Z是所述迭代运算模块的输出,a是取值为自然数的计算精度因子,N是定义在整数域上的所述密码定义域的最大值,M是所述随机种子定义域的最大值。
6.根据权利要求5所述的利用混沌原理产生随机数的装置,其特征在于,所述迭代运算模块是一个对所述随机数映射单元的输出z及其补码z′相乘,并在得到其结果后再与所述密码映射单元输出相乘而得到输出数据的运算模块。
7.根据权利要求6所述的利用混沌原理产生随机数的装置,其特征在于,所述密码映射单元是一个实现int(N*a*3.5699)+int(X*a*0.4301)运算的硬件运算单元;其中,int为取整数运算,N是定义在整数域上的所述密码定义域的最大值,a是取值为自然数的计算精度因子,X是所述密码存储单元输出的密码值。
8.一种动态口令牌,其特征在于,包括输入模块、迭代使能模块和核心计算模块;其中:
    所述输入模块用于产生随机数种子的寄存器数值、密码的寄存器数值和密码输入完成信号并分别发送到所述核心计算模块的不同输入端;
    所述迭代使能模块用于产生使得所述核心计算模块开始迭代运算的使能信号;
    所述核心计算模块为如权利要求7中所述利用混沌原理产生随机数的装置。
9.根据权利要求8所述的动态口令牌,其特征在于,还包括显示模块,所述显示模块分别与所述动态口令牌中各部分分别连接,用于显示所述各部分输出的内容。
10.根据权利要求8所述的动态口令牌,其特征在于,还包括时钟/复位模块,所述时钟/复位模块分别为所述动态口令牌中各部分提供时钟,并将其输出时钟发送到所述显示模块以显示所述时钟数值。
CN 201110076888 2011-03-29 2011-03-29 利用混沌原理产生随机数的装置及其动态口令牌 Expired - Fee Related CN102135871B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110076888 CN102135871B (zh) 2011-03-29 2011-03-29 利用混沌原理产生随机数的装置及其动态口令牌

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110076888 CN102135871B (zh) 2011-03-29 2011-03-29 利用混沌原理产生随机数的装置及其动态口令牌

Publications (2)

Publication Number Publication Date
CN102135871A true CN102135871A (zh) 2011-07-27
CN102135871B CN102135871B (zh) 2013-12-18

Family

ID=44295666

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110076888 Expired - Fee Related CN102135871B (zh) 2011-03-29 2011-03-29 利用混沌原理产生随机数的装置及其动态口令牌

Country Status (1)

Country Link
CN (1) CN102135871B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105027181A (zh) * 2013-03-13 2015-11-04 株式会社东芝 加密数据运算系统、装置以及程序
CN107124273A (zh) * 2017-05-10 2017-09-01 成都课迪科技有限公司 一种基于动态授权码的平台数据加密方法和装置
CN108848089A (zh) * 2018-06-13 2018-11-20 江苏恒宝智能系统技术有限公司 一种数据加密方法及数据传输系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1921376A (zh) * 2005-08-25 2007-02-28 中南大学 基于并行td-ercs混沌系统的伪随机数发生器
CN101582023A (zh) * 2008-05-16 2009-11-18 王欣 一种真随机序列产生器
US20100142705A1 (en) * 2007-06-05 2010-06-10 Nicolas Reffe Cryptographic methods and devices for pseudo-random generation, encrypting data, and cryptographically hashing a message
US7764795B2 (en) * 2004-10-20 2010-07-27 Oracle International Corporation Key-exchange protocol using a password-derived prime

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7764795B2 (en) * 2004-10-20 2010-07-27 Oracle International Corporation Key-exchange protocol using a password-derived prime
CN1921376A (zh) * 2005-08-25 2007-02-28 中南大学 基于并行td-ercs混沌系统的伪随机数发生器
US20100142705A1 (en) * 2007-06-05 2010-06-10 Nicolas Reffe Cryptographic methods and devices for pseudo-random generation, encrypting data, and cryptographically hashing a message
CN101582023A (zh) * 2008-05-16 2009-11-18 王欣 一种真随机序列产生器

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105027181A (zh) * 2013-03-13 2015-11-04 株式会社东芝 加密数据运算系统、装置以及程序
CN105027181B (zh) * 2013-03-13 2017-03-29 株式会社东芝 加密数据运算系统以及装置
US10116439B2 (en) 2013-03-13 2018-10-30 Kabushiki Kaisha Toshiba Encrypted data computation system, device, and program
CN107124273A (zh) * 2017-05-10 2017-09-01 成都课迪科技有限公司 一种基于动态授权码的平台数据加密方法和装置
CN108848089A (zh) * 2018-06-13 2018-11-20 江苏恒宝智能系统技术有限公司 一种数据加密方法及数据传输系统
CN108848089B (zh) * 2018-06-13 2020-09-01 江苏恒宝智能系统技术有限公司 一种数据加密方法及数据传输系统

Also Published As

Publication number Publication date
CN102135871B (zh) 2013-12-18

Similar Documents

Publication Publication Date Title
CN109726598A (zh) 基于云服务器的嵌入式安全加密芯片
CN101216754B (zh) 基于模乘运算的数据加解密处理的方法及装置
JP2013131867A (ja) 個体別情報生成装置及び個体別情報生成方法
CN100583757C (zh) 一种ecc\rsa加解密协处理器
CN109190413B (zh) 一种基于fpga和md5加密的串行通信系统
CN103631660A (zh) 在gpu中进行大整数计算时的存储资源分配方法及装置
CN101431405B (zh) Des加密方法及其硬件电路实现方法
KR20220052858A (ko) Aes 카운터 모드 암호화에서 쿼시그룹 연산으로 암호화된 정수들을 가산하고 비교하기 위한 시스템 및 방법
CN105871552A (zh) 双核并行rsa密码处理方法及协处理器
CN108108614A (zh) 安全处理器以及安全处理器的操作方法
CN105354008A (zh) 一种随机数生成器的输出电路及输出方法
CN102135871B (zh) 利用混沌原理产生随机数的装置及其动态口令牌
CN107885486B (zh) 一种基于查找树的复合有限域求逆装置
CN109144472B (zh) 一种二元扩域椭圆曲线的标量乘法及其实现电路
CN108259179A (zh) 一种基于sm9标识密码算法的加解密协处理器及其运算方法
Nawari et al. Fpga based implementation of elliptic curve cryptography
CN101630244A (zh) 一种流水线型椭圆曲线双标量乘法系统及方法
CN200990078Y (zh) 快速rsa密码和大数模指数运算的电路
CN116436709B (zh) 一种数据的加解密方法、装置、设备和介质
KR20040095526A (ko) 저전력 모듈로 곱셈을 수행하는 연산장치
CN101819519B (zh) 多功能数字签名电路
EP4152681A1 (en) Low overhead side channel protection for number theoretic transform
CN105786528B (zh) 一种基于Avalon接口的SM3算法IP核的设计方法
CN203119915U (zh) 一种基于硬件加密数据的装置
Wang et al. Research and design of AES security processor model based on FPGA

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
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: 20131218

Termination date: 20140329