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

org.bouncycastle.cms

## Class KeyAgreeRecipientInfoGenerator

- java.lang.Object
- - org.bouncycastle.cms.KeyAgreeRecipientInfoGenerator

- All Implemented Interfaces:
    RecipientInfoGenerator
  Direct Known Subclasses:
    JceKeyAgreeRecipientInfoGenerator

      public abstract class KeyAgreeRecipientInfoGenerator
      extends java.lang.Object
      implements RecipientInfoGenerator

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `KeyAgreeRecipientInfoGenerator(org.bouncycastle.asn1.ASN1ObjectIdentifier keyAgreementOID, org.bouncycastle.asn1.x509.SubjectPublicKeyInfo originatorKeyInfo, org.bouncycastle.asn1.ASN1ObjectIdentifier keyEncryptionOID)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected org.bouncycastle.asn1.cms.OriginatorPublicKey` | `createOriginatorPublicKey(org.bouncycastle.asn1.x509.SubjectPublicKeyInfo originatorKeyInfo)`
    `org.bouncycastle.asn1.cms.RecipientInfo` | `generate(GenericKey contentEncryptionKey)`
    `protected abstract org.bouncycastle.asn1.ASN1Sequence` | `generateRecipientEncryptedKeys(org.bouncycastle.asn1.x509.AlgorithmIdentifier keyAgreeAlgorithm, org.bouncycastle.asn1.x509.AlgorithmIdentifier keyEncAlgorithm, GenericKey contentEncryptionKey)`
    `protected abstract org.bouncycastle.asn1.ASN1Encodable` | `getUserKeyingMaterial(org.bouncycastle.asn1.x509.AlgorithmIdentifier keyAgreeAlgorithm)`

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

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

- - ### Constructor Detail

    - #### KeyAgreeRecipientInfoGenerator

          protected KeyAgreeRecipientInfoGenerator(org.bouncycastle.asn1.ASN1ObjectIdentifier keyAgreementOID,
                                        org.bouncycastle.asn1.x509.SubjectPublicKeyInfo originatorKeyInfo,
                                        org.bouncycastle.asn1.ASN1ObjectIdentifier keyEncryptionOID)

  - ### Method Detail

    - #### generate

          public org.bouncycastle.asn1.cms.RecipientInfo generate(GenericKey contentEncryptionKey)
                                                           throws CMSException

      Specified by:
        `generate` in interface `RecipientInfoGenerator`
      Throws:
        `CMSException`

    - #### createOriginatorPublicKey

          protected org.bouncycastle.asn1.cms.OriginatorPublicKey createOriginatorPublicKey(org.bouncycastle.asn1.x509.SubjectPublicKeyInfo originatorKeyInfo)

    - #### generateRecipientEncryptedKeys

          protected abstract org.bouncycastle.asn1.ASN1Sequence generateRecipientEncryptedKeys(org.bouncycastle.asn1.x509.AlgorithmIdentifier keyAgreeAlgorithm,
                                                                          org.bouncycastle.asn1.x509.AlgorithmIdentifier keyEncAlgorithm,
                                                                          GenericKey contentEncryptionKey)
                                                                                        throws CMSException

      Throws:
        `CMSException`

    - #### getUserKeyingMaterial

          protected abstract org.bouncycastle.asn1.ASN1Encodable getUserKeyingMaterial(org.bouncycastle.asn1.x509.AlgorithmIdentifier keyAgreeAlgorithm)
                                                                                throws CMSException

      Throws:
        `CMSException`