Class CMSEnvelopedData

  • All Implemented Interfaces:
    org.bouncycastle.util.Encodable

    public class CMSEnvelopedData
    extends java.lang.Object
    implements org.bouncycastle.util.Encodable
    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

      Constructors 
      Constructor Description
      CMSEnvelopedData​(byte[] envelopedData)  
      CMSEnvelopedData​(java.io.InputStream envelopedData)  
      CMSEnvelopedData​(org.bouncycastle.asn1.cms.ContentInfo contentInfo)
      Construct a CMSEnvelopedData object from a content info object.
    • Constructor Detail

      • CMSEnvelopedData

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

        public CMSEnvelopedData​(org.bouncycastle.asn1.cms.ContentInfo contentInfo)
                         throws CMSException
        Construct a CMSEnvelopedData object from a content info object.
        Parameters:
        contentInfo - the contentInfo containing the CMS EnvelopedData object.
        Throws:
        CMSException - in the case where malformed content is encountered.
    • Method Detail

      • getOriginatorInfo

        public OriginatorInformation getOriginatorInfo()
        Return the originator information associated with this message if present.
        Returns:
        OriginatorInformation, null if not present.
      • getContentEncryptionAlgorithm

        public org.bouncycastle.asn1.x509.AlgorithmIdentifier getContentEncryptionAlgorithm()
        Return the content encryption algorithm details for the data in this object.
        Returns:
        AlgorithmIdentifier representing the content encryption algorithm.
      • 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.
      • getRecipientInfos

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

        public org.bouncycastle.asn1.cms.ContentInfo toASN1Structure()
        return the ContentInfo
      • getUnprotectedAttributes

        public org.bouncycastle.asn1.cms.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.
        Specified by:
        getEncoded in interface org.bouncycastle.util.Encodable
        Throws:
        java.io.IOException