MCRYPT_DEV_URANDOM无法在实时服务器中运行

时间:2016-03-02 10:37:29

标签: php

这是我的密码加密脚本:

/*....salting starts........*/
  $cost = 10;
  $salt = strtr(base64_encode(mcrypt_create_iv(16, MCRYPT_DEV_URANDOM)), '+', '.');
  //$salt = sprintf("$2a$%02d$", $cost) . $salt;
  $options = array('cost' => $cost,'salt' => $salt);

  //$password = crypt($data['password'], $salt);
  $hash = password_hash($password, PASSWORD_DEFAULT,$options);
  /*..........salting ends..............*/

和这样的验证:

if (password_verify($this->password, $hashAndSalt)==true) {
         $status = "verified";
        $logged_in = 1;
        }else
        {
        $status = "not verified";
          $logged_in = 0;
        }

以上工作完全正常localhost但不适用于实时服务器。  我想我的服务器低于PHP 5.0,我猜MCRYPT_DEV_URANDOM只适用于php 5.6及以上版本?

请问MCRYPT_DEV_URANDOM的替代方案是什么,而无需更改验证方法?

0 个答案:

没有答案