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 )
<?php print(random_int(100, 999));//随机生成100-999的数 echo "<br/>"; print(random_int(-1000, 0));//随机生成-100至0的数 ?>
以上是詳解PHP7中的偽隨機數產生器CSPRNG的詳細內容。更多資訊請關注PHP中文網其他相關文章!