Генерация вектора инициализации (IV) и значений соли в .NET - PullRequest
0 голосов
/ 28 марта 2011

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

Как использовать .NET для генерации соли и инициализацииВектор (IV) вне фактических шагов шифрования?В настоящее время методы шифрования / дешифрования, которые я создал, принимают солт и вектор инициализации в качестве параметров в виде строк.

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

Dim rng As New RNGCryptoServiceProvider()
Dim buff As Byte() = New Byte(15) {}
rng.GetBytes(buff)
Return Convert.ToBase64String(buff)

1 Ответ

1 голос
/ 29 марта 2011

Размер IV определяется алгоритмом, который вы используете (например, 16 байтов).Это означает, что размер байтового массива фиксирован, а не строка, которую вы строите из него.Вы не можете передать строку как IV, если не можете преобразовать ее в соответствующий байтовый массив с требуемым размером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...