CSPRNG 即伪随机数产生器,作为一个工具,常用的算法有 MD5
或者 SHA1
等。
在 PHP7 中,引入了以下两个 CSPRNG 函数,通过跨平台方式生成加密安全的整数和字符串。
-
random_bytes()
– 生成加密安全的伪随机字节。 -
random_int()
– 生成加密安全的伪随机整数。
1.random_bytes()
random_bytes()适合于使用来生成密码,密码学随机的任意长度的字符串,如:生成 salt,密钥或初始向量。
语法:
string random_bytes ( int $length )
-
参数:length – 返回随机串的字节长度
-
返回值:返回包含加密安全随机字节的请求数量的字符串。
示例:
<?php $bytes = random_bytes(5); print(bin2hex($bytes));//随机生成 ?>
2.random_int()
random_int()产生适合于用于结果是非常重要的加密随机整数。
语法:
int random_int ( int $min , int $max )
-
min – 返回最小值,它必须是PHP_INT_MIN或更大的值
-
max – 返回最大值,它必须是小于或等于PHP_INT_MAX
示例:
<?php print(random_int(100, 999));//随机生成100-999的数 echo "<br/>"; print(random_int(-1000, 0));//随机生成-100至0的数 ?>
原创文章,作者:JZBRG,如若转载,请注明出处:http://www.wangzhanshi.com/n/9740.html