openssl_random_pseudo_bytes 的替代方案 - 生成安全的唯一令牌
Alternative for openssl_random_pseudo_bytes - generate secured unique tokens
我的服务器主机有 php 版本 5.2.17。我正在使用随机标记并在我的函数中使用 openssl_random_pseudo_bytes 。
openssl_random_pseudo_bytes( $length);
正在尝试 运行 来自 Scott's answer 的代码。
它 运行 在我的本地主机上 php 版本更高。
除了升级我的服务器 php 版本。 openssl_random_pseudo_bytes
的替代函数是什么?
更新: 使用 mt_rand, rand or uniqid
,如何生成安全的唯一令牌?
截至目前,我正在使用这行代码:
$token = md5(uniqid(rand(), true));
$thetoken = $token.$user_id;
感谢您的帮助!
我正在使用 5.6,但也一直在寻找创建安全和唯一令牌的方法,因为我无法使 openssl_random_pseudo_bytes 功能正常工作。我在 github 的 paragonie random_compat 上有 运行,这应该允许你使用 random_bytes() 和 random_int()(两者都只适用于 PHP7).他们确实说理论上它应该能够与 PHP 的旧 5.x 版本一起使用,尽管他们确实建议更新到 php 的当前稳定版本。 https://github.com/paragonie/random_compat
这是另一个堆栈溢出答案的 link,建议使用 random_bytes() as $token = bin2hex(random_bytes($length));
best practice to generate random token for forgot password
还有 link 我发现暗示 paragonie 的 random_compat
https://akrabat.com/random_bytes-in-php-5-6-and-5-5/
https://paragonie.com/blog/2015/07/how-safely-generate-random-strings-and-integers-in-php
openssl_random_pseudo_bytes(10)
的替代方法是这样的 decbin(rand(0,1024))
in php 5.X
我的服务器主机有 php 版本 5.2.17。我正在使用随机标记并在我的函数中使用 openssl_random_pseudo_bytes 。
openssl_random_pseudo_bytes( $length);
正在尝试 运行 来自 Scott's answer 的代码。
它 运行 在我的本地主机上 php 版本更高。
除了升级我的服务器 php 版本。 openssl_random_pseudo_bytes
的替代函数是什么?
更新: 使用 mt_rand, rand or uniqid
,如何生成安全的唯一令牌?
截至目前,我正在使用这行代码:
$token = md5(uniqid(rand(), true));
$thetoken = $token.$user_id;
感谢您的帮助!
我正在使用 5.6,但也一直在寻找创建安全和唯一令牌的方法,因为我无法使 openssl_random_pseudo_bytes 功能正常工作。我在 github 的 paragonie random_compat 上有 运行,这应该允许你使用 random_bytes() 和 random_int()(两者都只适用于 PHP7).他们确实说理论上它应该能够与 PHP 的旧 5.x 版本一起使用,尽管他们确实建议更新到 php 的当前稳定版本。 https://github.com/paragonie/random_compat
这是另一个堆栈溢出答案的 link,建议使用 random_bytes() as $token = bin2hex(random_bytes($length));
best practice to generate random token for forgot password
还有 link 我发现暗示 paragonie 的 random_compat https://akrabat.com/random_bytes-in-php-5-6-and-5-5/ https://paragonie.com/blog/2015/07/how-safely-generate-random-strings-and-integers-in-php
openssl_random_pseudo_bytes(10)
的替代方法是这样的 decbin(rand(0,1024))
in php 5.X