首页  >  文章  >  后端开发  >  详解PHP7中的伪随机数产生器CSPRNG

详解PHP7中的伪随机数产生器CSPRNG

autoload
autoload原创
2021-03-19 10:56:252463浏览

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的数
?>

推荐:php视频教程 php7教程

以上是详解PHP7中的伪随机数产生器CSPRNG的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn