Bouncy Castle Cryptography Library 1.45

## org.bouncycastle.openpgp
Class PGPSignatureSubpacketGenerator

    java.lang.Object
      org.bouncycastle.openpgp.PGPSignatureSubpacketGenerator

    public class PGPSignatureSubpacketGenerator

extends java.lang.Object

Generator for signature subpackets.

Constructor Summary
`PGPSignatureSubpacketGenerator()`

Method Summary
`PGPSignatureSubpacketVector` `generate()`
`void` `setEmbeddedSignature(boolean isCritical, PGPSignature pgpSignature)`
`void` `setExportable(boolean isCritical, boolean isExportable)`
`void` `setKeyExpirationTime(boolean isCritical, long seconds)` Set the number of seconds a key is valid for after the time of its creation.
`void` `setKeyFlags(boolean isCritical, int flags)`
`void` `setNotationData(boolean isCritical, boolean isHumanReadable, java.lang.String notationName, java.lang.String notationValue)`
`void` `setPreferredCompressionAlgorithms(boolean isCritical, int[] algorithms)`
`void` `setPreferredHashAlgorithms(boolean isCritical, int[] algorithms)`
`void` `setPreferredSymmetricAlgorithms(boolean isCritical, int[] algorithms)`
`void` `setPrimaryUserID(boolean isCritical, boolean isPrimaryUserID)`
`void` `setRevocable(boolean isCritical, boolean isRevocable)`
`void` `setSignatureCreationTime(boolean isCritical, java.util.Date date)` Set the creation time for the signature.
`void` `setSignatureExpirationTime(boolean isCritical, long seconds)` Set the number of seconds a signature is valid for after the time of its creation.
`void` `setSignerUserID(boolean isCritical, java.lang.String userID)`
`void` `setTrust(boolean isCritical, int depth, int trustAmount)` Add a TrustSignature packet to the signature.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PGPSignatureSubpacketGenerator

    public PGPSignatureSubpacketGenerator()

Method Detail

### setRevocable

    public void setRevocable(boolean isCritical,
                             boolean isRevocable)

### setExportable

    public void setExportable(boolean isCritical,
                              boolean isExportable)

### setTrust

    public void setTrust(boolean isCritical,
                         int depth,
                         int trustAmount)

  Add a TrustSignature packet to the signature. The values for depth and trust are largely installation dependent but there are some guidelines in RFC 4880 - 5.2.3.13.

  Parameters:
    `isCritical` - true if the packet is critical.
    `depth` - depth level.
    `trustAmount` - trust amount.

### setKeyExpirationTime

    public void setKeyExpirationTime(boolean isCritical,
                                     long seconds)

  Set the number of seconds a key is valid for after the time of its creation. A value of zero means the key never expires.

  Parameters:
    `isCritical` - true if should be treated as critical, false otherwise.
    `seconds` -

### setSignatureExpirationTime

    public void setSignatureExpirationTime(boolean isCritical,
                                           long seconds)

  Set the number of seconds a signature is valid for after the time of its creation. A value of zero means the signature never expires.

  Parameters:
    `isCritical` - true if should be treated as critical, false otherwise.
    `seconds` -

### setSignatureCreationTime

    public void setSignatureCreationTime(boolean isCritical,
                                         java.util.Date date)

  Set the creation time for the signature.

  Note: this overrides the generation of a creation time when the signature is generated.

### setPreferredHashAlgorithms

    public void setPreferredHashAlgorithms(boolean isCritical,
                                           int[] algorithms)

### setPreferredSymmetricAlgorithms

    public void setPreferredSymmetricAlgorithms(boolean isCritical,
                                                int[] algorithms)

### setPreferredCompressionAlgorithms

    public void setPreferredCompressionAlgorithms(boolean isCritical,
                                                  int[] algorithms)

### setKeyFlags

    public void setKeyFlags(boolean isCritical,
                            int flags)

### setSignerUserID

    public void setSignerUserID(boolean isCritical,
                                java.lang.String userID)

### setEmbeddedSignature

    public void setEmbeddedSignature(boolean isCritical,
                                     PGPSignature pgpSignature)
                              throws java.io.IOException

  Throws:
    `java.io.IOException`

### setPrimaryUserID

    public void setPrimaryUserID(boolean isCritical,
                                 boolean isPrimaryUserID)

### setNotationData

    public void setNotationData(boolean isCritical,
                                boolean isHumanReadable,
                                java.lang.String notationName,
                                java.lang.String notationValue)

### generate

    public PGPSignatureSubpacketVector generate()

Bouncy Castle Cryptography Library 1.45