Class SignerInfoGenerator

java.lang.Object
org.bouncycastle.cms.SignerInfoGenerator

public class SignerInfoGenerator extends Object
  • Constructor Details

  • Method Details

    • getSID

      public org.bouncycastle.asn1.cms.SignerIdentifier getSID()
    • getGeneratedVersion

      public int getGeneratedVersion()
    • hasAssociatedCertificate

      public boolean hasAssociatedCertificate()
    • getAssociatedCertificate

      public X509CertificateHolder getAssociatedCertificate()
    • getDigestAlgorithm

      public org.bouncycastle.asn1.x509.AlgorithmIdentifier getDigestAlgorithm()
    • getCalculatingOutputStream

      public OutputStream getCalculatingOutputStream()
    • generate

      public org.bouncycastle.asn1.cms.SignerInfo generate(org.bouncycastle.asn1.ASN1ObjectIdentifier contentType) throws CMSException
      Throws:
      CMSException
    • getPredictedEncodedLength

      public long getPredictedEncodedLength(org.bouncycastle.asn1.ASN1ObjectIdentifier contentType)
      Return the exact encoded length of the SignerInfo this generator will produce for the given content type, or -1 when it cannot be predicted.

      Prediction requires the underlying ContentSigner to implement FixedLengthContentSigner and, where attribute generators are present, that they produce attribute sets whose encoded length does not depend on the values supplied at signing time. The default CMS signed-attribute table qualifies: the messageDigest value's length is fixed by the digest algorithm and signingTime is a fixed-width UTCTime (until 2050). Definite-length consumers verify the eventual SignerInfo against this prediction, so a length-unstable attribute generator fails at generation time rather than silently corrupting output.

    • getCalculatedDigest

      public byte[] getCalculatedDigest()
    • getSignedAttributeTableGenerator

      public CMSAttributeTableGenerator getSignedAttributeTableGenerator()
    • getUnsignedAttributeTableGenerator

      public CMSAttributeTableGenerator getUnsignedAttributeTableGenerator()