Я хочу знать вероятность получения того же секрета, если он был сгенерирован с помощью следующей функции
const crypto = require('crypto');
const generateSecret = () => {
const buffer = await crypto.randomBytes(8);
return buffer.toString('hex').slice(0, 4);
}
Но я не уверен, какой диапазон символов можно создать с помощью buffer.toString('hex')
.Это все буквенно-цифровые символы?В данном случае это 62 символа (строчные + прописные + цифры).Если есть 62 символа, то (62 + 4 - 1)! / (4! * (62 - 1)!) Возможных комбинаций (с повторениями) или 677040. Таким образом, вероятность в этом случае составляет 1/677040 * 100
, что составляет около0.00014
%