Class CMSAuthEnvelopedDataStreamGenerator
java.lang.Object
org.bouncycastle.cms.CMSEnvelopedGenerator
org.bouncycastle.cms.CMSAuthEnvelopedGenerator
org.bouncycastle.cms.CMSAuthEnvelopedDataStreamGenerator
Generate authenticated enveloped CMS data with streaming support.
When using this generator, note:
- The returned OutputStream must be closed to finalize encryption and authentication
- Closing the returned stream does not close the underlying OutputStream passed to
open() - Callers are responsible for closing the underlying OutputStream separately
-
Field Summary
Fields inherited from class CMSAuthEnvelopedGenerator
AES128_CCM, AES128_GCM, AES192_CCM, AES192_GCM, AES256_CCM, AES256_GCM, authAttrsGenerator, ChaCha20Poly1305, originatorInfo, unauthAttrsGeneratorFields inherited from class CMSEnvelopedGenerator
AES128_CBC, AES128_WRAP, AES192_CBC, AES192_WRAP, AES256_CBC, AES256_WRAP, CAMELLIA128_CBC, CAMELLIA128_WRAP, CAMELLIA192_CBC, CAMELLIA192_WRAP, CAMELLIA256_CBC, CAMELLIA256_WRAP, CAST5_CBC, DES_EDE3_CBC, DES_EDE3_WRAP, ECDH_SHA1KDF, ECMQV_SHA1KDF, ECMQV_SHA224KDF, ECMQV_SHA256KDF, ECMQV_SHA384KDF, ECMQV_SHA512KDF, IDEA_CBC, RC2_CBC, SEED_CBC, SEED_WRAP, unprotectedAttributeGenerator -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected OutputStreamopen(OutputStream out, org.bouncycastle.asn1.ASN1EncodableVector recipientInfos, OutputAEADEncryptor encryptor) open(OutputStream out, OutputAEADEncryptor encryptor) generate an enveloped object that contains an CMS Enveloped Data object using the given encryptor.protected OutputStreamopen(org.bouncycastle.asn1.ASN1ObjectIdentifier dataType, OutputStream out, org.bouncycastle.asn1.ASN1EncodableVector recipientInfos, OutputAEADEncryptor encryptor) voidsetBEREncodeRecipients(boolean berEncodeRecipientSet) Use a BER Set to store the recipient informationvoidsetBufferSize(int bufferSize) Set the underlying string size for encapsulated dataMethods inherited from class CMSAuthEnvelopedGenerator
addRecipientInfoGenerator, setAuthenticatedAttributeGenerator, setOriginatorInfo, setUnauthenticatedAttributeGeneratorMethods inherited from class CMSEnvelopedGenerator
setUnprotectedAttributeGenerator
-
Constructor Details
-
CMSAuthEnvelopedDataStreamGenerator
public CMSAuthEnvelopedDataStreamGenerator()
-
-
Method Details
-
setBufferSize
public void setBufferSize(int bufferSize) Set the underlying string size for encapsulated data- Parameters:
bufferSize- length of octet strings to buffer the data.
-
setBEREncodeRecipients
public void setBEREncodeRecipients(boolean berEncodeRecipientSet) Use a BER Set to store the recipient information -
open
protected OutputStream open(org.bouncycastle.asn1.ASN1ObjectIdentifier dataType, OutputStream out, org.bouncycastle.asn1.ASN1EncodableVector recipientInfos, OutputAEADEncryptor encryptor) throws IOException - Throws:
IOException
-
open
protected OutputStream open(OutputStream out, org.bouncycastle.asn1.ASN1EncodableVector recipientInfos, OutputAEADEncryptor encryptor) throws CMSException - Throws:
CMSException
-
open
public OutputStream open(OutputStream out, OutputAEADEncryptor encryptor) throws CMSException, IOException generate an enveloped object that contains an CMS Enveloped Data object using the given encryptor.Stream handling note: Closing the returned stream finalizes the CMS structure but does not close the underlying output stream. The caller remains responsible for managing the lifecycle of
out.- Parameters:
out- the output stream to write the CMS structure toencryptor- the cipher to use for encryption- Returns:
- an output stream that writes encrypted and authenticated content
- Throws:
CMSExceptionIOException
-