CN104461452A - 片上***中生成真随机数的方法及装置 - Google Patents
片上***中生成真随机数的方法及装置 Download PDFInfo
- Publication number
- CN104461452A CN104461452A CN201310424544.6A CN201310424544A CN104461452A CN 104461452 A CN104461452 A CN 104461452A CN 201310424544 A CN201310424544 A CN 201310424544A CN 104461452 A CN104461452 A CN 104461452A
- Authority
- CN
- China
- Prior art keywords
- chip
- random number
- soc
- data
- sampling
- 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.)
- Pending
Links
Landscapes
- Complex Calculations (AREA)
Abstract
本发明公开了一种片上***中生成真随机数的方法和装置。将片上***中的单端环形振荡器的输出作为噪声时钟输入;然后将独立参考时钟作为采样时钟,在采样时钟的时钟沿对输入进行采样;接着利用Bit-to-word缓冲器将采样得到的1bit输出进行移位寄存,得到两组128位的数据信号;最后将得到的两组数据信号记为第一组和第二组随机数据,把第一组随机数据作为AES算法的明文,把第二组随机数据作为AES算法的密钥,进行AES算法,获取真随机数。本发明可以应用在信息安全领域的片上***中,不仅安全性能高,且设计周期短,容易实现。
Description
技术领域
本发明涉及一种数据采样生成方法和装置,特别涉及一种片上***中真随机数的产生方法和装置,属于信息安全领域。
背景技术
信息时代的今天,各种信息产品已经成为我们生活的不可或缺用品。这些信息产品安全性能的高低成为生产商和消费顾客关注的焦点。为了保证消费者良好的享有这些信息产品的使用成果,故要求在这些产品中必要的植入安全加密体系。随机数是以现代密码学为基础的信息安全***的基石。在现代信息安全***中,密码体制和算法本身可以被公开,访问策略可以公布,密码设备可能丢失,而***的安全性要求不受影响。整个***的安全性完全依赖于随机数序列的生成效率和质量。因此,高质量的随机数在信息安全***中的作用举足轻重,如果随机数的随机性不够安全,整个***极有可能被攻击者攻破。信息安全***中的随机数序列要求具有足够的长度和周期,以及尽可能高的熵值,即具有高度的随机性和不可预测性。
具备良好随机特性的随机数是成功实现安全加密的关键。对于许多使用伪随机数的安全***而言,伪随机数注定成为它们性能提高的瓶颈。即使一个安全***的其他部件都足够安全,使用伪随机数也会使整个***变得很脆弱、易受到攻击。真随机数因其随机性强,在数据加密、信息辅助、智能决策和初始化向量方面有着广泛应用;
因此,在片上***的设计中,若对随机数发生器性能有较高的要求,则通常采用真随机数发生器。真随机数的产生,则要借助于工程设计良好的数字物理乱源,即利用一些物理过程的随机性质。但并不是物理过程(硬件)产生的随机数就是真随机数,其中一些物理过程是否真正随机也很难说,更有些***仅仅采用硬件固定逻辑来加速伪随机数的产生。这就存在一个随机数质量检测的问题。在所有随机序列质量检测方法中,以美国国家技术标准局NIST发布的关于密码***的信息安全标准FIPS140-2和德国联邦资讯安全办公室BSI发布的AIS-31测试标准最为著名。这些标准中指定了多种测试方式对随机数序列的质量指标进行测试,以取代常规的随机性统计检验。与同类标准相比,FIPS140-2和AIS-31的合格标准更加严格。
但是,现有的真随机数的产生方法过于复杂冗长,其涉及的设备模块也多,无法在片上***快速安全实现真随机数的产生。
发明内容
本发明所要解决的技术问题是提供一种在片上***中生成真随机数的方法和装置。
为解决上述技术问题,本发明通过以下技术方案来实现:
一种片上***中生成真随机数的方法,其包括以下步骤:
将片上***中的单端环形振荡器的输出作为噪声时钟输入;
将独立参考时钟作为采样时钟,在采样时钟的时钟沿对输入进行采样;
利用Bit-to-word缓冲器将采样得到的1bit输出进行移位寄存,得到两组128位的数据信号;
将得到的两组数据信号记为第一组和第二组,把第一组中的数据作为AES算法(Advanced Encryption Standard,即高级加密标准)的明文,把第二组中的数据作为AES算法的密钥,进行AES算法运算,获取真随机数。
上述的片上***中生成真随机数的方法,其中:所述片上***中的单端环形振荡器由17级反向器环路组成。
进一步地,上述的片上***中生成真随机数的方法,其中:所述采样是采用低速波采样高速波的方式来实现真随机数的产生。
更进一步地,上述的片上***中生成真随机数的方法,其中:所述采样得到的1bit数据与AES算法之间采用Bit-to-word缓冲器来进行数据缓冲。
本发明还提出了一种片上***中生成真随机数的装置,所述装置包括:
振荡器,产生随机数序列,作为噪声时钟的输入;
采样器,对上述输入进行采样;
数据缓冲器,将采样得到的1bit输出进行移位寄存,得到两组128位的数据信号;
AES算法运算器,将上述得到的两组数据信号记为第一组和第二组随机数据,进行AES算法运算,获取真随机数。
上述片上***中生成真随机数的装置,其中所述振荡器为差分振荡器、单端振荡器或混合振荡器。
更进一步的,上述片上***中生成真随机数的装置,其中所述振荡器为单端环形振荡器。
更进一步的,上述片上***中生成真随机数的装置,其中所述采样器为采样时钟,在采样时钟的时钟沿对输入进行采样。
更进一步的,上述片上***中生成真随机数的装置,其中采样时钟每一次采样都能产生一个随机位。
更进一步的,上述片上***中生成真随机数的装置,其中所述缓冲器为Bit-to-word缓冲器。
更进一步的,上述片上***中生成真随机数的装置,其中AES算法运算器是把第一组随机数据作为AES算法的明文,把第二组随机数据作为AES算法的密钥,进行AES算法运算。
本发明技术方案的显著进步主要体现在:利用片上***中的单端环形振荡器所产生的噪声,经过采样和数据处理,得到一个随机数序列,在保证随机序列不可重复和均匀分布的基础上,再次用加密算法对随机序列进行算法运算,得到真正意义上的真随机数。本发明随机源建立在自然界的统计概论现象的基础之上,不取决于任何人为种子值,实现了真随机的产生,运用在信息安全领域的片上***中,不仅条件限制小、安全性能高而且设计周期短,是一种高性价比的设计方案。由此可见,本发明具有显著的技术进步,具有广阔的应用前景。
附图说明
图1为本发明实施例片上***中生成真随机数的方法实施过程示意图;
图2为本发明实施例片上***中生成真随机数的装置结构图。
具体实施方式
真随机数产生方法是指利用物理方法实现的随机数的产生。各种随机物理过程如宇宙噪声、电路的热噪声和放射性衰变均可用来产生随机物理信号。大多数随机数产生方案通常可以归为三类:放大电路噪声、混沌电路、振荡采样。在片上***中,缺乏有效的方法屏蔽来自电压源和衬底的噪声信号,因此无法采用放大电路噪声法;在有确定性噪声存在的情况下,由于在采样过程中伴随着非线性的混沌现象,所以本发明采用了更具优越性的振荡器采样法,与其他两种方法相比,其更简单、更易实现。
本发明是一种片上***中生成真随机数的方法及装置,利用低频振荡器采样高频振荡器,从而产生随机数列,再通过Bit-to-word缓冲器来进行数据缓冲,将得到的数据进行AES加密算法运算,得到真正的随机数。
振荡器包括差分振荡器、单端振荡器和混合振荡器,通常差分振荡器对电源及基底噪声的敏感度不如单端振荡器,此外,差分振荡器设计需要客户定制的电路布局,所以无法集成到标准单元的片上***中。因此,在片上***中最简单直接的解决方案通常是单端环形振荡器,如图2所示,单端环形振荡器的输出作为噪声时钟输入,即图1的步骤S1。所述单端环形振荡器由17级反向器环路组成。
具体来说如下:振荡器采样的方法是利用自由振荡器的相位噪声产生随机序列(理想情况下噪声是MOSFET热噪声的附产物);自由振荡器的输出作为噪声时钟输入,独立参考时钟作为采样时钟(图2),在采样时钟的时钟沿对输入进行采样;自由振荡器的相位抖动使得采样具有值具有不确定性,理想的情况每一次采样都能产生一个随机位;该随机性可以通过人为地选择噪声时钟和采样时钟频率比例来调整,即步骤S2。所述采样是采用低速波采样高速波的方式来实现真随机数的产生。
再进一步来看,在实际设计产生真随机数方法中,还要对随机源产生的随机数进行处理,使输出的随机序列能够更好的满足随机性检验。因此本发明还包含数据缓冲器Bit-to-word Buffer,该缓冲器的功能是将采样得到的1bit输出进行移位移存,得到两组128位的随机序列,即步骤S3。
随即,在两组128位总共256位的随机序列存入后,把这两组随机信号分别记为第一组随机数据和第二组随机数据。将第一组随机数据作为AES算法中的明文,将第二组随机数据作为AES算法的密钥,在AES算法运算器中进行一次完整的AES运算,即为步骤S4。经过此算法后,得到最终的真随机数。
从上述文字表述并结合附图可以看到,本发明利用片上***单端环形振荡器所产生的噪声,经过采样和数据缓存,产生真正的随机序列,在保证随机序列不可重复和均匀分布的基础上,再次用加密算法对随机序列进行算法运算,得到真正意义上的真随机数。本发明随机源建立在自然界的统计概论现象的基础之上,不取决于任何人为种子值,实现了真随机数发生器,运用在信息安全领域的片上***中,不仅条件限制小、适用面广,而且安全性能高、设计周期短,属于一种高性价比的设计方案。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (11)
1.一种片上***中生成真随机数的方法,其特征在于,包括以下步骤:
将片上***中的单端环形振荡器的输出作为噪声时钟输入;
将独立参考时钟作为采样时钟,在采样时钟的时钟沿对输入进行采样;
利用Bit-to-word缓冲器将采样得到的1bit输出进行移位寄存,得到两组128位的数据信号;
将得到的两组数据信号记为第一组和第二组随机数据,把第一组随机数据作为AES算法的明文,把第二组随机数据作为AES算法的密钥,进行AES算法运算,获取真随机数。
2.一种如权利要求1所述的片上***中生成真随机数的方法,其特征在于:所述片上***中的单端环形振荡器由17级反向器环路组成。
3.一种如权利要求1所述的片上***中生成真随机数的方法,其特征在于:所述将独立参考时钟作为采样时钟,在采样时钟的时钟沿对输入进行采样的步骤是采用低速波采样高速波的方式来实现真随机数的产生。
4.一种如权利要求1所述的片上***中生成真随机数的方法,其特征在于:所述采样得到的1bit数据与AES算法之间采用Bit-to-word缓冲器来进行数据缓冲。
5.一种片上***中生成真随机数的装置,所述装置包括:
振荡器,产生随机数序列,作为噪声时钟的输入;
采样器,对上述输入进行采样;
数据缓冲器,将采样得到的1bit输出进行移位寄存,得到两组128位的数据信号;
AES算法运算器,将上述得到的两组数据信号记为第一组和第二组随机数据,进行AES算法运算,获取真随机数。
6.一种如权利要求5所述的片上***中生成真随机数的装置,其特征在于:所述振荡器为差分振荡器、单端振荡器或混合振荡器。
7.一种如权利要求5所述的片上***中生成真随机数的装置,其特征在于:所述振荡器为单端环形振荡器。
8.一种如权利要求5所述的片上***中生成真随机数的装置,其特征在于:所述采样器为采样时钟,在采样时钟的时钟沿对输入进行采样。
9.一种如权利要求8所述的片上***中生成真随机数的装置,其特征在于:采样时钟每一次采样都能产生一个随机位。
10.一种如权利要求5所述的片上***中生成真随机数的装置,其特征在于:所述缓冲器为Bit-to-word缓冲器,用于将采样得到的1bit数据与AES算法之间采用Bit-to-word缓冲器来进行数据缓冲。
11.一种如权利要求5所述的片上***中生成真随机数的装置,其特征在于:AES算法运算器是把第一组随机数据作为AES算法的明文,把第二组随机数据作为AES算法的密钥,进行AES算法运算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310424544.6A CN104461452A (zh) | 2013-09-17 | 2013-09-17 | 片上***中生成真随机数的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310424544.6A CN104461452A (zh) | 2013-09-17 | 2013-09-17 | 片上***中生成真随机数的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104461452A true CN104461452A (zh) | 2015-03-25 |
Family
ID=52907573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310424544.6A Pending CN104461452A (zh) | 2013-09-17 | 2013-09-17 | 片上***中生成真随机数的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104461452A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107038015A (zh) * | 2016-11-18 | 2017-08-11 | 杭州电子科技大学 | 一种高速真随机数发生器 |
CN107577964A (zh) * | 2017-09-07 | 2018-01-12 | 西安电子科技大学 | 基于随机序列干扰和门电路路径约束的电磁信息隐藏方法 |
CN110249299A (zh) * | 2017-12-13 | 2019-09-17 | 深圳市汇顶科技股份有限公司 | 生成随机数的方法、芯片和电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1752924A (zh) * | 2005-08-18 | 2006-03-29 | 上海微科集成电路有限公司 | 基于振荡器的真随机数发生器 |
CN101162998A (zh) * | 2006-10-13 | 2008-04-16 | 上海华虹Nec电子有限公司 | 真随机数发生器 |
CN101515228A (zh) * | 2009-02-13 | 2009-08-26 | 华中科技大学 | 一种真随机数发生器 |
CN201327636Y (zh) * | 2008-10-27 | 2009-10-14 | 张润捷 | 真随机数发生器 |
CN101763239A (zh) * | 2009-12-31 | 2010-06-30 | 苏州市华芯微电子有限公司 | 随机加密方法及装置 |
CN101957741A (zh) * | 2010-10-18 | 2011-01-26 | 东南大学 | 一种基于亚阈值特性的真随机数发生器 |
CN102375722A (zh) * | 2010-08-09 | 2012-03-14 | 中国科学技术大学 | 一种真随机数生成方法及发生器 |
CN103019648A (zh) * | 2012-11-27 | 2013-04-03 | 天津大学 | 一种带有数字后处理电路的真随机数发生器 |
-
2013
- 2013-09-17 CN CN201310424544.6A patent/CN104461452A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1752924A (zh) * | 2005-08-18 | 2006-03-29 | 上海微科集成电路有限公司 | 基于振荡器的真随机数发生器 |
CN101162998A (zh) * | 2006-10-13 | 2008-04-16 | 上海华虹Nec电子有限公司 | 真随机数发生器 |
CN201327636Y (zh) * | 2008-10-27 | 2009-10-14 | 张润捷 | 真随机数发生器 |
CN101515228A (zh) * | 2009-02-13 | 2009-08-26 | 华中科技大学 | 一种真随机数发生器 |
CN101763239A (zh) * | 2009-12-31 | 2010-06-30 | 苏州市华芯微电子有限公司 | 随机加密方法及装置 |
CN102375722A (zh) * | 2010-08-09 | 2012-03-14 | 中国科学技术大学 | 一种真随机数生成方法及发生器 |
CN101957741A (zh) * | 2010-10-18 | 2011-01-26 | 东南大学 | 一种基于亚阈值特性的真随机数发生器 |
CN103019648A (zh) * | 2012-11-27 | 2013-04-03 | 天津大学 | 一种带有数字后处理电路的真随机数发生器 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107038015A (zh) * | 2016-11-18 | 2017-08-11 | 杭州电子科技大学 | 一种高速真随机数发生器 |
CN107038015B (zh) * | 2016-11-18 | 2020-04-07 | 杭州电子科技大学 | 一种高速真随机数发生器 |
CN107577964A (zh) * | 2017-09-07 | 2018-01-12 | 西安电子科技大学 | 基于随机序列干扰和门电路路径约束的电磁信息隐藏方法 |
CN107577964B (zh) * | 2017-09-07 | 2019-12-31 | 西安电子科技大学 | 基于随机序列干扰和门电路路径约束的电磁信息隐藏方法 |
CN110249299A (zh) * | 2017-12-13 | 2019-09-17 | 深圳市汇顶科技股份有限公司 | 生成随机数的方法、芯片和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106293617B (zh) | 真随机数发生器 | |
Yun-Peng et al. | Digital image encryption algorithm based on chaos and improved DES | |
CN103019648A (zh) | 一种带有数字后处理电路的真随机数发生器 | |
US8879733B2 (en) | Random bit stream generator with guaranteed minimum period | |
CN105933108B (zh) | 一种对sm4算法实现破解的方法 | |
US20120093308A1 (en) | Apparatus and method for generating random data | |
CN103049242B (zh) | 数字式真随机数发生器电路 | |
WO2021232255A1 (zh) | 真随机数发生器及电子设备 | |
US8627131B2 (en) | Hardware countermeasure against cryptographic attack | |
AVAROĞLU et al. | A novel S-box-based postprocessing method for true random number generation | |
CN104461452A (zh) | 片上***中生成真随机数的方法及装置 | |
Garipcan et al. | Design, FPGA implementation and statistical analysis of a high-speed and low-area TRNG based on an AES s-box post-processing technique | |
CN111966329B (zh) | 一种基于物理不可克隆函数puf的真随机数发生器 | |
Jothi et al. | Parallel RC4 Key Searching System Based on FPGA | |
Paul et al. | Efficient PRNG design and implementation for various high throughput cryptographic and low power security applications | |
Tupparwar et al. | A hybrid true random number generator using ring oscillator and digital clock manager | |
Abdulraheem et al. | Secure iot model based on present lightweight modified and chaotic key generator | |
Ayat et al. | On design of PUF-based random number generators | |
Ping et al. | Color image encryption based on two-dimensional cellular automata | |
Sravya et al. | The ideal block ciphers-correlation of AES and PRESENT in cryptography | |
Ping et al. | Generating high-quality random numbers by next nearest-neighbor cellular automata | |
Meka et al. | Metastability Influenced PUF for cryptographic key generation: a FPGA Approach | |
Mahantesh et al. | Design of secured block ciphers PRESENT and HIGHT algorithms and its FPGA implementation | |
Upadhyay et al. | Cryptanalysis of hardware based stream ciphers and implementation of GSM stream cipher to propose a novel approach for designing n-bit LFSR stream cipher | |
Cho et al. | Entropy test for complexity in chaotic time series |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150325 |
|
RJ01 | Rejection of invention patent application after publication |