Bouncy Castle Cryptography 1.46

org.bouncycastle.cms
Class CMSEnvelopedData

java.lang.Object
  extended by org.bouncycastle.cms.CMSEnvelopedData
Direct Known Subclasses:
SMIMEEnveloped

public class CMSEnvelopedData
extends java.lang.Object

containing class for an CMS Enveloped Data object

Example of use - assuming the first recipient matches the private key we have.

      CMSEnvelopedData     ed = new CMSEnvelopedData(inputStream);

      RecipientInformationStore  recipients = ed.getRecipientInfos();

      Collection  c = recipients.getRecipients();
      Iterator    it = c.iterator();

      if (it.hasNext())
      {
          RecipientInformation   recipient = (RecipientInformation)it.next();

          byte[] recData = recipient.getContent(new JceKeyTransEnvelopedRecipient(privateKey).setProvider("BC"));

          processData(recData);
      }
  


Constructor Summary
CMSEnvelopedData(byte[] envelopedData)
           
CMSEnvelopedData(ContentInfo contentInfo)
           
CMSEnvelopedData(java.io.InputStream envelopedData)
           
 
Method Summary
 ContentInfo getContentInfo()
          return the ContentInfo
 byte[] getEncoded()
          return the ASN.1 encoded representation of this object.
 java.lang.String getEncryptionAlgOID()
          return the object identifier for the content encryption algorithm.
 java.security.AlgorithmParameters getEncryptionAlgorithmParameters(java.security.Provider provider)
          Return an AlgorithmParameters object giving the encryption parameters used to encrypt the message content.
 java.security.AlgorithmParameters getEncryptionAlgorithmParameters(java.lang.String provider)
          Return an AlgorithmParameters object giving the encryption parameters used to encrypt the message content.
 byte[] getEncryptionAlgParams()
          return the ASN.1 encoded encryption algorithm parameters, or null if there aren't any.
 RecipientInformationStore getRecipientInfos()
          return a store of the intended recipients for this message
 AttributeTable getUnprotectedAttributes()
          return a table of the unprotected attributes indexed by the OID of the attribute.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CMSEnvelopedData

public CMSEnvelopedData(byte[] envelopedData)
                 throws CMSException
Throws:
CMSException

CMSEnvelopedData

public CMSEnvelopedData(java.io.InputStream envelopedData)
                 throws CMSException
Throws:
CMSException

CMSEnvelopedData

public CMSEnvelopedData(ContentInfo contentInfo)
Method Detail

getEncryptionAlgOID

public java.lang.String getEncryptionAlgOID()
return the object identifier for the content encryption algorithm.


getEncryptionAlgParams

public byte[] getEncryptionAlgParams()
return the ASN.1 encoded encryption algorithm parameters, or null if there aren't any.


getEncryptionAlgorithmParameters

public java.security.AlgorithmParameters getEncryptionAlgorithmParameters(java.lang.String provider)
                                                                   throws CMSException,
                                                                          java.security.NoSuchProviderException
Return an AlgorithmParameters object giving the encryption parameters used to encrypt the message content.

Parameters:
provider - the provider to generate the parameters for.
Returns:
the parameters object, null if there is not one.
Throws:
CMSException - if the algorithm cannot be found, or the parameters can't be parsed.
java.security.NoSuchProviderException - if the provider cannot be found.

getEncryptionAlgorithmParameters

public java.security.AlgorithmParameters getEncryptionAlgorithmParameters(java.security.Provider provider)
                                                                   throws CMSException
Return an AlgorithmParameters object giving the encryption parameters used to encrypt the message content.

Parameters:
provider - the provider to generate the parameters for.
Returns:
the parameters object, null if there is not one.
Throws:
CMSException - if the algorithm cannot be found, or the parameters can't be parsed.

getRecipientInfos

public RecipientInformationStore getRecipientInfos()
return a store of the intended recipients for this message


getContentInfo

public ContentInfo getContentInfo()
return the ContentInfo


getUnprotectedAttributes

public AttributeTable getUnprotectedAttributes()
return a table of the unprotected attributes indexed by the OID of the attribute.


getEncoded

public byte[] getEncoded()
                  throws java.io.IOException
return the ASN.1 encoded representation of this object.

Throws:
java.io.IOException

Bouncy Castle Cryptography 1.46