Рейтинг:3

Являются ли PRNG функциями вывода ключей?

флаг ng

PRNG — это механизм для создания случайности из начального случайного начального числа, так что в основном это способ получить больше секретов из одного секрета.

Глядя на запись в Википедии для КДФ ты ищешь

В криптографии функция получения ключа (KDF) — это криптографический алгоритм, который выводит один или несколько секретных ключей из секретного значения, такого как основной ключ, пароль или парольная фраза.

Что звучит для меня как то, что PRNGS. Так будет ли правильно классифицировать PRNG как KDF?

Рейтинг:2
флаг ng

Хотя PRNG не совсем KDF, существует несколько конструкций KDF из PRNG (на самом деле PRF, но они эквивалентны). Это похоже на то, как (симметричное) шифрование отличается от PRG, но построить симметричное шифрование из PRG просто.

Чтобы узнать больше об этом, см. НИСТ 800-108. Есть три конструкции, перечисленные из произвольных PRF.

Обратите внимание, что есть и другие способы создания KDF. В частности, ряд KDF построен из хэшей, а не из PRF. В частности, я считаю, что PBKDF2 и Argon2 являются популярными KDF, которые используют хэши (SHA2 и Blake2), а не PRG для своего базового псевдослучайного примитива.

Рейтинг:0
флаг ph
jpa

Так будет ли правильно классифицировать PRNG как KDF?

Есть два важных отличия:

  1. Удаление любых корреляций в выходных битах, которые могут помочь скомпрометировать другие алгоритмы, использующие ключ. Криптографические PRNG удовлетворяют этому по умолчанию, но, например, ЛФСР основанные на алгоритмах нет.

  2. В случае, если ввод является паролем, желательно, чтобы KDF выполнялся в течение разумного времени. Не слишком медленно, но и не слишком быстро — это помогает повысить устойчивость к брутфорсу, когда энтропия пароля недостаточно велика. Обычно KDF предназначены для ограничения количества ускорения, доступного от специализированного оборудования, такого как графические процессоры и FPGA. С другой стороны, большинство PRNG спроектированы так, чтобы быть настолько быстрыми, насколько это возможно.

Стандарт NIST 800-108, упомянутый в другом ответе, определяет способы повторения PRNG несколько раз определенным образом. Это помогает сделать его медленнее и уменьшить любые известные или неизвестные смещения в выводе.

SAI Peregrinus avatar
флаг si
Этот ответ относится к KDF на основе пароля, а не к KDF в целом. «Обычные» KDF, такие как HKDF, используются для преобразования неоднородно случайных байтов (например, результата обмена ECDH) в однородно случайные байты и делают это максимально эффективно.
флаг ph
jpa
@SAIPeregrinus Вы правы. Я немного отредактировал ответ.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.