Если вы хотите, чтобы они были уникальными и не легко угадывались, почему бы не объединить их?
Возьмите счетчик (генерирует уникальное значение для нового сеанса) и добавьте случайные биты, сгенерированные CSPRNG . Убедитесь, что вы получили минимальное число бит , необходимое для правильного ввода.
Это должно работать и на ферме без заминок: просто добавьте префикс локального к серверу счетчика с уникальным идентификатором этого сервера.
SSSSCCCCCRRRRRR
Где S
- идентификатор сервера, который создал сеанс, C
- локальный счетчик сервера, а R
- случайное шифрование.
(Отказ от ответственности: количество букв не соответствует количеству цифр / бит, которые вы должны использовать каким-либо образом.:)
Уникальный, безопасный.