Oauth 需要一个随机的 64 位无符号数字,编码为十进制格式的 ASCII 字符串.你们能帮我用php实现这个吗?谢谢
Oauth requires a random 64-bit, unsigned number encoded as an ASCII string in decimal format. Can you guys help me achieve this with php? Thanks
你可以使用两个 32 位数字、四个 16 位数字等.
You could use two 32-bit numbers, four 16-bit numbers, etc.
PHP 有 rand() 和 mt_rand() 但是标准没有指定它们提供多少随机位(尽管它们可以借助 getrandmax() 和 mt_getrandmax(),分别.)
PHP has rand() and and mt_rand() but how many random bits they supply isn't specified by the standard (though they can be queried with the help of getrandmax() and mt_getrandmax(), respectively.)
因此,您最安全最简单的方法是生成 64 个随机位并一一设置.
So your safest simplest bet would be generating 64 random bits and setting them one by one.
至于使用 64 位整数,我建议使用 GMP 库,因为它有很多功能可以帮助您.
As for working with 64-bit integers, I'd recommend using the GMP library as it has a good range of functions to help you out.
您可以创建一个数字,调用 64 gmp_setbit()s 在它的连续位置上,然后使用 gmp_strval() 将其转换为字符串.
You could create a number, call 64 gmp_setbit()s on it with successive positions then convert it to a string using gmp_strval().
这篇关于如何在 PHP 中生成随机 64 位值作为十进制字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!