编程学习网 > 编程教程 > PHP7 教程
2016
09-20

PHP7 CSPRNG

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

在PHP7,以下两个新的函数引入以产生一个跨平台的方式加密安全整数和字符串。
  • random_bytes() - 生成加密安全伪随机字节。

  • random_int() - 生成加密安全伪随机整数。

random_bytes()

random_bytes()适合于使用来生成密码,密码学随机的任意长度的字符串,如:生成 salt,密钥或初始向量。

语法

string random_bytes ( int $length )

参数

  • length - 返回随机串的字节长度

返回值

  • 返回包含加密安全随机字节的请求数量的字符串。

错误/异常

  • 如果无法找到随机性的适当源,将引发异常
  • 如果给定参数无效,TypeError将被抛出
  • 如果给出字节长度无效,错误将被抛出

示例

<?php
$bytes = random_bytes(5);
print(bin2hex($bytes));
?>

这将在浏览器产生以下输出 -

54cc305593

random_int()

random_int()产生适合于用于结果是非常重要的加密随机整数。

语法

int random_int ( int $min , int $max )

参数

  • min - 返回最小值,它必须是PHP_INT_MIN或更大的值

  • max - 返回最大值,它必须是小于或等于PHP_INT_MAX

返回值

  • 返回最小值(min)到最大(max)的范围内,包括加密安全随机整数。

错误/异常

  • 如果无法找到随机性一个适当的源,将引发异常
  • 如果给定参数无效,TypeError 将被抛出
  • 如果 max 小于 min 时,错误将被抛出

示例

<?php
print(random_int(100, 999));
print("
");
print(random_int(-1000, 0));
?>

这将在浏览器产生以下输出 -

614
-882

扫码二维码 获取免费视频学习资料

编程学习