Maison >développement back-end >tutoriel php >Comment générer des chaînes alphanumériques aléatoires sécurisées pour les liens de vérification en PHP ?
Générer une chaîne alphanumérique aléatoire et unique pour les liens de vérification en PHP
Lors de votre inscription sur un site Web, vous recevez souvent un e-mail contenant un lien pour vérifier votre compte. Ce lien nécessite une chaîne unique et aléatoire pour garantir son authenticité. Voici comment générer une telle chaîne en PHP.
Utilisation de la bibliothèque standard PHP 7 (recommandée)
PHP 7 a introduit la fonction random_bytes($length) pour générer un pseudo sécurisé cryptographiquement. -octets aléatoires.
$bytes = random_bytes(20); var_dump(bin2hex($bytes));
PHP 5 (Obsolète)
Pour les versions PHP obsolètes, utilisez bin2hex(openssl_random_pseudo_bytes($bytes)), qui génère une chaîne alphanumérique aléatoire de longueur = $bytes * 2.
Fonction améliorée de sécurité cryptographique
La fonction suivante satisfait tous les critères de sécurité :
function getToken($length) { $token = ""; $codeAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; $max = strlen($codeAlphabet); for ($i = 0; $i < $length; $i++) { $token .= $codeAlphabet[crypto_rand_secure(0, $max - 1)]; } return $token; }
crypto_rand_secure($min, $max) utilise openssl_random_pseudo_bytes pour générer un nombre aléatoire entre $min et $max. getToken($length) crée un alphabet personnalisé et génère une chaîne de longueur $length.
Conclusion
En utilisant ces fonctions, vous pouvez générer des chaînes aléatoires et uniques robustes pour diverses fins liées à la sécurité, telles que des liens de vérification et des jetons de récupération de mot de passe.
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!