1、书 书 书犐 犆犛 犆犆犛犔 中华人民共和国密码行业标准犌犕犜 随机数发生器总体框架犌犲 狀 犲 狉 犪 犾犳 狉 犪犿犲狑狅 狉 犽狅 犳狉 犪 狀 犱 狅犿狀 狌犿犫 犲 狉犵 犲 狀 犲 狉 犪 狋 狅 狉 发布 实施国家密码管理局发 布目次前言范围规范性引用文件术语和定义随机数发生器设计总体框架 概述 熵源 熵评估 后处理 检测附录(资料性)随机数发生器标准体系框架参考文献犌犕犜 前言本文件按照 标准化工作导则第部分:标准化文件的结构和起草规则的规定起草。请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别专利的责任。本文件由密码行业标准化技术委员会提出并归口。本文件起草单位
2、:北京宏思电子技术有限责任公司、北京智芯微电子科技有限公司、中国科学院数据与通信保护研究教育中心、太原理工大学、科大国盾量子技术股份有限公司、安徽问天量子科技股份有限公司、中国电子科技集团公司第三十研究所、国家密码管理局商用密码检测中心。本文件主要起草人:唐晓柯、甘杰、胡晓波、于艳艳、张文婧、马原、王云才、张建国、赵梅生、刘婧婧、徐兵杰、罗鹏、毛颖颖。犌犕犜 随机数发生器总体框架范围本文件是随机数发生器设计的总体上位标准,规定了随机数发生器设计总体框架。本文件适用于随机数发生器的研制、开发、检测,亦可推动随机数发生器相关标准的制定。规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文件
3、必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。信息安全技术术语 信息安全技术二元序列随机性检测方法 密码产品随机数检测要求 密码随机数生成模块设计指南 软件随机数发生器设计指南 密码术语术语和定义 、和 界定的以及下列术语和定义适用于本文件。熵源犲 狀 狋 狉 狅 狆 狔狊 狅 狌 狉 犮 犲产生输出的部件、设备或事件。当该输出以某种方法捕获和处理时,产生包含熵的比特串。来源:,热噪声狋 犺 犲 狉犿犪 犾狀 狅 犻 狊 犲在元器件(例如运算放大器、反向偏压二极管或电阻器)中,通常情况下不希望出现的,但却
4、内在产生的杂散电子信号(又称“白噪声”)。注:通常都会尽力将这一现象最小化,然而由此现象的不可预测性,在随机比特流生成中,可将其作为一种熵源加以利用。来源:,混沌振荡犮 犺 犪 狅 狋 犻 犮狅 狊 犮 犻 犾 犾 犪 狋 犻 狅 狀非线性系统复杂、无序的振荡状态。注:根源于系统的局部非稳定性,表现为初值敏感性和内在随机性。犌犕犜 相位抖动狆 犺 犪 狊 犲犼 犻 狋 狋 犲 狉由时域不稳定引起的波相位的快速、短期且具有随机特性的波动。量子随机过程狇 狌 犪 狀 狋 狌犿狉 犪 狀 犱 狅犿狆 狉 狅 犮 犲 狊 狊具有内秉量子随机性的随机现象过程。注:其随机性质由量子力学原理解释和保证。用于
5、产生随机数的量子随机过程一般包括,单光子路径选择、光脉冲所包含的光子数、相邻光子间时间间隔、真空涨落、激光相位噪声、放大自发辐射噪声等。随机数发生器狉 犪 狀 犱 狅犿狀 狌犿犫 犲 狉犵 犲 狀 犲 狉 犪 狋 狅 狉产生随机二元序列的器件或程序。来源:,软件随机数发生器狊 狅 犳 狋 狑犪 狉 犲 犫 犪 狊 犲 犱犚犖犌软件密码模块(或混合密码模块的软件部件)中的随机数发生器部件,可以单独作为软件密码模块,也可以作为软件密码模块(或混合密码模块的软件部分)的一部分。来源:,随机源序列狉 犪狑狉 犪 狀 犱 狅犿狀 狌犿犫 犲 狉狊 犲 狇 狌 犲 狀 犮 犲熵源输出经数字化得到的离散随机
6、值序列。随机数序列狉 犪 狀 犱 狅犿狀 狌犿犫 犲 狉狊 犲 狇 狌 犲 狀 犮 犲数列中的每一项在已知其他项的情况下都无法被推断的一种数列。来源:,随机数发生器设计总体框架 概述随机数发生器设计框架如图所示,随机数发生器通常包括熵源、后处理及检测。在设计阶段对熵源或随机源序列进行熵评估,在产品检测及使用阶段对随机源序列或随机数序列进行有效性检验或随机性检验。犌犕犜 图随机数发生器设计框架)熵源是随机数发生器不确定性的源头,通过对不确定性进行采样量化,得到随机源序列。原则上能产生不确定性的任何方法都可以作为熵源。)熵评估对熵源、随机源序列的熵进行估计,预测得到熵的估计值。)后处理是可选的,通过后处理可以对随机源序列存在的偏差进行调整,生成符合统计检验的随机数序列。对于软件随机数发生器,后处理指初始化、种子更新、内部状态更新等部件。)检测是通过对随机源序列或随机数序列进行有效性检验或随机性检验,以保证随机数发生器的功能正确性及质量安全性。熵源熵源通过对部件、设备或者事件中的不确定性进行采样量化,得到随机源序列。熵源常用的设计原理包括相位抖动原理、热噪声直接放大原理、混沌振荡原理、量子随