CN110058842A - 一种结构可变的伪随机数生成方法及装置 - Google Patents

一种结构可变的伪随机数生成方法及装置 Download PDF

Info

Publication number
CN110058842A
CN110058842A CN201910195255.0A CN201910195255A CN110058842A CN 110058842 A CN110058842 A CN 110058842A CN 201910195255 A CN201910195255 A CN 201910195255A CN 110058842 A CN110058842 A CN 110058842A
Authority
CN
China
Prior art keywords
subsequence
shift register
feedback shift
pseudo
nonlinear
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
CN201910195255.0A
Other languages
English (en)
Other versions
CN110058842B (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.)
Xidian University
Original Assignee
Xidian 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 Xidian University filed Critical Xidian University
Priority to CN201910195255.0A priority Critical patent/CN110058842B/zh
Publication of CN110058842A publication Critical patent/CN110058842A/zh
Application granted granted Critical
Publication of CN110058842B publication Critical patent/CN110058842B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/584Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

本发明涉及一种结构可变的伪随机数生成方法,包括:获取初始密钥、本原多项式和初始化向量;根据所述本原多项式和所述初始化向量得到第一子序列;根据所述初始密钥得到第二子序列;根据所述第一子序列和所述第二子序列得到第三子序列;根据所述第一子序列、所述第二子序列和所述第三子序列得到伪随机序列。该方法结构可变,轻量级算法易于软硬件实现,且能抵抗相关攻击,为伪随机数的生成提供了更高的安全性与灵活性,生成的伪随机序列可运用到许多加密应用中。

Description

一种结构可变的伪随机数生成方法及装置
技术领域
本发明属于信息安全领域,具体涉及一种结构可变的伪随机数生成方法及装置。
背景技术
伪随机数是具有某种随机特性的周期序列,虽然不是真随机的,但生成速度快,易于软硬件实现,在诸如通信、雷达、导航以及密码学的密钥、数字签名和身份认证等重要技术领域应用广泛。
例如,一种生成伪随机数的方法及伪随机数发生器,包括:获取预先设定的密钥、初始向量、种子以及加密函数,加密函数调用SM4算法以及3DES算法,所述SM4算法与3DES算法结合确定生成函数,根据所述的生成函数、密钥、初始向量以及种子输出伪随机数。又如,另一种伪随机数生成装置和方法,利用位移方向相反的两个线性反馈移位寄存器产生随机比特数。再如一种非线性伪随机序列发生器,采用线性反馈单元、非线性反馈逻辑单元和合成单元,线性反馈逻辑单元按照本原多项式反馈函数与移位寄存器单元的状态输出端对应连接,其输出端与合成单元的一个输入端连接。非线性反馈逻辑单元输入端按照其非线性特征函数与移位寄存器单元状态输出端对应连接,合成单元包括异或门,其输入端分别与线性反馈逻辑单元输出端和非线性反馈逻辑单元输出端连接,合成单元的输出端与移位寄存器输入端连接,生成方法简单。
但是,上述第一种方法不属于轻量级算法,不易在软硬件中实现。第二种方法仅仅使用了线性反馈移位寄存器,结构不可变,无法抵抗相关攻击。第三种方法只是用了一个非线性反馈函数,结构简单,不能适用于多种应用。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种可变结构的伪随机数生成方法及装置。本发明要解决的技术问题通过以下技术方案实现:
本发明实施例提供了一种结构可变的伪随机数生成方法,包括:
获取初始密钥、本原多项式和初始化向量;
根据所述本原多项式和所述初始化向量得到第一子序列;
根据所述初始密钥得到第二子序列;
根据所述第一子序列和所述第二子序列得到第三子序列;
根据所述第一子序列、所述第二子序列和所述第三子序列得到伪随机序列;
在本发明的一个实施例中,还包括:
所述第一子序列和所述第二子序列重复更新,得到密钥流。
在本发明的一个实施例中,根据所述本原多项式和所述初始化向量得到第一子序列,包括:
根据所述本原多项式得到线性反馈移位寄存器的结构;
根据所述线性反馈移位寄存器的结构得到线性反馈移位寄存器;
将所述初始化向量代入所述线性反馈移位寄存器得到所述第一子序列。
在本发明的一个实施例中,根据所述初始密钥和得到第二子序列,包括:
根据所述初始密钥得到非线性反馈移位寄存器的结构;
根据所述非线性反馈移位寄存器的结构得到非线性反馈移位寄存器;
将所述初始密钥代入所述非线性反馈移位寄存器得到所述第二子序列。
在本发明的一个实施例中,根据所述第一子序列和所述第二子序列得到第三子序列,包括:
选取过滤函数;
将所述第一子序列和所述第二子序列代入所述过滤函数得到第三子序。
在本发明的一个实施例中,根据所述第一子序列、所述第二子序列和所述第三子序列得到伪随机序列,包括:
选取输出函数;
将所述第一子序列、所述第二子序列和所述第三子序列代入所述输出函数得到伪随机序列。
本发明的实施例还提供了一种结构可变的伪随机数生成装置,包括:
数据获取模块,用于获取初始密钥、本原多项式和初始化向量;
线性模块,用于根据所述本原多项式和所述初始化向量得到第一子序列;
非线性模块,用于根据所述初始密钥得到第二子序列;
过滤模块,用于根据所述第一子序列和所述第二子序列得到第三子序列;
伪随机序列生成模块,用于根据所述第一子序列、所述第二子序列和所述第三子序列得到伪随机序列。
在本发明的一个实施例中,所述线性模块包括:
结构生成单元,用于根据所述本原多项式确定线性反馈移位寄存器的结构;
线性反馈移位寄存器生成单元,用于根据所述线性反馈移位寄存器的结构得到线性反馈移位寄存器;
第一子序列获取单元,用于将所述初始化向量代入所述线性反馈移位寄存器得到所述第一子序列。
在本发明的一个实施例中,所述非线性模块包括:
结构生成单元,用于根据初始密钥确定非线性反馈移位寄存器的结构;
非线性反馈移位寄存器生成单元,用于根据所述非线性反馈移位寄存器的结构得到非线性反馈移位寄存器;
第二子序列获取单元,用于将所述初始密钥代入所述非线性反馈移位寄存器得到所述第二子序列。
在本发明的一个实施例中,所述过滤模块包括:
函数选取单元,用于选取过滤函数;
第三子序列获取单元,用于将所述第一子序列和所述第二子序列带入所述过滤函数得到第三子序列。
在本发明的一个实施例中,所述伪随机序列生成模块包括:
函数获取单元,用于获取输出函数;
伪随机序列获取单元,用于将所述第一子序列、所述第二子序列和所述第三子序列带入所述输出函数得到伪随机序列。
与现有技术相比,本发明的有益效果:
1、本发明使用了小尺寸的非线性反馈移位寄存器进行级联,能有效减少逻辑器件与门和异或门的使用,属于轻量级算法,易于软硬件实现。
2、本发明算法结构利用线性反馈移位寄存器作为线性部分,保证生成序列的周期足够大,利用由用户密钥控制级联个数与长度的多个非线性反馈移位寄存器级联作为非线性部分,达到了密钥控制结构的目的,过滤部分使用高阶相关免疫阶、均衡的布尔函数,增强了抗攻击性,提供了更高的安全性与灵活性,生成的伪随机序列可运用到许多加密应用中。
附图说明
图1为本发明实施例提供的一种结构可变的伪随机数生成方法的流程示意图;
图2为本发明实施例提供的一种结构可变的伪随机数生成方法的另一种流程示意图;
图3为本发明实施例提供的一种结构可变的伪随机数生成装置的结构示意图;
图4为本发明实施例提供的一种结构可变的伪随机数生成装置的另一个结构示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
本实施例是利用反馈移位寄存器实现的。反馈移位寄存器,简称FSR,是产生信号和序列的常用设备,根据反馈函数的不同主要分为线性和非线性两大类。线性反馈移位寄存器(LFSR,linear feedback shift register)是指反馈函数是线性函数的反馈移位寄存器,给定前一状态的输出,将该输出的线性函数再用作输入的移位寄存器。异或运算是最常见的单比特线性函数:对寄存器的某些位进行异或操作后作为输入,再对寄存器中的各比特进行整体移位。非线性反馈移位寄存器(NLFSR,Nonlinear feedback shift register)是相对于线性反馈移位寄存器而言的,它的反馈函数为非线性函数,两者大体电路逻辑相似,仅仅在于NLFSR的反馈逻辑是由异或门和与门构成的,而LFSR中仅存在异或门。
本发明的一个实施例提供了一种结构可变的伪随机数生成方法,主要按照以下几个步骤来实现,请参见图1和图2。图1为本发明实施例提供的一种结构可变的伪随机数生成方法的流程示意图;图2为本发明实施例提供的一种结构可变的伪随机数生成方法的另一种流程示意图。
获取初始密钥,本原多项式和初始化向量。
初始密钥在本发明中起着关键作用,它决定着算法的结构。本原多项式是产生最长周期线性反馈移位寄存器的必要条件,初始化向量,可以大大提高加密算法的安全性。在本实施例中,设置初始密钥K为128bits,本原多项式为:fL(x)=x128+x29+x27+x2+1,初始化IV为128bits。
根据本原多项式和初始化向量得到第一子序列。
由本原多项式得,线性反馈移位寄存器的结构为128阶。将初始化向量IV代入线性反馈移位寄存器中,由{x0,x1,...,xn-1}表示128级线性反馈移位寄存器,x0的值作为输出,与非线性反馈移位寄存器通过异或运算连接。设t时刻的寄存器状态为(at,at+1,...,at+127),相应的,得到寄存器的更新函数为:
从线性反馈移位寄存器中抽取若干状态比特得到第一子序列。
在本实施例中,抽取的7个线性反馈移位寄存器状态为:{at+8,at+13,at+20,at+42,at+60,at+79,at+95}。
根据初始密钥得到第二子序列。
初始密钥K为128bits,取每16bits表示非线性反馈移位寄存器的长度,选择密钥的80bits(0x1414241816),可以得到非线性反馈移位寄存器的结构是采用了5个小尺寸的非线性反馈移位寄存器级联连接,设为{f0,f1,f2,f3,f4},长度分别是{20,26,36,24,22},总长度是128。
表示非线性反馈移位寄存器。将初始密钥K置入非线性反馈移位寄存器中,对应的非线性反馈函数为:
请参见图3,图3为本发明实施例提供的一种结构可变的伪随机数生成装置的结构示意图。
更新非线性反馈移位寄存器f4的反馈端,来自3路输入异或:第一路是非线性反馈移位寄存器f4本身的反馈,第二路是与非线性反馈移位寄存器f0的输出反馈第三路是线性反馈移位寄存器f的输出x0
设t时刻非线性反馈移位寄存器的状态为:
因此,非线性反馈移位寄存器f4的更新函数为:
非线性反馈移位寄存器{f0,f1,f2,f3},反馈端更新由非线性反馈移位寄存器本身的反馈与上一级级联的非线性反馈移位寄存器的输出进行异或运算更新,更新函数如下:
f3更新函数:
f2更新函数:
f1更新函数:
f0更新函数:
在本实施例中,设t时刻的非线性反馈移位寄存器状态为从每个非线性反馈移位寄存器中抽取一个状态,{bt+10,bt+34,bt+55,bt+97,bt+121},得到第二子序列。
在本实施例中,抽取的7个线性反馈移位寄存器状态为:{at+8,at+13,at+20,at+42,at+60,at+79,at+95}。
根据第一子序列和第二子序列得到第三子序列。
选取过滤函数H(x)为9维3次均衡布尔函数,定义为:
将从线性反馈移位寄存器中抽取的第一子序列和从非线性反馈移位寄存器中抽取的第二子序列作为过滤函数的输入变元,则过滤函数输入变元是{x0,x1,x2,x3,x4,x5,x6,x7,x8}←{bt+34,at+8,at+13,at+20,bt+97,at+42,at+60,at+79,at+95},通过过滤函数,得到第三子序列。
根据第一子序列、第二子序列和第三子序列得到伪随机序列。
选取输出函数zt,定义为:其中,中ω={2,15,36,45,64,73,89},指非线性反馈移位寄存器中相对应位置的状态比特,st+95是线性反馈移位寄存器中的一个状态比特。将第一子序列、第二子序列和第三子序列带入输出函数,得到伪随机序列。
由于进行的异或运算,保证了伪随机序列的周期不低于线性反馈移位寄存器的周期。
在本实施例中,由{x0,x1,...,xn-1}表示128级线性反馈移位寄存器,δk表示向左平移k个寄存器,因此δ1{x0,x1,...,xn-1}表示线性反馈移位寄存器更新一次,x0的值作为输出,与非线性反馈移位寄存器通过异或运算连接。
非线性反馈移位寄存器由N个长度分别是{n0,n1,…,nN-1}非线性反馈移位寄存器级联连接,并且第1个非线性反馈移位寄存器的输出反馈回第N个非线性反馈移位寄存器构成环状。
非线性反馈移位寄存器内部状态向左平移更新寄存器,位置的状态作为输出,传递给级联的非线性反馈移位寄存器,自身非线性反馈函数计算的值与右端级联的非线性反馈移位寄存器的输出异或更新自身右端寄存器的内部状态,fN-1与线性模块的输出以及第1个非线性反馈移位寄存器的输出进行异或运算更新位置的状态。
非线性反馈移位寄存器与线性反馈移位寄存器同步进行更新,不断得到伪随机序列,形成密钥流。
参考论文A ring-like cascade connection and a class of NFSRs with thesame cycle structures中涉及的星积运算,表示为:对任意两个布尔函数f1(x0,x1,…,xn)和f2(x0,x1,…,xm)定义为:
f1*f2=f1(f2(x0,…,xm),f2(x1,…,xm+1),…,f2(xn,…,xn+m))。
本实施例使用的5个非线性反馈移位寄存器级联相当于一个128阶的非线性反馈移位寄存器,对应地非线性函数g(x)容易表示:
g(x)=f0*f1*f2*f3*f4
=f0*f1*f2*h0(x0,…,x45)
=f0*f1*h1(x0,…,x81)
=f0*h2(x0,…,x107)
=h3(x0,…,x127)
引入函数Δk(h(x)),表示对h(x)函数中变量的下标增加k值。
g(x)中h0(x0,…,x45)、h1(x0,…,x81)、h2(x0,…,x107)、h3(x0,…,x127)具体的表示为:
非线性反馈函数g(x),t时刻的寄存器状态为{st,…,st+128}对应的更新函数:
由g(x)更新函数得到在硬件实现资源如下表:
异或门 与门
h'<sub>0</sub>(s<sub>t</sub>,…,s<sub>t+45</sub>) 23 13
h’<sub>1</sub>(s<sub>t</sub>,…,s<sub>t+81</sub>) 23*5+4=119 13*5+1=66
h'<sub>2</sub>(s<sub>t</sub>,…,s<sub>t+107</sub>) 119*6+5=719 66*6+1=397
s<sub>t+128</sub> 719*7+7=5010 397*7+1=2780
由5个级联的非线性反馈移位寄存器{f0,f1,f2,f3,f4}的更新函数硬件实现上使用了24个异或门和6个与门,相对128阶的非线性反馈移位寄存器非线性函数g(x)大大节省了硬件资源。
本发明的一个实施例还提供了一种结构可变的伪随机数生成装置,包括:数据获取模块,用于获取初始密钥、本原多项式和初始化向量;线性模块,用于根据所述本原多项式和所述初始化向量得到第一子序列;非线性模块,用于根据所述初始密钥得到第二子序列;过滤模块,用于根据所述第一子序列和所述第二子序列得到第三子序列;伪随机序列生成模块,用于根据所述第一子序列、所述第二子序列和所述第三子序列得到伪随机序列。
上述线性模块包括:结构生成单元,用于根据所述本原多项式确定线性反馈移位寄存器的结构;线性反馈移位寄存器生成单元,用于根据所述线性反馈移位寄存器的结构得到线性反馈移位寄存器;第一子序列获取单元,用于将所述初始化向量代入所述线性反馈移位寄存器得到所述第一子序列。
上述非线性模块包括:结构生成单元,用于根据初始密钥确定非线性反馈移位寄存器的结构;非线性反馈移位寄存器生成单元,用于根据所述非线性反馈移位寄存器的结构得到非线性反馈移位寄存器;第二子序列获取单元,用于将所述初始密钥代入所述非线性反馈移位寄存器得到所述第二子序列。
上述过滤模块包括:函数选取单元,用于选取过滤函数;第三子序列获取单元,用于将所述第一子序列和所述第二子序列带入所述过滤函数得到第三子序列。
上述伪随机序列生成模块包括:函数获取单元,用于获取输出函数;
伪随机序列获取单元,用于将所述第一子序列、所述第二子序列和所述第三子序列带入所述输出函数得到伪随机序列。
图3和图4为本发明实施例提供的一种结构可变的伪随机数生成装置的结构示意图。
本发明提供了一种结构可变的伪随机数生成方法及装置,采用级联的非线性反馈移位寄存器替换伪随机数生成器中一个高阶非线性反馈移位寄存器,能有效减少逻辑器件与门和异或门的使用,类Grain型的结构属于轻量级算法,易于软硬件实现。具体使用中以用户密钥来选择进行级联的非线性反馈移位寄存器的个数与长度,进而达到由密钥控制结构的目的;过滤模块使用较高相关免疫阶、均衡的布尔函数,能抵抗相关攻击,增加安全性,生成的高性能的伪随机数序列可运用到许多加密应用中。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (10)

1.一种结构可变的伪随机数生成方法,其特征在于,包括:
获取初始密钥、本原多项式和初始化向量;
根据所述本原多项式和所述初始化向量得到第一子序列;
根据所述初始密钥得到第二子序列;
根据所述第一子序列和所述第二子序列得到第三子序列;
根据所述第一子序列、所述第二子序列和所述第三子序列得到伪随机序列。
2.根据权利要求1所述的方法,其特征在于,还包括:
所述第一子序列和所述第二子序列重复更新,得到密钥流。
3.根据权利要求1所述的方法,其特征在于,根据所述本原多项式和所述初始化向量得到第一子序列,包括:
根据所述本原多项式确定线性反馈移位寄存器的结构;
根据所述线性反馈移位寄存器的结构得到线性反馈移位寄存器;
将所述初始化向量代入所述线性反馈移位寄存器得到所述第一子序列。
4.根据权利要求1所述的方法,其特征在于,根据所述初始密钥得到第二子序列,包括:
根据所述初始密钥确定非线性反馈移位寄存器的结构;
根据所述非线性反馈移位寄存器的结构得到非线性反馈移位寄存器;
将所述初始密钥代入所述非线性反馈移位寄存器得到所述第二子序列。
5.根据权利要求1所述的方法,其特征在于,根据所述第一子序列和所述第二子序列得到第三子序列,包括:
选取过滤函数;
将所述第一子序列和所述第二子序列代入所述过滤函数得到第三子序。
6.根据权利要求1所述的方法,其特征在于,根据所述第一子序列、所述第二子序列和所述第三子序列得到伪随机序列,包括:
选取输出函数;
将所述第一子序列、所述第二子序列和所述第三子序列代入所述输出函数得到伪随机序列。
7.一种结构可变的伪随机数生成装置,其特征在于,包括:
数据获取模块,用于获取初始密钥、本原多项式和初始化向量;
线性模块,用于根据所述本原多项式和所述初始化向量得到第一子序列;
非线性模块,用于根据所述初始密钥得到第二子序列;
过滤模块,用于根据所述第一子序列和所述第二子序列得到第三子序列。
伪随机序列生成模块,用于根据所述第一子序列、所述第二子序列和所述第三子序列得到伪随机序列。
8.根据权利要求7所述的装置,其特征在于,所述线性模块包括:
结构生成单元,用于根据所述本原多项式得到线性反馈移位寄存器的结构;
线性反馈移位寄存器生成单元,用于根据所述线性反馈移位寄存器的结构得到线性反馈移位寄存器;
第一子序列获取单元,用于将所述初始化向量代入所述线性反馈移位寄存器得到所述第一子序列。
9.根据权利要求7所述的装置,其特征在于,所述非线性模块包括:
结构生成单元,用于根据初始密钥得到非线性反馈移位寄存器的结构;
非线性反馈移位寄存器生成单元,用于根据所述非线性反馈移位寄存器的结构得到非线性反馈移位寄存器;
第二子序列获取单元,用于将所述初始密钥代入所述非线性反馈移位寄存器得到所述第二子序列。
10.根据权利要求7所述的装置,其特征在于,所述伪随机序列生成模块包括:
函数获取单元,用于获取输出函数;
伪随机序列获取单元,用于将所述第一子序列、所述第二子序列和所述第三子序列带入所述输出函数得到伪随机序列。
CN201910195255.0A 2019-03-14 2019-03-14 一种结构可变的伪随机数生成方法及装置 Active CN110058842B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910195255.0A CN110058842B (zh) 2019-03-14 2019-03-14 一种结构可变的伪随机数生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910195255.0A CN110058842B (zh) 2019-03-14 2019-03-14 一种结构可变的伪随机数生成方法及装置

Publications (2)

Publication Number Publication Date
CN110058842A true CN110058842A (zh) 2019-07-26
CN110058842B CN110058842B (zh) 2021-05-18

Family

ID=67316847

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910195255.0A Active CN110058842B (zh) 2019-03-14 2019-03-14 一种结构可变的伪随机数生成方法及装置

Country Status (1)

Country Link
CN (1) CN110058842B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124364A (zh) * 2020-02-10 2020-05-08 成都烨软科技有限公司 一种不同级数伪随机序列的产生装置及其产生方法
CN112507644A (zh) * 2020-12-03 2021-03-16 湖北大学 优化的sm4算法线性层电路
WO2022120999A1 (zh) * 2020-12-11 2022-06-16 清华大学无锡应用技术研究院 一种基于反馈移位寄存器阵列的序列密码算法计算***
CN114765530A (zh) * 2022-03-17 2022-07-19 西安电子科技大学 基于反馈移位寄存器的流密码相邻时钟差分能量分析方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070109154A (ko) * 2006-05-10 2007-11-15 동서대학교산학협력단 암호시스템에 사용하기 위한 클럭 조절 함수를 이용한키스트림 생성 방법
CN101355423A (zh) * 2008-09-10 2009-01-28 四川长虹电器股份有限公司 流密码生成方法
CN101019099B (zh) * 2004-09-22 2010-12-08 诺基亚公司 用于生成伪随机数的方法和装置
CN101958790A (zh) * 2010-10-09 2011-01-26 中国人民解放军信息工程大学 无线通信网络数字信息加密或解密方法
CN101996065A (zh) * 2009-08-26 2011-03-30 索尼株式会社 随机数发生器和随机数生成方法
CN102324996A (zh) * 2011-09-15 2012-01-18 西安电子科技大学 多值伪随机序列生成方法及装置
CN103235714A (zh) * 2013-04-02 2013-08-07 四川长虹电器股份有限公司 一种构造随机序列的最短线性移位寄存器的方法
US20140233733A1 (en) * 2011-06-30 2014-08-21 Orange Method of processing a data packet before transmission over a radio communications network, a method of processing a received data packet, and associated devices and systems
CN104158654A (zh) * 2014-08-25 2014-11-19 中国石油大学(华东) 一种基于交织技术的密钥流生成方法及装置
WO2016096000A1 (en) * 2014-12-17 2016-06-23 Telefonaktiebolaget Lm Ericsson (Publ) Stream ciphering technique
US9747076B1 (en) * 2014-12-04 2017-08-29 Altera Corporation Parallel pseudo random bit sequence generation with adjustable width
CN108270548A (zh) * 2017-12-08 2018-07-10 中国电子科技集团公司第三十研究所 一种Grain型流密码的判别方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101019099B (zh) * 2004-09-22 2010-12-08 诺基亚公司 用于生成伪随机数的方法和装置
KR20070109154A (ko) * 2006-05-10 2007-11-15 동서대학교산학협력단 암호시스템에 사용하기 위한 클럭 조절 함수를 이용한키스트림 생성 방법
CN101355423A (zh) * 2008-09-10 2009-01-28 四川长虹电器股份有限公司 流密码生成方法
CN101996065A (zh) * 2009-08-26 2011-03-30 索尼株式会社 随机数发生器和随机数生成方法
CN101958790A (zh) * 2010-10-09 2011-01-26 中国人民解放军信息工程大学 无线通信网络数字信息加密或解密方法
US20140233733A1 (en) * 2011-06-30 2014-08-21 Orange Method of processing a data packet before transmission over a radio communications network, a method of processing a received data packet, and associated devices and systems
CN102324996A (zh) * 2011-09-15 2012-01-18 西安电子科技大学 多值伪随机序列生成方法及装置
CN103235714A (zh) * 2013-04-02 2013-08-07 四川长虹电器股份有限公司 一种构造随机序列的最短线性移位寄存器的方法
CN104158654A (zh) * 2014-08-25 2014-11-19 中国石油大学(华东) 一种基于交织技术的密钥流生成方法及装置
US9747076B1 (en) * 2014-12-04 2017-08-29 Altera Corporation Parallel pseudo random bit sequence generation with adjustable width
WO2016096000A1 (en) * 2014-12-17 2016-06-23 Telefonaktiebolaget Lm Ericsson (Publ) Stream ciphering technique
CN108270548A (zh) * 2017-12-08 2018-07-10 中国电子科技集团公司第三十研究所 一种Grain型流密码的判别方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MARTIN HELL 等: "Grain: a stream cipher for constrained environments", 《INTERNATIONAL JOURNAL OF WIRELESS AND MOBILE COMPUTING (IJWMC)》 *
TIAN TIAN 等: "On the uniqueness of a type of cascade connection representations for NFSRs", 《DESIGNS, CODES AND CRYPTOGRAPHY 》 *
XIAO-XIN ZHAO 等: "A ring-like cascade connection and a class of NFSRs with the same cycle structures", 《DESIGNS, CODES AND CRYPTOGRAPHY 》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124364A (zh) * 2020-02-10 2020-05-08 成都烨软科技有限公司 一种不同级数伪随机序列的产生装置及其产生方法
CN112507644A (zh) * 2020-12-03 2021-03-16 湖北大学 优化的sm4算法线性层电路
CN112507644B (zh) * 2020-12-03 2021-05-14 湖北大学 优化的sm4算法线性层电路
WO2022120999A1 (zh) * 2020-12-11 2022-06-16 清华大学无锡应用技术研究院 一种基于反馈移位寄存器阵列的序列密码算法计算***
CN114765530A (zh) * 2022-03-17 2022-07-19 西安电子科技大学 基于反馈移位寄存器的流密码相邻时钟差分能量分析方法

Also Published As

Publication number Publication date
CN110058842B (zh) 2021-05-18

Similar Documents

Publication Publication Date Title
CN110058842A (zh) 一种结构可变的伪随机数生成方法及装置
CN109639428B (zh) 从位混合器构造安全散列函数的方法
US8879733B2 (en) Random bit stream generator with guaranteed minimum period
US8861725B2 (en) Random bit stream generator with enhanced backward secrecy
US20090067618A1 (en) Random number generator
WO2021233198A1 (zh) 用于执行散列算法的电路和方法
CN109981249B (zh) 基于拉链式动态散列和nlfsr的加密解密方法及装置
CN103019648A (zh) 一种带有数字后处理电路的真随机数发生器
Klapper et al. Algebraic feedback shift registers
CN111052670A (zh) 加密装置、解密装置、加密方法、解密方法、加密程序和解密程序
CN105354008A (zh) 一种随机数生成器的输出电路及输出方法
Sani et al. Creation of S-box based on a hierarchy of Julia sets: image encryption approach
AVAROĞLU et al. A novel S-box-based postprocessing method for true random number generation
Orumiehchiha et al. Cryptanalysis of RC4 (n, m) Stream Cipher
Arora et al. FPGA implementation of low power and high speed hummingbird cryptographic algorithm
WO2021232255A1 (zh) 真随机数发生器及电子设备
Berbain et al. Decim–a new stream cipher for hardware applications
Sarkar The filter-combiner model for memoryless synchronous stream ciphers
CN110086619B (zh) 密钥流生成方法及装置
Shoukat et al. Randomized substitution method for effectively secure block ciphers in IOT environment
CN110113149B (zh) 一种用于aes硬件加密***的量子秘钥扩展模块的实现方法
JP4857230B2 (ja) 疑似乱数生成装置及びそれを用いた暗号化処理装置
August et al. PudgyTurtle: Using keystream to encode and encrypt
CN205210867U (zh) 一种随机数生成器的输出电路
CN114244495B (zh) 一种基于随机掩码感染机制的aes加密电路

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
CB03 Change of inventor or designer information

Inventor after: Dong Lihua

Inventor after: Du Haodong

Inventor after: Zeng Yong

Inventor after: Chi Jie

Inventor after: Wang Sixiang

Inventor before: Dong Lihua

Inventor before: Chi Jie

Inventor before: Zeng Yong

Inventor before: Du Haodong

Inventor before: Wang Sixiang

CB03 Change of inventor or designer information
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant