Загрузить файл
  1. base64hub
  2. Ключи и хеши
  3. Генератор случайного Base64

Генератор случайных строк Base64

Выберите число случайных байтов и формат, и генератор выдаст криптостойкие строки для токенов, солей, идентификаторов и тестовых данных. Значения берутся из криптографического генератора браузера и нигде не сохраняются.

Бесплатно без регистрации и ограничений Локально ничего не загружается Пачкой до 1000 значений за один клик Обновлено 27 окт. 2026 г.

Энтропия –Длина –

Создано через crypto.getRandomValues – криптографически стойкий генератор браузера. Ничего не сохраняется и не отправляется.

Обработка идёт в браузере. Эта страница не может никуда отправить ваши данные – откуда мы это знаем

Как сгенерировать случайный Base64

  1. Укажите в поле Байты, сколько случайности нужно: от 1 до 4096. По умолчанию 32 байта, то есть 256 бит.
  2. Выберите Формат: Base64, Base64URL (URL-safe, без дополнения) или hex. Для Base64 можно ещё включить Без дополнения (=).
  3. В поле Количество задайте, сколько значений сгенерировать сразу (до 1000, по одному на строку).
  4. Скопируйте результат, скачайте его текстовым файлом или нажмите Сгенерировать заново для нового набора. Энтропия и Длина под результатом показывают число бит случайности и количество символов.

Если нужен ключ в определённом формате, например APP_KEY для Laravel или ключ AES-256, выберите вариант в блоке Пресеты вверху; что делает каждый из них, объясняет генератор ключей Base64.

Какой длины будет результат

Случайность заключена в байтах, а формат определяет только способ их записи. Base64 упаковывает в символ 6 бит, hex – всего 4, поэтому при той же стойкости hex всегда длиннее:

БайтыБитыBase64Base64 без дополненияBase64URLHex
86412111116
1612824222232
2419232323248
3225644434364
4838464646496
64512888686128

Если число байтов делится на 3 (24, 48), = не появляется вовсе, и столбцы с дополнением и без совпадают. Когда значение попадает в URL, имя файла или cookie, берите Base64URL: + и / там пришлось бы экранировать.

Сколько байтов брать

  • Уникальные ID, ID запросов, имена загружаемых файлов: 16 байт (128 бит). Угадать такое значение или наткнуться на совпадение практически невозможно.
  • Токены сессий, API-токены, ссылки для сброса пароля: 32 байта. Дополнительный запас обходится примерно в 20 символов.
  • Соли для хеширования паролей: обычно рекомендуют 16 байт; соль не обязана быть секретной, только уникальной.
  • Тестовые данные: любой размер, а Количество заполнит файл тысячей значений за один раз.

Случайная строка стойка ровно настолько, насколько велико число её байтов. Если обрезать 44-символьное значение до 20 символов, чтобы влезло в поле, теряется больше половины энтропии, поэтому лучше выберите меньшее число байтов и используйте результат целиком.

То же самое в терминале и в коде

Все эти команды выдают 32 случайных байта в Base64 (secrets.token_urlsafe пишет их URL-safe алфавитом и без дополнения):

openssl rand -base64 32
head -c 32 /dev/urandom | base64
import base64, secrets

print(base64.b64encode(secrets.token_bytes(32)).decode())
print(secrets.token_urlsafe(32))

В Node.js crypto.randomBytes(32).toString("base64url") даёт URL-safe вариант. Ловушка с OpenSSL: больше 48 байт openssl rand -base64 переносит вывод на 64 символах, так что 64-байтовое значение приходит двумя строками. Для одной строки используйте openssl rand 64 | openssl base64 -A или уберите перенос, прежде чем вставлять значение в конфиг. Другие рецепты есть на страницах OpenSSL и Python.

Вопросы и ответы

Достаточно ли надёжен этот генератор для паролей и токенов?

Да. Байты даёт crypto.getRandomValues, криптографически стойкий генератор случайных чисел, встроенный в браузер. Для секретов не берите Math.random(): он не рассчитан на непредсказуемость.

Как получить случайную строку Base64 ровно из N символов?

Возьмите N × 3 ÷ 4 байт. Если число байтов делится на 3, дополнения нет: 33 байта дают ровно 44 символа, а 48 байт – ровно 64. В остальных случаях включите Без дополнения (=), и длина будет ⌈4 × байты ÷ 3⌉.

Могут ли два сгенерированных значения совпасть?

Теоретически да, но при 16 байтах (128 бит) и больше вероятность ничтожна: чтобы совпадение стало вероятным, нужно около 2^64 значений. Поэтому 16 байт считают обычным минимумом для уникальных случайных ID.

Значения где-нибудь сохраняются?

Нет. Они существуют только в этой вкладке, пока вы их не скопируете или не скачаете, а сама страница не может делать сетевые запросы, кроме счётчика просмотров Cloudflare. После перезагрузки страницы их не останется.