OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » AN4230 应用笔记 使用 NIST 统计测试套件验证 STM32 微控制器

共1条 1/1 1 跳转至

AN4230 应用笔记 使用 NIST 统计测试套件验证 STM32 微控制器随机数生成

高工
2017-10-24 18:29:40    评分

前言

很多标准都规定了构造要求和参考、随机数发生器(RNG)的验证和使用,以便检验其生成的输出是否是真正的随机数。

本应用笔记中包含的指南用于检验所选STM32微控制器中嵌入的随机数发生器外设生成的数字的随机性。本次验证是基于美国国家标准技术局(NIST)统计测试套件(STS) SP 800-22rev1a(2010年4月)进行的。

本文档结构如下:

• STM32 微控制器随机数发生器概述 (请参见第 1 节 )

• NIST SP800-22b 测试套件 (请参见第 2 节)

• 运行 NIST SP800-22b 测试和分析需要执行的步骤 (请参见第 3 节)


目录

1 STM32微控制器随机数发生器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.1 前言 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2 STM32 微控制器实施说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2.1 真随机数发生器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 NIST SP800-22b 测试套件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.1 前言 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2 NIST SP800-22b 测试套件说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3 NIST SP800-22b 测试套件运行和分析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.1 固件说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.1.1 在 STM32 微控制器端 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.1.2 在 NIST SP800-22b 测试套件端 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.2 NIST SP800-22b 测试套件步骤 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.2.1 第一步:随机数发生器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.2.2 第二步:NIST 统计测试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.2.3 第三步:测试报告 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4 结论 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

附录 A 附加信息. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

版本历史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22



图 1. 框图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

图 2. 基于 NIST 测试套件的二进制序列随机性偏差测试框图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

图 3. 主 sts-2.1.1 屏幕 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

图 4. 文件输入屏幕 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

图 5. 统计测试屏幕 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

图 6. 参数调整屏幕 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

图 7. 位流输入 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

图 8. 输入文件格式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

图 9. 统计测试正在进行中 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

图 10. 统计测试完成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13


图片索引1 STM32 微控制器随机数发生器

1.1 前言

为加密应用程序使用的随机数发生器(RNG)通常会生成由随机的0或1位组成的序列。

随机数发生器基本上分为两类,分别是:

1.确定性随机数发生器或伪随机数发生器(PRNG):

确定性RNG包含的算法会通过名为种子的初始值生成位序列。为确保向前不可预测性,获取种子时必须多加留意。如果已知种子和生成算法,PRNG生成的数值是完全可预测的。由于很多情况下生成算法是公开可用的,因此种子必须保密,并通过TRNG来生成。

2. 非确定性随机数发生器或真随机数发生器(TRNG):

非确定性RNG生成的随机性取决于一些不受人为控制的不可预测物理源(即熵源)。

在STM32微控制器上采用的RNG硬件外设以及在第 1.2.1节中介绍的RNG硬件外设属于真随机数发生器。

1.2 STM32 微控制器实施说明

1.2.1 真随机数发生器

下表列出的是嵌入了RNG硬件外设的STM32微控制器线列:


--------------------------------------

查看更多,下载此文档 >>





关键词: AN4230     统计     测试     STM32     控制器     发生    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]