windows等效于使用/ dev / urandom的这个bash命令

时间:2011-08-25 14:03:28

标签: windows bash cryptography

这个bash命令是否有一个简单的Windows等价物:

head -c 500 /dev/urandom | tr -dc abcdefghijklmnopqrstuvwxyz | head -c 9; echo

我认为主要问题是/ dev / urandom,因为我听说过CryptoAPI,但我不知道这是否足够加密。

编辑:对不起,代码用在php脚本中,%s表示字符串替换;当我问这个问题时,我忘了做那个替换。固定。

1 个答案:

答案 0 :(得分:2)

取自RFC 4086:

  

<强> 7.1.3。 Windows CryptGenRandom

     

Microsoft向广泛部署的Windows用户推荐   操作系统一般是使用CryptGenRandom伪随机   使用CryptAPI加密服务进行号码生成调用   供应商。这需要一个加密服务提供者的句柄   library,指向调用者可以提供的缓冲区的指针   熵,并返回生成的伪随机性,   并指示需要多少个八位字节的随机性。

     

Windows CryptAPI加密服务提供程序存储种子   每个用户的状态变量。当调用CryptGenRandom时,这个   与呼叫中提供的任何随机性以及各种随机性相结合   系统和用户数据,如进程ID,线程ID,系统时钟,   系统时间,系统计数器,内存状态,可用磁盘集群和   散列用户环境块。这些数据都被送到SHA-1和   输出用于为RC4密钥流设定种子。那个关键流是   用于生成请求的伪随机数据并更新   用户的种子状态变量。

     

Windows“.NET”的用户可能会发现使用它更容易   RNGCryptoServiceProvider.GetBytes方法接口。