Estoy cifrando algo con una clave pública generada usando la curva ed25519, con OpenPGP.js. Va algo como esto:
var options = {
data: str,
publicKeys: publicKeys,
armor: false
};
openpgp.encrypt(options).then(function(ciphertext) {
var bytes = ciphertext.message.packets.write();
});
Por lo que puedo observar, la salida es determinista, es decir, es la misma salida cada vez sin un componente aleatorio. Estoy explotando este hecho en el diseño de mi base de datos, por lo que necesito que sea siempre determinista.
¿Es esto algo que puedo asumir? ¿Está esto documentado en alguna parte? ¿Es un comportamiento correcto para OpenPGP?
Tengo dudas ahora porque esta publicación especifica que debería tener un componente aleatorio: ¿Encriptar el mismo archivo con GnuPG y la misma clave producirá el mismo texto cifrado?