Package org.bouncycastle.cms
Class SignerInformation
java.lang.Object
org.bouncycastle.cms.SignerInformation
an expanded SignerInfo block from a CMS Signed message
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final org.bouncycastle.asn1.x509.AlgorithmIdentifier
protected final org.bouncycastle.asn1.x509.AlgorithmIdentifier
protected final org.bouncycastle.asn1.cms.SignerInfo
protected final org.bouncycastle.asn1.ASN1Set
protected final org.bouncycastle.asn1.ASN1Set
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
SignerInformation
(SignerInformation baseInfo) Protected constructor.protected
SignerInformation
(SignerInformation baseInfo, org.bouncycastle.asn1.cms.SignerInfo info) Protected constructor. -
Method Summary
Modifier and TypeMethodDescriptionstatic SignerInformation
addCounterSigners
(SignerInformation signerInformation, SignerInformationStore counterSigners) Return a signer information object with passed in SignerInformationStore representing counter signatures attached as an unsigned attribute.byte[]
return the content digest that was calculated during verification.org.bouncycastle.asn1.ASN1ObjectIdentifier
Return a SignerInformationStore containing the counter signatures attached to this signer.return the object identifier for the signature.org.bouncycastle.asn1.x509.AlgorithmIdentifier
byte[]
return the signature parameters, or null if there aren't any.byte[]
return the DER encoding of the signed attributes.return the object identifier for the signature.byte[]
return the signature/encryption algorithm parameters, or null if there aren't any.getSID()
byte[]
return the encoded signatureorg.bouncycastle.asn1.cms.AttributeTable
return a table of the signed attributes - indexed by the OID of the attribute.org.bouncycastle.asn1.cms.AttributeTable
return a table of the unsigned attributes indexed by the OID of the attribute.int
return the version number for this objects underlying SignerInfo structure.boolean
static SignerInformation
replaceUnsignedAttributes
(SignerInformation signerInformation, org.bouncycastle.asn1.cms.AttributeTable unsignedAttributes) Return a signer information object with the passed in unsigned attributes replacing the ones that are current associated with the object passed in.org.bouncycastle.asn1.cms.SignerInfo
Return the underlying ASN.1 object defining this SignerInformation object.boolean
verify
(SignerInformationVerifier verifier) Verify that the given verifier can successfully verify the signature on this SignerInformation object.
-
Field Details
-
info
protected final org.bouncycastle.asn1.cms.SignerInfo info -
digestAlgorithm
protected final org.bouncycastle.asn1.x509.AlgorithmIdentifier digestAlgorithm -
encryptionAlgorithm
protected final org.bouncycastle.asn1.x509.AlgorithmIdentifier encryptionAlgorithm -
signedAttributeSet
protected final org.bouncycastle.asn1.ASN1Set signedAttributeSet -
unsignedAttributeSet
protected final org.bouncycastle.asn1.ASN1Set unsignedAttributeSet
-
-
Constructor Details
-
SignerInformation
Protected constructor. In some cases clients have their own idea about how to encode the signed attributes and calculate the signature. This constructor is to allow developers to deal with that by extending off the class and overriding methods like getSignedAttributes().- Parameters:
baseInfo
- the SignerInformation to base this one on.
-
SignerInformation
Protected constructor. In some cases clients also have their own ideas about what goes in various SignerInfo fields. This constructor is to allow developers to deal with that by also tweaking the SignerInfo so that these issues can be dealt with.- Parameters:
baseInfo
- the SignerInformation to base this one on.info
- the SignerInfo to associate with the existing baseInfo data.
-
-
Method Details
-
isCounterSignature
public boolean isCounterSignature() -
getContentType
public org.bouncycastle.asn1.ASN1ObjectIdentifier getContentType() -
getSID
-
getVersion
public int getVersion()return the version number for this objects underlying SignerInfo structure. -
getDigestAlgorithmID
public org.bouncycastle.asn1.x509.AlgorithmIdentifier getDigestAlgorithmID() -
getDigestAlgOID
return the object identifier for the signature. -
getDigestAlgParams
public byte[] getDigestAlgParams()return the signature parameters, or null if there aren't any. -
getContentDigest
public byte[] getContentDigest()return the content digest that was calculated during verification. -
getEncryptionAlgOID
return the object identifier for the signature. -
getEncryptionAlgParams
public byte[] getEncryptionAlgParams()return the signature/encryption algorithm parameters, or null if there aren't any. -
getSignedAttributes
public org.bouncycastle.asn1.cms.AttributeTable getSignedAttributes()return a table of the signed attributes - indexed by the OID of the attribute. -
getUnsignedAttributes
public org.bouncycastle.asn1.cms.AttributeTable getUnsignedAttributes()return a table of the unsigned attributes indexed by the OID of the attribute. -
getSignature
public byte[] getSignature()return the encoded signature -
getCounterSignatures
Return a SignerInformationStore containing the counter signatures attached to this signer. If no counter signatures are present an empty store is returned. -
getEncodedSignedAttributes
return the DER encoding of the signed attributes.- Throws:
IOException
- if an encoding error occurs.
-
verify
Verify that the given verifier can successfully verify the signature on this SignerInformation object.- Parameters:
verifier
- a suitably configured SignerInformationVerifier.- Returns:
- true if the signer information is verified, false otherwise.
- Throws:
CMSVerifierCertificateNotValidException
- if the provider has an associated certificate and the certificate is not valid at the time given as the SignerInfo's signing time.CMSException
- if the verifier is unable to create a ContentVerifiers or DigestCalculators.
-
toASN1Structure
public org.bouncycastle.asn1.cms.SignerInfo toASN1Structure()Return the underlying ASN.1 object defining this SignerInformation object.- Returns:
- a SignerInfo.
-
replaceUnsignedAttributes
public static SignerInformation replaceUnsignedAttributes(SignerInformation signerInformation, org.bouncycastle.asn1.cms.AttributeTable unsignedAttributes) Return a signer information object with the passed in unsigned attributes replacing the ones that are current associated with the object passed in.- Parameters:
signerInformation
- the signerInfo to be used as the basis.unsignedAttributes
- the unsigned attributes to add.- Returns:
- a copy of the original SignerInformationObject with the changed attributes.
-
addCounterSigners
public static SignerInformation addCounterSigners(SignerInformation signerInformation, SignerInformationStore counterSigners) Return a signer information object with passed in SignerInformationStore representing counter signatures attached as an unsigned attribute.- Parameters:
signerInformation
- the signerInfo to be used as the basis.counterSigners
- signer info objects carrying counter signature.- Returns:
- a copy of the original SignerInformationObject with the changed attributes.
-