C ++麦克风输入为随机种子

时间:2014-10-09 04:30:52

标签: c++ random cryptography microphone

我目前正在玩一些加密(在这种情况下为RSA公钥),为了生成随机密钥,我需要随机输入。我认为麦克风将是相对无法复制的数据的良好来源。有没有办法以可用于播种srand的方式从麦克风中读取原始数据?有没有更好的方法来获得纯粹随机的种子,如果是这样,我该怎么做?

我在带有内置麦克风的笔记本电脑上运行Windows 8,我正在使用g ++编译器。

1 个答案:

答案 0 :(得分:1)

尝试自己从硬件中获取种子。操作系统比如何获得高质量的随机性知识要多得多。

在Linux上,正确的方法是阅读/dev/urandom(不是/dev/random;它实际上毫无价值)

在Windows上,Google表示您应该使用CryptGenRandom功能。