«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > PHP генерирует безопасную случайную буквенно -цифровую строку метод

PHP генерирует безопасную случайную буквенно -цифровую строку метод

Опубликовано в 2025-04-18
Просматривать:103

How Can I Generate Secure Random Alphanumeric Strings in PHP?

генерирование случайных, уникальных буквенно -цифровых строков

в различных приложениях, таких как ссылки проверки аккаунта, это важно для создания уникальных и случайных строк, состоящих из чисел и букв. Вот как вы можете достичь этого в PHP:

php 7

php 7 представляет функцию random_bytes ($ length), чтобы обеспечить криптографически безопасные псевдо-радовые байты. Пример:

$bytes = random_bytes(20);
var_dump(bin2hex($bytes));

это даст выходной как:

string(40) "5fe69c95ed70a9869d9f9af7d8400a6673bb9ce9"

для Php 5 рекомендуется использовать openssl_random_pseudo_bytes () вместо этого, что генерирует криптографически безопасные токены. Простое решение:

bin2Hex (openssl_random_pseudo_bytes ($ bytes))

bin2hex(openssl_random_pseudo_bytes($bytes))
более безопасный подход

для улучшения безопасности, следующая функция может генерировать случайную, уникальную, уникальную ряд. getToken ($ длина) { $ codealphabet = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789"; $ max = strlen ($ codealphabet); // отредактировано для ($ i = 0; $ i & lt; $ length; $ i) { $ token. = $ codealphabet [crypto_rand_secure (0, $ max-1)]; } вернуть $ токен; }

Этот подход включает в себя crypto_rand_secure ($ min, $ max) в качестве замены в rand () или mt_rand (), используя openssl_random_pseudo_bytes, чтобы гарантировать случайность. &&&]]]

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3