Algorithme de chiffrement.init() de chaque message?

Assumer deux clients sont l'échange sécurisé de messages.

Doit ce bloc est exécuté tous les temps pour chaque message, ou peut-étape(s) être fait qu'une seule fois au démarrage:

cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, keySpec);
output = cipher.doFinal(content);

Je suppose que de prêter un certain contexte - bien que je n'ai pas (encore) de comprendre le fonctionnement interne complètement, c'est ma compréhension que pour des raisons de sécurité, il est important de changer la IV pour chaque message. Donc, je pense que la réponse à cette question dépendra de savoir si cette étape se passe sous le capot à l'doFinal() stade ou init()....?

OriginalL'auteur davidkomer | 2012-10-25