[发明专利]使用多个熵源的随机数生成器和用于生成随机数的方法在审
| 申请号: | 202010336741.2 | 申请日: | 2020-04-24 |
| 公开(公告)号: | CN111966328A | 公开(公告)日: | 2020-11-20 |
| 发明(设计)人: | 布鲁斯·默里;马里奥·兰贝格尔 | 申请(专利权)人: | 恩智浦有限公司 |
| 主分类号: | G06F7/58 | 分类号: | G06F7/58 |
| 代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 周祺 |
| 地址: | 荷兰埃因霍温高科*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 使用 多个熵源 随机数 生成器 用于 生成 方法 | ||
提供一种用于提供随机数生成器的装置。所述装置可以包括真随机数生成器、至少一个确定性随机数生成器和异或逻辑函数。所述TRNG具有输出,并且所述至少一个DRNG具有输出。所述异或逻辑函数具有:第一输入,其耦合到所述TRNG的所述输出;和第二输入,其耦合到所述至少一个DRNG的所述输出;以及输出,其用于提供随机数。所述TRNG和所述至少一个DRNG可以包括单独且独立的熵源。还提供一种用于生成随机数的方法。
技术领域
本公开总体上涉及随机数生成,并且更具体地说,涉及使用多个熵源的随机数生成器和用于生成随机数的方法。
背景技术
随机数生成对于几乎所有的安全系统都是重要的。通常有两种主要类型的随机数生成器,真随机数生成器和伪随机数生成器。真随机数生成器(TRNG)可以使用熵源(例如来自集成电路的热噪声或放射性物质的衰变)来生成随机数流。一种类型的伪随机数生成器,称为确定性随机数生成器(DRNG),使用算法来生成随机数。一些DRNG还包括熵源来提供随机种子,从所述随机种子生成随机数。种子可以包括有限的位串序列。DRNG可能难以提供足够的随机性来支持安全应用的安全要求。
发明内容
根据本发明的第一方面,提供一种装置,包括:
真随机数生成器,其具有输出;
第一确定性随机数生成器,其具有输出;和
异或逻辑函数,其具有:第一输入,其耦合到所述真随机数生成器的所述输出;以及第二输入,其耦合到所述确定性随机数生成器的所述输出;以及输出,其用于提供随机数。
在一个或多个实施例中,所述第一确定性随机数生成器包括:
熵源,其包括用于生成种子值的多个存储器单元位;
散列函数,其耦合到所述熵源,用于散列所述种子值;和
确定性随机位生成器,用于接收已散列种子值并且用于生成多个随机位。
在一个或多个实施例中,所述多个存储器单元位包括多个静态随机存取存储器单元位。
在一个或多个实施例中,所述装置还包括第二确定性随机数生成器,所述第二确定性随机数生成器的输出耦合到所述异或逻辑函数的第三输入。
在一个或多个实施例中,所述第一确定性随机数生成器和所述第二确定性随机数生成器中的每一个都包括:
熵源,其包括用于生成种子值的多个存储器单元位;
散列函数,其耦合到所述熵源,用于散列所述种子值;和
确定性随机位生成器,用于接收已散列种子值并且用于生成多个随机位。
在一个或多个实施例中,所述第一确定性随机数生成器和所述第二确定性随机数生成器的所述熵源是静态随机存取存储器阵列的单独的非重叠位段。
在一个或多个实施例中,所述真随机数生成器的熵源不同于所述第一确定性随机数生成器和所述第二确定性随机数生成器的所述熵源。
在一个或多个实施例中,所述装置包括用于智能卡或移动电话中的安全元件。
根据本发明的第二方面,提供一种随机数生成器,包括:
真随机数生成器,其具有输出;
多个确定性随机数生成器,所述多个确定性随机数生成器中的每一个确定性随机数生成器都包括:
熵源,其用于生成种子值;
散列函数,其耦合到所述熵源,用于散列所述种子值;和
确定性随机位生成器,用于接收已散列种子值和输出;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于恩智浦有限公司,未经恩智浦有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010336741.2/2.html,转载请声明来源钻瓜专利网。





