|
Bouncy Castle Cryptography Library 1.79 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.bouncycastle.cms.CMSContentInfoParser | +--org.bouncycastle.cms.CMSAuthenticatedDataParser
Parsing class for an CMS Authenticated 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. CMSAuthenticatedDataParser ad = new CMSAuthenticatedDataParser(inputStream); RecipientInformationStore recipients = ad.getRecipientInfos(); Collection c = recipients.getRecipients(); Iterator it = c.iterator(); if (it.hasNext()) { RecipientInformation recipient = (RecipientInformation)it.next(); CMSTypedStream recData = recipient.getContentStream(new JceKeyTransAuthenticatedRecipient(privateKey).setProvider("BC")); processDataStream(recData.getContentStream()); if (!Arrays.equals(ad.getMac(), recipient.getMac()) { System.err.println("Data corrupted!!!!"); } } Note: this class does not introduce buffering - if you are processing large files you should create the parser with: CMSAuthenticatedDataParser ep = new CMSAuthenticatedDataParser(new BufferedInputStream(inputStream, bufSize)); where bufSize is a suitably large buffer size.
Fields inherited from class org.bouncycastle.cms.CMSContentInfoParser |
_contentInfo, _data |
Constructor Summary | |
CMSAuthenticatedDataParser(byte[] envelopedData)
|
|
CMSAuthenticatedDataParser(byte[] envelopedData,
DigestCalculatorProvider digestCalculatorProvider)
|
|
CMSAuthenticatedDataParser(java.io.InputStream envelopedData)
|
|
CMSAuthenticatedDataParser(java.io.InputStream envelopedData,
DigestCalculatorProvider digestCalculatorProvider)
|
Method Summary | |
org.bouncycastle.asn1.cms.AttributeTable |
getAuthAttrs()
return a table of the unauthenticated attributes indexed by the OID of the attribute. |
byte[] |
getContentDigest()
This will only be valid after the content has been read. |
byte[] |
getMac()
|
java.lang.String |
getMacAlgOID()
return the object identifier for the mac algorithm. |
org.bouncycastle.asn1.x509.AlgorithmIdentifier |
getMacAlgorithm()
Return the MAC algorithm details for the MAC associated with the data in this object. |
byte[] |
getMacAlgParams()
return the ASN.1 encoded encryption algorithm parameters, or null if there aren't any. |
OriginatorInformation |
getOriginatorInfo()
Return the originator information associated with this message if present. |
RecipientInformationStore |
getRecipientInfos()
return a store of the intended recipients for this message |
org.bouncycastle.asn1.cms.AttributeTable |
getUnauthAttrs()
return a table of the unauthenticated attributes indexed by the OID of the attribute. |
Methods inherited from class org.bouncycastle.cms.CMSContentInfoParser |
close |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public CMSAuthenticatedDataParser(byte[] envelopedData) throws CMSException, java.io.IOException
public CMSAuthenticatedDataParser(byte[] envelopedData, DigestCalculatorProvider digestCalculatorProvider) throws CMSException, java.io.IOException
public CMSAuthenticatedDataParser(java.io.InputStream envelopedData) throws CMSException, java.io.IOException
public CMSAuthenticatedDataParser(java.io.InputStream envelopedData, DigestCalculatorProvider digestCalculatorProvider) throws CMSException, java.io.IOException
Method Detail |
public OriginatorInformation getOriginatorInfo()
public org.bouncycastle.asn1.x509.AlgorithmIdentifier getMacAlgorithm()
public java.lang.String getMacAlgOID()
public byte[] getMacAlgParams()
public RecipientInformationStore getRecipientInfos()
public byte[] getMac() throws java.io.IOException
public org.bouncycastle.asn1.cms.AttributeTable getAuthAttrs() throws java.io.IOException
java.io.IOException
- public org.bouncycastle.asn1.cms.AttributeTable getUnauthAttrs() throws java.io.IOException
java.io.IOException
- public byte[] getContentDigest()
|
Bouncy Castle Cryptography Library 1.79 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |