¿Puedo utilizar el mismo objeto Cipher
en múltiples métodos ya que los argumentos del método getInstance
y init
no cambian?¿Es reutilizable el objeto Cipher?
Por ejemplo, supongamos que varias partes de la aplicación utilizan el método decrypt
en una clase de utilidad. Todos los valores encriptados pasados se generan usando la misma clave y algoritmo. Entonces, ¿puedo reutilizar el mismo objeto Cipher
?
¿Realmente vale la pena preocuparse por las creaciones múltiples de Cipher
(que pueden dar lugar a la creación de objetos KeySpec
, SecretKey
)?
Gracias por la respuesta. Solo para confirmar, ¿te refieres a una invocación de init() para cada doFinal()? – Firefox
Como los Javadocs para doFinal() indican claramente, "Al finalizar, este método restablece este objeto de cifrado al estado en que estaba cuando se inicializó previamente mediante una llamada a init. Es decir, el objeto se reinicia y está disponible para cifrar o descifrar (dependiendo del modo de operación que se especificó en la llamada a init) más datos ". –
GregS es correcto. Esta respuesta es incorrecta Lamentablemente, los asistentes de stackoverflow no me permitirán deshacer mi voto erróneo ya que ahora está "bloqueado". Malos magos de elección de diseño. – Nemi