Package org.bouncycastle.cms
Class CMSEnvelopedDataParser
java.lang.Object
org.bouncycastle.cms.CMSContentInfoParser
org.bouncycastle.cms.CMSEnvelopedDataParser
Parsing class for an CMS Enveloped Data object from an input stream.
Note: that because we are in a streaming mode only one recipient can be tried and it is important that the methods on the parser are called in the appropriate order.
Example of use - assuming the first recipient matches the private key we have.
CMSEnvelopedDataParser ep = new CMSEnvelopedDataParser(inputStream); RecipientInformationStore recipients = ep.getRecipientInfos(); Collection c = recipients.getRecipients(); Iterator it = c.iterator(); if (it.hasNext()) { RecipientInformation recipient = (RecipientInformation)it.next(); CMSTypedStream recData = recipient.getContentStream(new JceKeyTransEnvelopedRecipient(privateKey).setProvider("BC")); processDataStream(recData.getContentStream()); }Note: this class does not introduce buffering - if you are processing large files you should create the parser with:
CMSEnvelopedDataParser ep = new CMSEnvelopedDataParser(new BufferedInputStream(inputStream, bufSize));where bufSize is a suitably large buffer size.
-
Field Summary
Fields inherited from class org.bouncycastle.cms.CMSContentInfoParser
_contentInfo, _data
-
Constructor Summary
ConstructorsConstructorDescriptionCMSEnvelopedDataParser
(byte[] envelopedData) CMSEnvelopedDataParser
(InputStream envelopedData) -
Method Summary
Modifier and TypeMethodDescriptionorg.bouncycastle.asn1.x509.AlgorithmIdentifier
Return the content encryption algorithm details for the data in this object.return the object identifier for the content encryption algorithm.byte[]
return the ASN.1 encoded encryption algorithm parameters, or null if there aren't any.Return the originator information associated with this message if present.return a store of the intended recipients for this messageorg.bouncycastle.asn1.cms.AttributeTable
return a table of the unprotected attributes indexed by the OID of the attribute.Methods inherited from class org.bouncycastle.cms.CMSContentInfoParser
close
-
Constructor Details
-
CMSEnvelopedDataParser
- Throws:
CMSException
IOException
-
CMSEnvelopedDataParser
- Throws:
CMSException
IOException
-
-
Method Details
-
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. -
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.
-
getOriginatorInfo
Return the originator information associated with this message if present.- Returns:
- OriginatorInformation, null if not present.
-
getRecipientInfos
return a store of the intended recipients for this message -
getUnprotectedAttributes
return a table of the unprotected attributes indexed by the OID of the attribute.- Throws:
IOException
-