Mcrypt pour Rijndael-128: Comment définir le vecteur d'initialisation?
Question
Je voudrais chiffrer un fichier en utilisant AES (Rijndael 128) avec l'outil de ligne de commande mcrypt. Je voudrais définir le vecteur d'initialisation à une valeur spécifique. Comment puis-je faire?
Je suis assez nouveau pour le cryptage, btw.
Merci!
La solution
Apparemment, il n'y a aucun moyen pour spécifier le IV avec l'outil de ligne de commande, à l'exception en utilisant le drapeau de --noiv
qui fixe la IV à un groupe de zéros. À partir du code source de mcrypt, fichier src / classic.c, ligne 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));
Ainsi, le code, il est clair que vous obtenez soit un IV aléatoire ou les zéros.
Vous pouvez patcher mcrypt, cependant. Le code source est fourni, c'est un logiciel libre. L'extrait de code que je montre ci-dessus est précisément l'endroit où vous souhaitez patcher.