CMSAuthenticatedDataGenerator (Bouncy Castle Library 1.52 API Specification)
Date: 2015-03-01

org.bouncycastle.cms

## Class CMSAuthenticatedDataGenerator

- java.lang.Object
- - org.bouncycastle.cms.CMSEnvelopedGenerator
  - - org.bouncycastle.cms.CMSAuthenticatedGenerator
    - - org.bouncycastle.cms.CMSAuthenticatedDataGenerator

-     public class CMSAuthenticatedDataGenerator
      extends CMSAuthenticatedGenerator

  General class for generating a CMS authenticated-data message. A simple example of usage.

            CMSAuthenticatedDataGenerator  fact = new CMSAuthenticatedDataGenerator();

            adGen.addRecipientInfoGenerator(new JceKeyTransRecipientInfoGenerator(recipientCert).setProvider("BC"));

            CMSAuthenticatedData         data = fact.generate(new CMSProcessableByteArray(data),
                                    new JceCMSMacCalculatorBuilder(CMSAlgorithm.DES_EDE3_CBC).setProvider(BC).build()));

- - ### 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, originatorInfo, RC2_CBC, SEED_CBC, SEED_WRAP, unprotectedAttributeGenerator`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CMSAuthenticatedDataGenerator()` base constructor

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `CMSAuthenticatedData` | `generate(CMSTypedData typedData, MacCalculator macCalculator)` Generate an authenticated data object from the passed in typedData and MacCalculator.
    `CMSAuthenticatedData` | `generate(CMSTypedData typedData, MacCalculator macCalculator, DigestCalculator digestCalculator)` Generate an authenticated data object from the passed in typedData and MacCalculator.

    - ### Methods inherited from class org.bouncycastle.cms.CMSAuthenticatedGenerator

      `getBaseParameters, setAuthenticatedAttributeGenerator, setUnauthenticatedAttributeGenerator`

    - ### Methods inherited from class org.bouncycastle.cms.CMSEnvelopedGenerator

      `addRecipientInfoGenerator, setOriginatorInfo, setUnprotectedAttributeGenerator`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### CMSAuthenticatedDataGenerator

          public CMSAuthenticatedDataGenerator()

      base constructor

  - ### Method Detail

    - #### generate

          public CMSAuthenticatedData generate(CMSTypedData typedData,
                                      MacCalculator macCalculator)
                                        throws CMSException

      Generate an authenticated data object from the passed in typedData and MacCalculator.
      Parameters:
        `typedData` - the data to have a MAC attached.
        `macCalculator` - the calculator of the MAC to be attached.
      Returns:
        the resulting CMSAuthenticatedData object.
      Throws:
        `CMSException` - on failure in encoding data or processing recipients.

    - #### generate

          public CMSAuthenticatedData generate(CMSTypedData typedData,
                                      MacCalculator macCalculator,
                                      DigestCalculator digestCalculator)
                                        throws CMSException

      Generate an authenticated data object from the passed in typedData and MacCalculator.
      Parameters:
        `typedData` - the data to have a MAC attached.
        `macCalculator` - the calculator of the MAC to be attached.
        `digestCalculator` - calculator for computing digest of the encapsulated data.
      Returns:
        the resulting CMSAuthenticatedData object.
      Throws:
        `CMSException` - on failure in encoding data or processing recipients.