Рейтинг:2

Процесс шифрования Salsa20

флаг cn

Я изучаю алгоритм Salsa20, и мне было интересно, не могли бы вы помочь мне понять функцию расширения. Я не понимаю, что делает Pos или позиция потока, как я читал в других местах, предназначено ли это для рандомизации данных, аналогично одноразовому номеру? Любая помощь будет принята с благодарностью!

Начальное состояние

Рейтинг:1
флаг cn

Цель состоит в том, что вы выбираете случайный ключ и используете его для шифрования сообщений, независимо от того, что «сообщение» может означать для вашего приложения. После каждого 512-битного блока вы увеличиваете позицию, а после каждого сообщения вы увеличиваете одноразовый номер и сбрасываете позицию на 0.

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

Ни одноразовый номер, ни позиция не предназначены для добавления случайности, просто уникальности. Они слишком короткие, чтобы их можно было безопасно выбирать наугад. Существуют варианты Salsa/ChaCha с более длинным одноразовым номером, если вам нужно, чтобы он был случайным.

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

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