生成加密安全令牌
为了生成用于访问我们的API的32个字符的令牌,我们目前使用:
$token = md5(uniqid(mt_rand(), true));
我已经读到,这种方法不是基于密码的安全性,因为它基于系统时钟,这openssl_random_pseudo_bytes
将是一个更好的解决方案,因为它很难预测。
如果是这种情况,等效代码将是什么样?
我猜是这样的,但是我不知道这是否对…
$token = md5(openssl_random_pseudo_bytes(32));
我应该传递给函数什么长度也有意义?
回答:
这是正确的解决方案:
$token = bin2hex(openssl_random_pseudo_bytes(16));# or in php7
$token = bin2hex(random_bytes(16));
以上是 生成加密安全令牌 的全部内容, 来源链接: utcz.com/qa/400349.html