Mcrypt для rijndael-128 :как мне задать вектор инициализации?

StackOverflow https://stackoverflow.com/questions/2521013

  •  22-09-2019
  •  | 
  •  

Вопрос

Я хотел бы зашифровать файл с помощью AES (rijndael 128) с помощью инструмента командной строки mcrypt.Я хотел бы установить вектору инициализации определенное значение.Как я могу это сделать?

Кстати, я довольно новичок в шифровании.

Спасибо!

Это было полезно?

Решение

По-видимому, нет способа указать IV с помощью инструмента командной строки, кроме как с помощью --noiv флаг, который устанавливает IV в набор нулей.Из исходного кода mcrypt, файл src/classic.c, строка 142:

IV = _secure_mcrypt_malloc(mcrypt_enc_get_iv_size(td));
if (noiv==FALSE)
        mcrypt_randomize( IV, mcrypt_enc_get_iv_size(td), real_random_flag);
else
        memset( IV, 0, mcrypt_enc_get_iv_size(td));

Таким образом, код дает понять, что вы получаете либо случайный IV, либо нули.

Однако вы могли бы залатать mcrypt.Исходный код предоставляется, это бесплатное программное обеспечение.Фрагмент кода, который я показываю выше, - это именно то место, где вы хотели бы внести исправления.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top