Bouncy Castle Cryptography 1.46

org.bouncycastle.cms
Class CMSAuthenticatedDataStreamGenerator

java.lang.Object
  extended by org.bouncycastle.cms.CMSEnvelopedGenerator
      extended by org.bouncycastle.cms.CMSAuthenticatedGenerator
          extended by org.bouncycastle.cms.CMSAuthenticatedDataStreamGenerator

public class CMSAuthenticatedDataStreamGenerator
extends CMSAuthenticatedGenerator

General class for generating a CMS authenticated-data message stream.

A simple example of usage.

      CMSAuthenticatedDataStreamGenerator edGen = new CMSAuthenticatedDataStreamGenerator();

      edGen.addRecipientInfoGenerator(new JceKeyTransRecipientInfoGenerator(cert).setProvider("BC"));

      ByteArrayOutputStream  bOut = new ByteArrayOutputStream();

      OutputStream out = edGen.open(
                              bOut, new JceCMSMacCalculatorBuilder(CMSAlgorithm.DES_EDE3_CBC).setProvider("BC").build());*
      out.write(data);

      out.close();
 


Field Summary
 
Fields inherited from class org.bouncycastle.cms.CMSAuthenticatedGenerator
authGen, unauthGen
 
Fields 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, IDEA_CBC, RC2_CBC, SEED_CBC, SEED_WRAP, unprotectedAttributeGenerator
 
Constructor Summary
CMSAuthenticatedDataStreamGenerator()
          base constructor
CMSAuthenticatedDataStreamGenerator(java.security.SecureRandom rand)
          Deprecated. no longer of any use, use basic constructor.
 
Method Summary
 java.io.OutputStream open(ASN1ObjectIdentifier dataType, java.io.OutputStream out, org.bouncycastle.operator.MacCalculator macCalculator)
          generate an authenticated data structure with the encapsulated bytes marked as type dataType.
 java.io.OutputStream open(ASN1ObjectIdentifier dataType, java.io.OutputStream out, org.bouncycastle.operator.MacCalculator macCalculator, org.bouncycastle.operator.DigestCalculator digestCalculator)
          generate an authenticated data structure with the encapsulated bytes marked as type dataType.
 java.io.OutputStream open(java.io.OutputStream out, org.bouncycastle.operator.MacCalculator macCalculator)
          generate an authenticated data structure with the encapsulated bytes marked as DATA.
 java.io.OutputStream open(java.io.OutputStream out, org.bouncycastle.operator.MacCalculator macCalculator, org.bouncycastle.operator.DigestCalculator digestCalculator)
           
 java.io.OutputStream open(java.io.OutputStream out, java.lang.String encryptionOID, int keySize, java.security.Provider provider)
          Deprecated. use open(out, MacCalculator)
 java.io.OutputStream open(java.io.OutputStream out, java.lang.String encryptionOID, int keySize, java.lang.String provider)
          Deprecated. use open(out, MacCalculator)
 java.io.OutputStream open(java.io.OutputStream out, java.lang.String encryptionOID, java.security.Provider provider)
          Deprecated. use open(out, MacCalculator)
protected  java.io.OutputStream open(java.io.OutputStream out, java.lang.String macOID, javax.crypto.SecretKey encKey, java.security.spec.AlgorithmParameterSpec params, ASN1EncodableVector recipientInfos, java.security.Provider provider)
          Deprecated.  
protected  java.io.OutputStream open(java.io.OutputStream out, java.lang.String macOID, javax.crypto.SecretKey encKey, java.security.spec.AlgorithmParameterSpec params, ASN1EncodableVector recipientInfos, java.lang.String provider)
           
 java.io.OutputStream open(java.io.OutputStream out, java.lang.String encryptionOID, java.lang.String provider)
          Deprecated. use open(out, MacCalculator)
 void setBEREncodeRecipients(boolean useBerEncodingForRecipients)
          Use a BER Set to store the recipient information.
 void setBufferSize(int bufferSize)
          Set the underlying string size for encapsulated data
 
Methods inherited from class org.bouncycastle.cms.CMSAuthenticatedGenerator
generateParameterSpec, getAlgorithmIdentifier, getBaseParameters, setAuthenticatedAttributeGenerator, setUnauthenticatedAttributeGenerator
 
Methods inherited from class org.bouncycastle.cms.CMSEnvelopedGenerator
addKEKRecipient, addKEKRecipient, addKeyAgreementRecipient, addKeyAgreementRecipient, addKeyAgreementRecipients, addKeyAgreementRecipients, addKeyTransRecipient, addKeyTransRecipient, addPasswordRecipient, addRecipientInfoGenerator, generateParameters, getAlgorithmIdentifier, setUnprotectedAttributeGenerator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CMSAuthenticatedDataStreamGenerator

public CMSAuthenticatedDataStreamGenerator()
base constructor


CMSAuthenticatedDataStreamGenerator

public CMSAuthenticatedDataStreamGenerator(java.security.SecureRandom rand)
Deprecated. no longer of any use, use basic constructor.

constructor allowing specific source of randomness

Parameters:
rand - instance of SecureRandom to use
Method Detail

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 useBerEncodingForRecipients)
Use a BER Set to store the recipient information. By default recipients are stored in a DER encoding.

Parameters:
useBerEncodingForRecipients - true if a BER set should be used, false if DER.

open

public java.io.OutputStream open(java.io.OutputStream out,
                                 org.bouncycastle.operator.MacCalculator macCalculator)
                          throws CMSException
generate an authenticated data structure with the encapsulated bytes marked as DATA.

Parameters:
out - the stream to store the authenticated structure in.
macCalculator - calculator for the MAC to be attached to the data.
Throws:
CMSException

open

public java.io.OutputStream open(java.io.OutputStream out,
                                 org.bouncycastle.operator.MacCalculator macCalculator,
                                 org.bouncycastle.operator.DigestCalculator digestCalculator)
                          throws CMSException
Throws:
CMSException

open

public java.io.OutputStream open(ASN1ObjectIdentifier dataType,
                                 java.io.OutputStream out,
                                 org.bouncycastle.operator.MacCalculator macCalculator)
                          throws CMSException
generate an authenticated data structure with the encapsulated bytes marked as type dataType.

Parameters:
dataType - the type of the data been written to the object.
out - the stream to store the authenticated structure in.
macCalculator - calculator for the MAC to be attached to the data.
Throws:
CMSException

open

public java.io.OutputStream open(ASN1ObjectIdentifier dataType,
                                 java.io.OutputStream out,
                                 org.bouncycastle.operator.MacCalculator macCalculator,
                                 org.bouncycastle.operator.DigestCalculator digestCalculator)
                          throws CMSException
generate an authenticated data structure with the encapsulated bytes marked as type dataType.

Parameters:
dataType - the type of the data been written to the object.
out - the stream to store the authenticated structure in.
macCalculator - calculator for the MAC to be attached to the data.
digestCalculator - calculator for computing digest of the encapsulated data.
Throws:
CMSException

open

protected java.io.OutputStream open(java.io.OutputStream out,
                                    java.lang.String macOID,
                                    javax.crypto.SecretKey encKey,
                                    java.security.spec.AlgorithmParameterSpec params,
                                    ASN1EncodableVector recipientInfos,
                                    java.lang.String provider)
                             throws java.security.NoSuchAlgorithmException,
                                    java.security.NoSuchProviderException,
                                    CMSException
Throws:
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
CMSException

open

protected java.io.OutputStream open(java.io.OutputStream out,
                                    java.lang.String macOID,
                                    javax.crypto.SecretKey encKey,
                                    java.security.spec.AlgorithmParameterSpec params,
                                    ASN1EncodableVector recipientInfos,
                                    java.security.Provider provider)
                             throws java.security.NoSuchAlgorithmException,
                                    CMSException
Deprecated. 

Throws:
java.security.NoSuchAlgorithmException
CMSException

open

public java.io.OutputStream open(java.io.OutputStream out,
                                 java.lang.String encryptionOID,
                                 java.lang.String provider)
                          throws java.security.NoSuchAlgorithmException,
                                 java.security.NoSuchProviderException,
                                 CMSException,
                                 java.io.IOException
Deprecated. use open(out, MacCalculator)

generate an authenticated object that contains an CMS Authenticated Data object using the given provider.

Throws:
java.io.IOException
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
CMSException

open

public java.io.OutputStream open(java.io.OutputStream out,
                                 java.lang.String encryptionOID,
                                 java.security.Provider provider)
                          throws java.security.NoSuchAlgorithmException,
                                 CMSException,
                                 java.io.IOException
Deprecated. use open(out, MacCalculator)

Throws:
java.security.NoSuchAlgorithmException
CMSException
java.io.IOException

open

public java.io.OutputStream open(java.io.OutputStream out,
                                 java.lang.String encryptionOID,
                                 int keySize,
                                 java.lang.String provider)
                          throws java.security.NoSuchAlgorithmException,
                                 java.security.NoSuchProviderException,
                                 CMSException,
                                 java.io.IOException
Deprecated. use open(out, MacCalculator)

generate an enveloped object that contains an CMS Enveloped Data object using the given provider.

Throws:
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
CMSException
java.io.IOException

open

public java.io.OutputStream open(java.io.OutputStream out,
                                 java.lang.String encryptionOID,
                                 int keySize,
                                 java.security.Provider provider)
                          throws java.security.NoSuchAlgorithmException,
                                 CMSException,
                                 java.io.IOException
Deprecated. use open(out, MacCalculator)

generate an enveloped object that contains an CMS Enveloped Data object using the given provider.

Throws:
java.security.NoSuchAlgorithmException
CMSException
java.io.IOException

Bouncy Castle Cryptography 1.46