Рейтинг:2

Практично ли создавать симметричный шифровальный шифр, требующий смены «основного» ключа для каждого открытого текста?

флаг us

Я читал о шифровальном шифре, который требует смены «основного» ключа для шифрования каждого открытого текста. Иногда это изменение зависит от открытого текста и выполняется автоматически.

Вопрос: Практично ли создавать симметричный шифровальный шифр, требующий смены «основного» ключа для каждого открытого текста?

[Изменить] Некоторые шифры берут некоторые аспекты открытого текста и включают их в ключ, что является примером автоматизации. Разве это не нормально?

Примечание. Извините, я думаю, что вопрос еще нужно уточнить.

Nat avatar
флаг de
Nat
Очевидным примером может служить одноразовый блокнот (OTP).
user2357 avatar
флаг us
@Nat Но одноразовый блокнот не так практичен
Nat avatar
флаг de
Nat
Зависит от того, для чего вы оцениваете практичность — не совсем для потоковой передачи YouTube, а для двух друзей, которые хотят поддерживать связь, предварительное совместное использование панели для текстовых диалогов требует довольно мало места и, как правило, это легко сделать.
user2357 avatar
флаг us
@Nat Спасибо.
Рейтинг:3
флаг ng

Практично ли создавать симметричный шифровальный шифр, который требует смены ключа для каждого процесса?

Как есть, это утверждение противоречит определение шифра и его ключ. Ключ определяется как вход для шифра, поэтому сам шифр не может его изменить. Что еще более важно, модели атаки (только зашифрованный текст, известный открытый текст, выбранный открытый текст, выбранный зашифрованный текст) предполагает повторное использование ключа, поэтому ключ не меняется для разных сообщений. Это важное предположение соответствует реальному полевому использованию и, возможно, восходит к Керкхоффс.

Из этого следует, что одноразовый блокнот не соответствует определению шифра. OTP в лучшем случае является методом шифрования. Если что-то на входе шифр должны быть изменены от сообщения к сообщению (что является общим), это не ключ, это Вектор инициализации. Если что-то, не являющееся входом шифра, изменяется при обработке сообщения, это не ключ шифра, это внутреннее состояние шифра (который может быть ключом внутреннего шифра).

Таким образом, нам нужно сделать одно или несколько из следующего, чтобы разобраться в вопросе:

  1. Замените слово ключ к внутреннее состояние изначально настроено на ключ шифра, что шифр теперь можно изменить. Это справедливое соответствие тому, что просили, практично, но не совсем мейнстримно. Например, имеет смысл менять ключ блочного шифра после каждого блока, чтобы предотвратить некоторые DPA-атаки.
  2. Замените слово ключ к внутреннее состояние изначально настроено как функция ключа шифра (и, возможно, другой ввод шифра, например IV). Теперь это практично и распространено (как указано в этот ответ): внутреннее состояние может быть ключом сеанса, используемым в качестве ключа внутреннего вспомогательного шифра, полученным из общего ключа шифра и измененным после некоторого количества байтов открытого текста общего шифра. Однако это меньше соответствует тому, что запрашивается, поскольку изменение является внутренним ключом, никогда не совпадающим с ключом общего шифра.
  3. Изменять шифр к метод или же устройство. Это позволяет нам свободно менять ключ шифра и игнорировать проверенные в бою, реальные проблемы, связанные с тем, что пользователи будут повторно использовать ключ, изначально предоставленный методу или устройству, независимо от того, какие предписания против этого будут сделаны. Чтобы проиллюстрировать опасность такого повторного использования, см., например, это штуковина в другой ответ. Несмотря на то, что он использует квантовое распределение ключей, ему по-прежнему требуется начальный секретный ключ (источник), отправленные традиционными способами, например, доверенным курьером. Если этот секрет используется повторно из-за того, что ссылка QKD не синхронизирована, заявление о безопасности этой штуковины разваливается.

Иногда это изменение зависит от открытого текста и выполняется автоматически.

Это не неслыханно, и нормально, по крайней мере в теории.Блочный шифр в Си-Би-Си или же CFB режим и некоторые другие шифры изменяют свое внутреннее состояние в соответствии с открытым текстом и ключом. Однако смешение открытого текста и ключа должно быть тщательно проанализировано, так как оно может быть подвержено некоторым атакам.

Paul Uszak avatar
флаг cn
Сеансовых ключей нет?
fgrieu avatar
флаг ng
@Paul Uszak: сеансовые ключи не являются «ключом» (шифра). Они являются внутренним состоянием. Я уточню это.
user2357 avatar
флаг us
@fgrieu Некоторые шифры берут некоторые аспекты открытого текста и включают их в ключ, что является примером автоматизации. Разве это не нормально?
user2357 avatar
флаг us
@fgrieu разве это не открывает дверь для создания систем шифрования с помощью prng и xor результата с открытым текстом и изменения ключа в каждом процессе, как это делают большинство хаотических шифров? На самом деле, они используют его в основном ключе, а не во внутреннем ключе.
fgrieu avatar
флаг ng
@ThePrince: Согласно определениям, которые я использую, «ключ» шифра не может быть изменен шифром. Шифр может изменить только внутреннее состояние, изначально установленное на «ключ».
user2357 avatar
флаг us
@fgrieu Итак, как насчет автоматического изменения основного ключа для каждого нового открытого текста?
fgrieu avatar
флаг ng
@ThePrince: «Автоматическая смена основного ключа для каждого нового открытого текста» не может быть _для шифра_ в соответствии с современным определением шифра и ключа, поскольку в шифре один и тот же ключ должен повторно использоваться с разными открытыми текстами. Вот почему OTP не является шифром. Ничто не мешает _устройству_шифрования_ или _методу_шифрования_ автоматически менять свой ключ для каждого открытого текста; тем не менее, если такой метод используется в шифре, ключ этого метода является внутренним состоянием шифра, изначально установленным на ключ шифра. И шифр взломан, если его нельзя безопасно использовать для разных открытых текстов с одним и тем же ключом.
user2357 avatar
флаг us
@fgrieu Большое спасибо. Я планирую отредактировать вопрос. Во-первых, я должен просмотреть кое-какой материал и хотя бы привести пример. Мне потребуется некоторое время, чтобы задать более строгий вопрос. Трудно задать твердый вопрос о рыхлой системе, т.е. е., шифры, основанные на хаосе. Я не фанат их, но я должен их криптоанализировать. В общем, я работаю над редактированием вопроса. Спасибо за терпеливость
Рейтинг:2
флаг de
Nat

тл;др Типичным примером симметричного криптопреобразования, в котором каждый раз используется другой ключ, могут быть одноразовые блокноты (OTP), где ключ является еще неиспользованным подмножеством одноразового блокнота, который является общим секретом между взаимодействующими сторонами. . Схемы с храповым механизмом могут изменять свои ключи на каждом этапе, и другие схемы также могут изменять свои ключи.


Симметричные шифры с изменяющимися ключами.

Симметричный ключ — это секрет, известный обеим сторонам. Если это будет меняться при каждом шифровании, как каждая сторона узнает новый секрет?

Возможности:

  1. Они уже знают набор ключей, которые будут использоваться. Так работает схема одноразового блокнота (OTP).

    • Люди обычно не думают о схемах одноразового блокнота как о блочном шифре, поскольку он не ограничивается работой с блоками. Тем не менее, он может работать и с блоками.
  2. Они мутируют предыдущие секреты для создания новых. Например, можно хэшировать априорно-симметричный ключ. Это было бы храповик.

    • Часто идея состоит в том, чтобы получить прямая секретность, что является свойством новой компрометации ключа, не нарушающей секретность старых сообщений.
  3. Они обмениваются информацией по другому каналу.

  4. Они изменяют ключ на основе информации, полученной из предыдущего сообщения.

Или какая-то их комбинация.


Родственные понятия.

Связанные понятия включают:

  1. Значения инициализации (IV).
    Значения инициализации — это значения, которые изменяют каждое сообщение, чтобы улучшить шифрование. Однако такие значения не считаются секретными, поэтому обычно они не считаются частью ключа.

  2. Переназначение.
    Стороны могут обмениваться асимметричными ключами, чтобы согласовать новые ключи. Потенциально они могли бы сделать это перед каждым новым симметричным сообщением, если бы захотели.


Примечание. Для этого может потребоваться схема заказа.

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

Тем не менее, схемы, которые меняют ключи, обычно должны решать проблему порядка, поскольку ключи меняются. Может быть, они могут предположить, что канал обеспечивает упорядочение; возможно, они могут помечать сообщения; или, может быть, что-то еще.

Часто решить эту проблему не составляет труда, хотя об этом следует знать.

user2357 avatar
флаг us
Но одноразовый блокнот не так практичен.
Nat avatar
флаг de
Nat
@ThePrince: OTP определенно имеет свое применение; он имеет мощные гарантии безопасности и требует очень мало вычислений для шифрования/дешифрования. Если у вас есть две конечные точки с небольшим объемом памяти, OTP может быть полезным инструментом. Конечно, это не подходит для всего, но обычно мы подбираем крипто-методы в каждом конкретном случае.
user2357 avatar
флаг us
Большое тебе спасибо.
Рейтинг:1
флаг cr

Да, это обычная практика. Действительно, так, например, работает TLS. Для TLS этот процесс объясняется на эта страница на шаге «Расчет ключей шифрования клиента».

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

Да.

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

Не совсем уверен, что "процесс" есть, но да, автоматическая смена/поворот ключей становится все более распространенным явлением. Как:-

qkdn

Ключи (квантово) распределяются между сайтами A и B со скоростью, скажем, 10 кбит/с. Затем эти ключи передаются на физические устройства шифрования. Эти устройства используют обычное шифрование (возможно, AES или алгоритм легкого шифрования) для передачи большей части данных с гораздо более высокой скоростью, чем при использовании квантового канала (40 Гбит/с).

Затем ключи шифратора можно менять каждые несколько секунд. 256-битный ключ может быть передан в течение 26 мс. Так что это не совсем предварительное изменение, а скорее периодическое. Это не выходило бы за рамки возможности изменить ключ шифрования для каждого пакета/сеанса данных, как вы предлагаете. В конце концов, коммутаторы предлагают управление качеством обслуживания (QoS). Это может быть продолжением этого. И вполне практично.

Таким образом, не сам шифр требует постоянной смены ключа, а реализация, которая его использует. Достаточно близко?


Эти сведения, основанные на Клавис300 Комплект.

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

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