public class

CMSSignedData

extends Object
java.lang.Object
   ↳ org.bouncycastle.cms.CMSSignedData
Known Direct Subclasses

Class Overview

general class for handling a pkcs7-signature message. A simple example of usage - note, in the example below the validity of the certificate isn't verified, just the fact that one of the certs matches the given signer...

  CertStore               certs = s.getCertificatesAndCRLs("Collection", "BC");
  SignerInformationStore  signers = s.getSignerInfos();
  Collection              c = signers.getSigners();
  Iterator                it = c.iterator();
  
  while (it.hasNext())
  {
      SignerInformation   signer = (SignerInformation)it.next();
      Collection          certCollection = certStore.getMatches(signer.getSID());

      Iterator        certIt = certCollection.iterator();
      X509CertificateHolder cert = (X509CertificateHolder)certIt.next();
  
      if (signer.verify(new JcaSimpleSignerInfoVerifierBuilder().setProvider("BC").build(cert)))
      {
          verified++;
      }   
  }
 

Summary

Public Constructors
CMSSignedData(byte[] sigBlock)
CMSSignedData(CMSProcessable signedContent, byte[] sigBlock)
CMSSignedData(Map hashes, byte[] sigBlock)
Content with detached signature, digests precomputed
CMSSignedData(CMSProcessable signedContent, InputStream sigData)
base constructor - content with detached signature.
CMSSignedData(InputStream sigData)
base constructor - with encapsulated content
CMSSignedData(CMSProcessable signedContent, ContentInfo sigData)
CMSSignedData(Map hashes, ContentInfo sigData)
CMSSignedData(ContentInfo sigData)
Public Methods
Store getAttributeCertificates()
X509Store getAttributeCertificates(String type, String provider)
This method is deprecated. use base Store returning method
X509Store getAttributeCertificates(String type, Provider provider)
This method is deprecated. use base Store returning method
X509Store getCRLs(String type, Provider provider)
This method is deprecated. use base Store returning method
Store getCRLs()
X509Store getCRLs(String type, String provider)
This method is deprecated. use base Store returning method
Store getCertificates()
X509Store getCertificates(String type, Provider provider)
This method is deprecated. use base Store returning method
X509Store getCertificates(String type, String provider)
This method is deprecated. use base Store returning method
CertStore getCertificatesAndCRLs(String type, Provider provider)
This method is deprecated. use base Store returning method
CertStore getCertificatesAndCRLs(String type, String provider)
This method is deprecated. use base Store returning method
ContentInfo getContentInfo()
return the ContentInfo
byte[] getEncoded()
return the ASN.1 encoded representation of this object.
CMSProcessable getSignedContent()
String getSignedContentTypeOID()
Return the a string representation of the OID associated with the encapsulated content info structure carried in the signed data.
SignerInformationStore getSignerInfos()
return the collection of signers that are associated with the signatures for the message.
int getVersion()
Return the version number for this object
static CMSSignedData replaceCertificatesAndCRLs(CMSSignedData signedData, Store certificates, Store attrCerts, Store crls)
Replace the certificate and CRL information associated with this CMSSignedData object with the new one passed in.
static CMSSignedData replaceCertificatesAndCRLs(CMSSignedData signedData, CertStore certsAndCrls)
Replace the certificate and CRL information associated with this CMSSignedData object with the new one passed in.
static CMSSignedData replaceSigners(CMSSignedData signedData, SignerInformationStore signerInformationStore)
Replace the signerinformation store associated with this CMSSignedData object with the new one passed in.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public CMSSignedData (byte[] sigBlock)

Throws
CMSException

public CMSSignedData (CMSProcessable signedContent, byte[] sigBlock)

Throws
CMSException

public CMSSignedData (Map hashes, byte[] sigBlock)

Content with detached signature, digests precomputed

Parameters
hashes a map of precomputed digests for content indexed by name of hash.
sigBlock the signature object.
Throws
CMSException

public CMSSignedData (CMSProcessable signedContent, InputStream sigData)

base constructor - content with detached signature.

Parameters
signedContent the content that was signed.
sigData the signature object.
Throws
CMSException

public CMSSignedData (InputStream sigData)

base constructor - with encapsulated content

Throws
CMSException

public CMSSignedData (CMSProcessable signedContent, ContentInfo sigData)

public CMSSignedData (Map hashes, ContentInfo sigData)

public CMSSignedData (ContentInfo sigData)

Public Methods

public Store getAttributeCertificates ()

public X509Store getAttributeCertificates (String type, String provider)

This method is deprecated.
use base Store returning method

return a X509Store containing the attribute certificates, if any, contained in this message.

Parameters
type type of store to create
provider name of provider to use
Returns
  • a store of attribute certificates
Throws
NoSuchProviderException if the provider requested isn't available.
NoSuchStoreException if the store type isn't available.
CMSException if a general exception prevents creation of the X509Store

public X509Store getAttributeCertificates (String type, Provider provider)

This method is deprecated.
use base Store returning method

return a X509Store containing the attribute certificates, if any, contained in this message.

Parameters
type type of store to create
provider provider to use
Returns
  • a store of attribute certificates
Throws
NoSuchStoreException if the store type isn't available.
CMSException if a general exception prevents creation of the X509Store

public X509Store getCRLs (String type, Provider provider)

This method is deprecated.
use base Store returning method

return a X509Store containing CRLs, if any, contained in this message.

Parameters
type type of store to create
provider provider to use
Returns
  • a store of CRLs
Throws
NoSuchStoreException if the store type isn't available.
CMSException if a general exception prevents creation of the X509Store

public Store getCRLs ()

public X509Store getCRLs (String type, String provider)

This method is deprecated.
use base Store returning method

return a X509Store containing CRLs, if any, contained in this message.

Parameters
type type of store to create
provider name of provider to use
Returns
  • a store of CRLs
Throws
NoSuchProviderException if the provider requested isn't available.
NoSuchStoreException if the store type isn't available.
CMSException if a general exception prevents creation of the X509Store

public Store getCertificates ()

public X509Store getCertificates (String type, Provider provider)

This method is deprecated.
use base Store returning method

return a X509Store containing the public key certificates, if any, contained in this message.

Parameters
type type of store to create
provider provider to use
Returns
  • a store of public key certificates
Throws
NoSuchStoreException if the store type isn't available.
CMSException if a general exception prevents creation of the X509Store

public X509Store getCertificates (String type, String provider)

This method is deprecated.
use base Store returning method

return a X509Store containing the public key certificates, if any, contained in this message.

Parameters
type type of store to create
provider name of provider to use
Returns
  • a store of public key certificates
Throws
NoSuchProviderException if the provider requested isn't available.
NoSuchStoreException if the store type isn't available.
CMSException if a general exception prevents creation of the X509Store

public CertStore getCertificatesAndCRLs (String type, Provider provider)

This method is deprecated.
use base Store returning method

return a CertStore containing the certificates and CRLs associated with this message.

Throws
NoSuchAlgorithmException if the cert store isn't available.
CMSException if a general exception prevents creation of the CertStore

public CertStore getCertificatesAndCRLs (String type, String provider)

This method is deprecated.
use base Store returning method

return a CertStore containing the certificates and CRLs associated with this message.

Throws
NoSuchProviderException if the provider requested isn't available.
NoSuchAlgorithmException if the cert store isn't available.
CMSException if a general exception prevents creation of the CertStore

public ContentInfo getContentInfo ()

return the ContentInfo

public byte[] getEncoded ()

return the ASN.1 encoded representation of this object.

Throws
IOException

public CMSProcessable getSignedContent ()

public String getSignedContentTypeOID ()

Return the a string representation of the OID associated with the encapsulated content info structure carried in the signed data.

Returns
  • the OID for the content type.

public SignerInformationStore getSignerInfos ()

return the collection of signers that are associated with the signatures for the message.

public int getVersion ()

Return the version number for this object

public static CMSSignedData replaceCertificatesAndCRLs (CMSSignedData signedData, Store certificates, Store attrCerts, Store crls)

Replace the certificate and CRL information associated with this CMSSignedData object with the new one passed in.

Parameters
signedData the signed data object to be used as a base.
certificates the new certificates to be used.
attrCerts the new attribute certificates to be used.
crls the new CRLs to be used.
Returns
  • a new signed data object.
Throws
CMSException if there is an error processing the CertStore

public static CMSSignedData replaceCertificatesAndCRLs (CMSSignedData signedData, CertStore certsAndCrls)

Replace the certificate and CRL information associated with this CMSSignedData object with the new one passed in.

Parameters
signedData the signed data object to be used as a base.
certsAndCrls the new certificates and CRLs to be used.
Returns
  • a new signed data object.
Throws
CMSException if there is an error processing the CertStore

public static CMSSignedData replaceSigners (CMSSignedData signedData, SignerInformationStore signerInformationStore)

Replace the signerinformation store associated with this CMSSignedData object with the new one passed in. You would probably only want to do this if you wanted to change the unsigned attributes associated with a signer, or perhaps delete one.

Parameters
signedData the signed data object to be used as a base.
signerInformationStore the new signer information store to use.
Returns
  • a new signed data object.