I'm encrypting something with a public key generated using the ed25519 curve, with OpenPGP.js. It goes something like this:
var options = {
data: str,
publicKeys: publicKeys,
armor: false
};
openpgp.encrypt(options).then(function(ciphertext) {
var bytes = ciphertext.message.packets.write();
});
From what I can observe, the output is deterministic -- i.e. it's the same output every time without a random component. I'm exploiting this fact in my database design, and thus I need it to always be deterministic.
Is this something I can assume? Is this documented anywhere? Is it a correct behaviour for OpenPGP?
I'm kind of in doubt now because this post specifies that it should have a random component: Will encrypting the same file with GnuPG and the same key produce the same ciphertext?