Solaris dev / random

时间:2010-07-27 18:16:58

标签: random solaris numbers generator

喂,

哪种算法实现了Solaris的dev / random?是Yarrow-160还是Yarrow-256还是算法和Linux一样?有文档/链接吗?我已经看了很多,但我找不到它。提前谢谢。

2 个答案:

答案 0 :(得分:1)

也许OpenSolaris源代码,特别是/src/uts/common/crypto/io/swrand.c,有一些线索:

/*
 * Software based random number provider for the Kernel Cryptographic
 * Framework (KCF). This provider periodically collects unpredictable input
 * from external sources and processes it into a pool of entropy (randomness)
 * in order to satisfy requests for random bits from kCF. It implements
 * software-based mixing, extraction, and generation algorithms.
 *
 * A history note: The software-based algorithms in this file used to be
 * part of the /dev/random driver.
 */

略读该文件:PRNG从启动时的高分辨率时间初始化,当前TOD和物理内存状态和值是通过重复的SHA1散列和其他熵池混合(在yarrow规范中“搅拌”)生成的。 SHA1是160位。

该文件也具有相关性:

#define MINEXTRACTBITS      160 /* Min entropy level for extraction */

从简短的分析来看,Solaris {/dev/random看起来像是Yarrow-160实现。

答案 1 :(得分:0)

此链接可能会有所帮助:Solaris /dev/random