Я ищу 6 случайных шестнадцатеричных символов и использую Ruby's SecureRandom
SecureRandom.hex(3)
вернет 6 шестнадцатеричных символов, распакованных из 3 байтов случайных данных.
Вопрос в том, будет ли SecureRandom.hex(6)[0,6]
возвращать 6 шестнадцатеричных символов, которые являются более случайными, поскольку до распаковки было 6 байтов случайных данных?В этом отношении SecureRandom.hex(16)[0,6]
будет еще более случайным?
Для моего приложения мне нужны только 6 символов с более чем 16 миллионами уникальных значений, но я хочу шансы на столкновение с числом, которое уже было выбранобыть как можно ниже.Таким образом, использование большего n
для случайных байтов улучшит распределение случайных значений в пространстве или это не нужно?