Class SignerInfo

java.lang.Object
org.bouncycastle.asn1.ASN1Object
org.bouncycastle.asn1.cms.SignerInfo
All Implemented Interfaces:
ASN1Encodable, Encodable

public class SignerInfo extends ASN1Object
RFC 5652: Signature container per Signer, see SignerIdentifier.
 PKCS#7:

 SignerInfo ::= SEQUENCE {
     version                   Version,
     sid                       SignerIdentifier,
     digestAlgorithm           DigestAlgorithmIdentifier,
     authenticatedAttributes   [0] IMPLICIT Attributes OPTIONAL,
     digestEncryptionAlgorithm DigestEncryptionAlgorithmIdentifier,
     encryptedDigest           EncryptedDigest,
     unauthenticatedAttributes [1] IMPLICIT Attributes OPTIONAL
 }

 EncryptedDigest ::= OCTET STRING

 DigestAlgorithmIdentifier ::= AlgorithmIdentifier

 DigestEncryptionAlgorithmIdentifier ::= AlgorithmIdentifier

 -----------------------------------------

 RFC 5652:

 SignerInfo ::= SEQUENCE {
     version            CMSVersion,
     sid                SignerIdentifier,
     digestAlgorithm    DigestAlgorithmIdentifier,
     signedAttrs        [0] IMPLICIT SignedAttributes OPTIONAL,
     signatureAlgorithm SignatureAlgorithmIdentifier,
     signature          SignatureValue,
     unsignedAttrs      [1] IMPLICIT UnsignedAttributes OPTIONAL
 }

 -- SignerIdentifier referenced certificates are at containing
 -- SignedData certificates element.

 SignerIdentifier ::= CHOICE {
     issuerAndSerialNumber IssuerAndSerialNumber,
     subjectKeyIdentifier  [0] SubjectKeyIdentifier }

 -- See Attributes for generalized SET OF Attribute

 SignedAttributes   ::= SET SIZE (1..MAX) OF Attribute
 UnsignedAttributes ::= SET SIZE (1..MAX) OF Attribute
 
 Attribute ::= SEQUENCE {
     attrType   OBJECT IDENTIFIER,
     attrValues SET OF AttributeValue }

 AttributeValue ::= ANY
 
 SignatureValue ::= OCTET STRING
 
  • Constructor Details

    • SignerInfo

      public SignerInfo(SignerIdentifier sid, AlgorithmIdentifier digAlgorithm, ASN1Set authenticatedAttributes, AlgorithmIdentifier digEncryptionAlgorithm, ASN1OctetString encryptedDigest, ASN1Set unauthenticatedAttributes)
      Parameters:
      sid -
      digAlgorithm - CMS knows as 'digestAlgorithm'
      authenticatedAttributes - CMS knows as 'signedAttrs'
      digEncryptionAlgorithm - CMS knows as 'signatureAlgorithm'
      encryptedDigest - CMS knows as 'signature'
      unauthenticatedAttributes - CMS knows as 'unsignedAttrs'
    • SignerInfo

      public SignerInfo(SignerIdentifier sid, AlgorithmIdentifier digAlgorithm, Attributes authenticatedAttributes, AlgorithmIdentifier digEncryptionAlgorithm, ASN1OctetString encryptedDigest, Attributes unauthenticatedAttributes)
      Parameters:
      sid -
      digAlgorithm - CMS knows as 'digestAlgorithm'
      authenticatedAttributes - CMS knows as 'signedAttrs'
      digEncryptionAlgorithm - CMS knows as 'signatureAlgorithm'
      encryptedDigest - CMS knows as 'signature'
      unauthenticatedAttributes - CMS knows as 'unsignedAttrs'
  • Method Details