Alternative for openssl_random_pseudo_bytes - generate secured unique tokens
我的服务器主机有5.2.17版本的PHP。我使用的是随机标记,并在函数中使用了openssl_random_pseudo_字节。
1 | openssl_random_pseudo_bytes( $length); |
尝试从Scott的答案运行此代码。
它在本地主机上运行良好,具有更高的PHP版本。除了升级我的服务器PHP版本。
更新:使用
埃多克斯1〔2〕
埃多克斯1〔3〕
谢谢你的帮助!
我正在使用5.6,但也一直在寻找创建安全和唯一令牌的方法,因为我无法让openssl_random_pseudo_bytes函数工作。我在Github遇到了Paragonie的Random_Compat,它允许您使用Random_Bytes()和Random_Int()(两者都只在php7中可用)。他们确实说,理论上,它应该能够与旧的5.x版本的PHP一起使用,尽管他们确实建议更新到当前稳定的PHP版本。https://github.com/paragonie/random_兼容
这里有一个指向另一个堆栈溢出答案的链接,建议使用random_bytes()作为$token=bin2hex(random_bytes($length));
为忘记密码生成随机令牌的最佳实践
还有我发现的暗示巴拉戈尼的随机同胞的联系。https://akrabat.com/random_bytes-in-php-5-6-和-5-5/https://paragonie.com/blog/2015/07/how-safety-generate-random-strings-and-integers-in-php
在php 5.x中,