PHP Mcrypt错误:无法打开源设备

时间:2013-02-03 19:03:32

标签: php mcrypt

由于某种原因,我从PHP 5.2.8降级为PHP 5.4.2,我启用了mcrypt扩展程序,但是当我运行函数mcrypt_create_iv ($size, MCRYPT_DEV_RANDOM)时,它无法正常执行,我收到以下警告

Warning: mcrypt_create_iv() [function.mcrypt-create-iv]:Cannot open source device

请问如何解决此问题?谢谢你的任何建议。

3 个答案:

答案 0 :(得分:3)

出现此问题是因为MCRYPT_DEV_URANDOM仅在Windows上受PHP version 5.3.0支持,这就是为什么它在降级之前一直运行良好。

我改为使用以前版本的MCRYPT_RAND,问题解决了。

答案 1 :(得分:1)

  

找到文件includes / CryptRandom.php。找到以下行   (可能在第285行附近):$ iv = mcrypt_create_iv($ rem,   MCRYPT_DEV_URANDOM);将其更改为:$ iv = mcrypt_create_iv($ rem,   MCRYPT_RAND);

Source

答案 2 :(得分:0)

检查设备文件(如果是Linux):

/dev/random