Bouncy Castle Cryptography Library 1.46

org.bouncycastle.cms.jcajce
Class JcaSimpleSignerInfoGeneratorBuilder

java.lang.Object
  extended by org.bouncycastle.cms.jcajce.JcaSimpleSignerInfoGeneratorBuilder

public class JcaSimpleSignerInfoGeneratorBuilder
extends java.lang.Object

Use this class if you are using a provider that has all the facilities you need.

For example:

      CMSSignedDataGenerator gen = new CMSSignedDataGenerator();
      ContentSigner sha1Signer = new JcaContentSignerBuilder("SHA1withRSA").setProvider("BC").build(signKP.getPrivate());

      gen.addSignerInfoGenerator(
                new JcaSignerInfoGeneratorBuilder(
                     new JcaDigestCalculatorProviderBuilder().setProvider("BC").build())
                     .build(sha1Signer, signCert));
 
becomes:
      CMSSignedDataGenerator gen = new CMSSignedDataGenerator();

      gen.addSignerInfoGenerator(
                new JcaSimpleSignerInfoGeneratorBuilder()
                     .setProvider("BC")
                     .build("SHA1withRSA", signKP.getPrivate(), signCert));
 


Constructor Summary
JcaSimpleSignerInfoGeneratorBuilder()
           
 
Method Summary
 SignerInfoGenerator build(java.lang.String algorithmName, java.security.PrivateKey privateKey, byte[] keyIdentifier)
           
 SignerInfoGenerator build(java.lang.String algorithmName, java.security.PrivateKey privateKey, java.security.cert.X509Certificate certificate)
           
 JcaSimpleSignerInfoGeneratorBuilder setDirectSignature(boolean hasNoSignedAttributes)
          If the passed in flag is true, the signer signature will be based on the data, not a collection of signed attributes, and no signed attributes will be included.
 JcaSimpleSignerInfoGeneratorBuilder setProvider(java.security.Provider provider)
           
 JcaSimpleSignerInfoGeneratorBuilder setProvider(java.lang.String providerName)
           
 JcaSimpleSignerInfoGeneratorBuilder setSignedAttributeGenerator(org.bouncycastle.asn1.cms.AttributeTable attrTable)
          set up a DefaultSignedAttributeTableGenerator primed with the passed in AttributeTable.
 JcaSimpleSignerInfoGeneratorBuilder setSignedAttributeGenerator(CMSAttributeTableGenerator signedGen)
           
 JcaSimpleSignerInfoGeneratorBuilder setUnsignedAttributeGenerator(CMSAttributeTableGenerator unsignedGen)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JcaSimpleSignerInfoGeneratorBuilder

public JcaSimpleSignerInfoGeneratorBuilder()
                                    throws OperatorCreationException
Throws:
OperatorCreationException
Method Detail

setProvider

public JcaSimpleSignerInfoGeneratorBuilder setProvider(java.lang.String providerName)
                                                throws OperatorCreationException
Throws:
OperatorCreationException

setProvider

public JcaSimpleSignerInfoGeneratorBuilder setProvider(java.security.Provider provider)
                                                throws OperatorCreationException
Throws:
OperatorCreationException

setDirectSignature

public JcaSimpleSignerInfoGeneratorBuilder setDirectSignature(boolean hasNoSignedAttributes)
If the passed in flag is true, the signer signature will be based on the data, not a collection of signed attributes, and no signed attributes will be included.

Returns:
the builder object

setSignedAttributeGenerator

public JcaSimpleSignerInfoGeneratorBuilder setSignedAttributeGenerator(CMSAttributeTableGenerator signedGen)

setSignedAttributeGenerator

public JcaSimpleSignerInfoGeneratorBuilder setSignedAttributeGenerator(org.bouncycastle.asn1.cms.AttributeTable attrTable)
set up a DefaultSignedAttributeTableGenerator primed with the passed in AttributeTable.

Parameters:
attrTable - table of attributes for priming generator
Returns:
this.

setUnsignedAttributeGenerator

public JcaSimpleSignerInfoGeneratorBuilder setUnsignedAttributeGenerator(CMSAttributeTableGenerator unsignedGen)

build

public SignerInfoGenerator build(java.lang.String algorithmName,
                                 java.security.PrivateKey privateKey,
                                 java.security.cert.X509Certificate certificate)
                          throws OperatorCreationException,
                                 java.security.cert.CertificateEncodingException
Throws:
OperatorCreationException
java.security.cert.CertificateEncodingException

build

public SignerInfoGenerator build(java.lang.String algorithmName,
                                 java.security.PrivateKey privateKey,
                                 byte[] keyIdentifier)
                          throws OperatorCreationException,
                                 java.security.cert.CertificateEncodingException
Throws:
OperatorCreationException
java.security.cert.CertificateEncodingException

Bouncy Castle Cryptography Library 1.46