Ответы пользователя по тегу Криптография
  • Как генерировать случайное число на промежутке?

    barkalov
    @barkalov
    Собираете всю энтропию побитно (паравозиком) в одно сообщение. Берете хеш-функцию с подходящим размером и распределением, например, MD5 и пропускаете сообщение через нее. На выходе получите равномерно распределенное случайное 128-битное число. То есть от 0 до (2^128)-1, если представлять беззнаково. Делите (или берете остаток, если нужны целые), прибавляете - получаете нужный вам диапазон.

    PS: MD5 здесь в качестве примера, лучше не используйте его в суровом продакшене, он скомпрометирован. Выбирайте хеш-функцию с количеством внутренних состояний, соответствующим предполагаемой длине энтропии.
    Ответ написан
    9 комментариев