Package org.bouncycastle.cms
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 org.bouncycastle.cms.CMSAuthEnvelopedGenerator
AES128_CCM, AES128_GCM, AES192_CCM, AES192_GCM, AES256_CCM, AES256_GCM, authAttrsGenerator, ChaCha20Poly1305, originatorInfo, unauthAttrsGeneratorFields inherited from class org.bouncycastle.cms.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 authenticated-enveloped-data using the given encryptor, and marking the encapsulated bytes as being of type DATA.protected OutputStreamopen(org.bouncycastle.asn1.ASN1ObjectIdentifier dataType, OutputStream out, org.bouncycastle.asn1.ASN1EncodableVector recipientInfos, OutputAEADEncryptor encryptor) open(org.bouncycastle.asn1.ASN1ObjectIdentifier dataType, OutputStream out, OutputAEADEncryptor encryptor) Generate authenticated-enveloped-data using the given encryptor, and marking the encapsulated bytes as being of the passed in type.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 org.bouncycastle.cms.CMSAuthEnvelopedGenerator
setAuthenticatedAttributeGenerator, setOriginatorInfo, setUnauthenticatedAttributeGeneratorMethods inherited from class org.bouncycastle.cms.CMSEnvelopedGenerator
addRecipientInfoGenerator, 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 authenticated-enveloped-data using the given encryptor, and marking the encapsulated bytes as being of type DATA.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
-
open
public OutputStream open(org.bouncycastle.asn1.ASN1ObjectIdentifier dataType, OutputStream out, OutputAEADEncryptor encryptor) throws CMSException, IOException Generate authenticated-enveloped-data using the given encryptor, and marking the encapsulated bytes as being of the passed in type.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:
dataType- the type of the data being written to the object.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
-