Основное отличие между вектором инициализации и ключом состоит в том, что ключ должен храниться в секрете, в то время как IV не должен быть - он может быть прочитан злоумышленником без какой-либо угрозы для безопасности. рассматриваемой схемы шифрования.
Идея состоит в том, что вы можете использовать один и тот же ключ для нескольких сообщений, используя только разные (случайные) векторы инициализации для каждого, поэтому отношения между простыми текстами не отображаются в соответствующих зашифрованных текстах.
Тем не менее, если вы используете схему соглашения о ключах, такую как Диффи-Хеллман, которая в любом случае дает вам новый общий секрет для каждого сеанса, вы также можете использовать его для генерации первого вектора инициализации. На самом деле это не дает особых преимуществ в плане безопасности по сравнению с прямым выбором вектора инициализации и отправкой его вместе с сообщением, но сохраняет некоторые биты полосы пропускания и некоторые биты энтропии из вашего случайного источника. И это делает IV немного более случайным в случае, если один из партнеров имеет плохой источник случайности (хотя DH в этом случае тоже не совсем безопасен).
Как два объекта получают «одну, казалось бы, случайную последовательность битов», не имея общей части информации?
Является ли предположение, что общая информация была отправлена в зашифрованном виде? И, если общая информация отправляется в зашифрованном виде,
почему бы просто не отправить IV в зашифрованном виде
Диффи-Хеллман основан на теоретико-групповой задаче: Ева знает (циклическую) группу G
с генератором g
и видит два значения g^a
(переданные от Алисы Бобу) и g^b
(передается от Боба Алисе), где a
и b
- случайные большие целые числа, выбранные Алисой и Бобом и неизвестные Еве и даже другому партнеру). Тогда общий секрет будет (g^a)^b = g^(a·b) = (g^b)^a
. Очевидно, что Боб (который знает b
) может вычислить секрет как (g^a)^b
, в то время как Алиса (который знает a
) может вычислить (g^b)^a
. Ева каким-то образом должна получить этот секрет, чтобы взломать протокол.
В некоторых группах это (известная как вычислительная проблема Диффи-Хеллмана ) представляется сложной проблемой, и мы используем эти группы в криптографии. (В исходном DH мы используем подгруппу простого порядка мультипликативной группы некоторого большого конечного простого поля, в эллиптической кривой DH мы используем группу эллиптических кривых над конечным полем. Другие группы тоже работают (но некоторые из них слабое, например, в аддитивной группе поля решение тривиально).)
Затем Алиса и Боб используют функцию вывода ключа для получения фактического материала ключа (то есть ключей шифрования для обоих направлений, ключей MAC и начальных IV).