OS服务——加密——随机数生成

本文介绍了加密安全的随机数生成API在加密和非加密场景的应用,强调了FIPS 140-2标准的重要性。硬件随机数生成器在具备支持的平台上的使用,以及CTR-DRBG算法作为替代方案。还提到了Kconfig选项,用于配置不同的随机数生成源,如测试用的非随机API和加密安全的硬件或软件生成器。

随机数生成

随机API子系统在加密和非加密安全实例中提供随机数生成API。使用哪种随机API是基于随机数的加密要求的。如果需要非加密值,非加密api将更快地返回随机值。

加密安全的随机函数应符合FIPS 140-2[NIST02]推荐的算法。基于硬件的随机数生成器(RNG)可以在具有适当硬件支持的平台上使用。没有硬件RNG支持的平台应使用CTR-DRBG算法。该算法可以由TinyCrypt或mbedTLS提供,具体情况取决于您的应用程序性能和资源需求。

注意:

CTR-DRBG生成器需要一个熵源来建立和维护PRNG的加密安全。

Kconfig Options

这些选项可以在以下路径subsys/random/Kconfig.中找到。

随机生成器

对于测试,此选项允许随机数api返回不是真正随机的值。

随机数生成器选择组允许通过RNG_GENERATOR_CHOICE选择组为系统选择RNG源函数。可以使用以下方法在SOC或board.defconfig文件中指定覆盖默认值:

choice RNG_GENERATOR_CHOICE
        default XOSHIRO_RANDOM_GENERATOR
endchoice

可用的随机数生成器包括:

  • CONFIG_TIMER_RANDOM_GENE
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值