I have a use-case where I need to sign and encrypt a canonical text document rather than a binary document (see https://tools.ietf.org/html/rfc4880#section-5.2.1). This should replace \n with \r\n and set a particular flag, from what I understand.
It looks like the best way is to modify name.neuhalfen.projects.crypto.bouncycastle.openpgp.encrypting.PGPEncryptingStream#setup to make this statement configurable:
signatureGenerator.init(PGPSignature.BINARY_DOCUMENT, pgpPrivKey);
The PGPSignature.BINARY_DOCUMENT could be something that can be changed in BuildEncryptionOutputStreamAPI?
BouncyGPG
.encryptToStream()
...
.andSignWith(uid, PGPSignature.CANONICAL_TEXT_DOCUMENT)
.binaryOutput()
.andWriteTo(...)
I have a use-case where I need to sign and encrypt a canonical text document rather than a binary document (see https://tools.ietf.org/html/rfc4880#section-5.2.1). This should replace
\nwith\r\nand set a particular flag, from what I understand.It looks like the best way is to modify
name.neuhalfen.projects.crypto.bouncycastle.openpgp.encrypting.PGPEncryptingStream#setupto make this statement configurable:The
PGPSignature.BINARY_DOCUMENTcould be something that can be changed inBuildEncryptionOutputStreamAPI?