Je génère un code de vérification à utiliser pour l'activation du compte. Vous avez probablement déjà vu ce genre de chose auparavant.Une chaîne aléatoire est un bon code de vérification
Ma question: si je devais générer ce code avec une formule complexe comme celui-ci:
md5(md5(time().'helloguys'.rand(0,9999)));
Est-il vraiment mieux que générer juste une chaîne aléatoire de 32 caractères et chiffres comme gj3dI3OGwo5Enf...
?
Vous pouvez envisager base32 l'encodage de votre résultat afin qu'il soit plus facile pour vos utilisateurs de faire la distinction entre les personnages qui ressemblent dans certains polices. –
En plus de générer une valeur aléatoire (c'est-à-dire un numéro de vérification), si 2 utilisateurs s'enregistrent et génèrent le même code de vérification par accident, vous pouvez souhaiter traiter un tel cas. Si l'unicité est importante, je pense que même mt_rand() pourrait ne pas suffire. –
Je pense que les codes de vérification seraient stockés dans une base de données - mettez une clé unique sur la colonne, et avant d'insérer le code de vérification, vérifiez qu'elle existe déjà dans la base de données et continuez à générer de nouvelles clés. n'a pas été utilisé précédemment. –