Означает ли это проблему безопасности, если ключ и iv хранятся в секрете, но то же самое? Спасибо.Если я сохраню секрет iv paramater, все равно нужно быть случайным в AES/CBC?
ОБНОВЛЕНИЕ: Я сделал некоторые исследования и узнал, почему использовал iv. Как упоминалось в ответе ниже, это способ защиты от частотных атак. И при создании iv существует два требования: уникальность и непредсказуемость.
Алгоритма, который я думал, что для создания ключа AES и IV является:. Получить два значения из некоторой эллиптической кривой точки, согласованной перед тем с помощью асимметричного шифрования (х, у)
Aes.Key <- HASH(x)
(string)unique <- timestamp()
(string)unpre <- y
Aes.IV <- HASH(unique + unpre)
И доля данные как {encryptedmessage, timestamp}
Эта логика в порядке?
Это зависит от того, как вы применяете асимметричный шифр. Если вы используете подход KEM, в котором вы создаете новую точку эллиптической кривой для каждого шифрования, тогда это кажется прекрасным, но если ваша точка (x, y) является долгосрочной тайной, то это все еще не имеет рандомизации и Ответ LDMJoe применяется. В любом случае ... –
Я голосую, чтобы закрыть этот вопрос как вне темы, потому что это напрямую не связано с программированием. Это гораздо лучше подходит для [crypto.se]. Следует уточнить, как выглядит протокол и как часто изменяется точка эллиптической кривой. –