org.bouncycastle.cms

Class SignerInformation


public class SignerInformation
extends java.lang.Object

an expanded SignerInfo block from a CMS Signed message

Method Summary

String
getDigestAlgOID()
return the object identifier for the signature.
byte[]
getDigestAlgParams()
return the signature parameters, or null if there aren't any.
String
getEncryptionAlgOID()
return the object identifier for the signature.
byte[]
getEncryptionAlgParams()
return the signature/encyrption algorithm parameters, or null if there aren't any.
SignerId
getSID()
byte[]
getSignature()
return the encoded signature
AttributeTable
getSignedAttributes()
return a table of the signed attributes - indexed by the OID of the attribute.
AttributeTable
getUnsignedAttributes()
return a table of the unsigned attributes indexed by the OID of the attribute.
static SignerInformation
replaceUnsignedAttributes(SignerInformation signerInformation, 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.
boolean
verify(PublicKey key, String sigProvider)
verify that the given public key succesfully handles and confirms the signature associated with this signer.
boolean
verify(X509Certificate cert, String sigProvider)
verify that the given certificate succesfully handles and confirms the signature associated with this signer and, if a signingTime attribute is available, that the certificate was valid at the time the signature was generated.

Method Details

getDigestAlgOID

public String getDigestAlgOID()
return the object identifier for the signature.


getDigestAlgParams

public byte[] getDigestAlgParams()
return the signature parameters, or null if there aren't any.


getEncryptionAlgOID

public String getEncryptionAlgOID()
return the object identifier for the signature.


getEncryptionAlgParams

public byte[] getEncryptionAlgParams()
return the signature/encyrption algorithm parameters, or null if there aren't any.


getSID

public SignerId getSID()


getSignature

public byte[] getSignature()
return the encoded signature


getSignedAttributes

public AttributeTable getSignedAttributes()
return a table of the signed attributes - indexed by the OID of the attribute.


getUnsignedAttributes

public AttributeTable getUnsignedAttributes()
return a table of the unsigned attributes indexed by the OID of the attribute.


replaceUnsignedAttributes

public static SignerInformation replaceUnsignedAttributes(SignerInformation signerInformation,
                                                          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.


verify

public boolean verify(PublicKey key,
                      String sigProvider)
            throws NoSuchAlgorithmException,
                   NoSuchProviderException,
                   CMSException
verify that the given public key succesfully handles and confirms the signature associated with this signer.


verify

public boolean verify(X509Certificate cert,
                      String sigProvider)
            throws NoSuchAlgorithmException,
                   NoSuchProviderException,
                   CertificateExpiredException,
                   CertificateNotYetValidException,
                   CMSException
verify that the given certificate succesfully handles and confirms the signature associated with this signer and, if a signingTime attribute is available, that the certificate was valid at the time the signature was generated.