Maison > développement back-end > PHP7 > Explication détaillée du générateur de nombres pseudo-aléatoires CSPRNG en PHP7

Explication détaillée du générateur de nombres pseudo-aléatoires CSPRNG en PHP7

autoload
Libérer: 2023-02-17 21:04:02
original
2612 Les gens l'ont consulté

CSPRNG est un générateur de nombres pseudo-aléatoires. En tant qu'outil, les algorithmes couramment utilisés incluent MD5 ou SHA1 etc.

En PHP7, les deux fonctions CSPRNG suivantes sont introduites pour générer des entiers et des chaînes cryptographiquement sécurisés de manière multiplateforme.

  • random_bytes() - Génère des octets pseudo-aléatoires cryptographiquement sécurisés.

  • random_int() - Générez des entiers pseudo-aléatoires cryptographiquement sécurisés.

1.random_bytes()

Random_bytes() convient pour générer des mots de passe, des chaînes cryptographiquement aléatoires de n'importe quelle longueur, telles que : Générer du sel , clé ou vecteur initial.

Syntaxe :

string random_bytes ( int $length )
Copier après la connexion
  • Paramètres : length - Renvoie la longueur en octets de la chaîne aléatoire

  • Valeur de retour : Renvoie le cryptage Une chaîne avec le nombre demandé d’octets aléatoires sûrs.

Exemple :

<?php
$bytes = random_bytes(5);
print(bin2hex($bytes));//随机生成
?>
Copier après la connexion

2.random_int()

Il est très important que random_int() produise des résultats adaptés à utilisez un entier aléatoire crypté.

Syntaxe :

int random_int ( int $min , int $max )
Copier après la connexion
  • min - Renvoie la valeur minimale, qui doit être PHP_INT_MIN ou supérieure

  • max - Renvoie la valeur maximale, il doit être inférieur ou égal à PHP_INT_MAX

Exemple :

<?php
print(random_int(100, 999));//随机生成100-999的数
echo "<br/>";
print(random_int(-1000, 0));//随机生成-100至0的数
?>
Copier après la connexion

Recommandé : tutoriel vidéo php tutoriel php7

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal