CSPRNG is a pseudo-random number generator. As a tool, commonly used algorithms include MD5
or SHA1
, etc.
In PHP7, the following two CSPRNG functions are introduced to generate cryptographically secure integers and strings in a cross-platform way.
random_bytes()
- Generate cryptographically secure pseudo-random bytes.random_int()
- Generate cryptographically secure pseudo-random integers.
1.random_bytes()
Random_bytes() is suitable for generating passwords, cryptographically random strings of any length, such as : Generate salt, key or initial vector.
Syntax:
string random_bytes ( int $length )
Parameters: length - Returns the byte length of the random string
Return value: Returns encryption A string with the requested number of safe random bytes.
Example:
<?php $bytes = random_bytes(5); print(bin2hex($bytes));//随机生成 ?>
2.random_int()
It is very important that random_int() produces results suitable for use encrypted random integer.
Syntax:
int random_int ( int $min , int $max )
min - Returns the minimum value, it must be PHP_INT_MIN or a greater value
- max - Returns the maximum value , it must be less than or equal to PHP_INT_MAX
Example:
<?php print(random_int(100, 999));//随机生成100-999的数 echo "<br/>"; print(random_int(-1000, 0));//随机生成-100至0的数 ?>
Recommended: php video tutorial php7 tutorial
The above is the detailed content of Detailed explanation of pseudo-random number generator CSPRNG in PHP7. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function