Bouncy Castle Cryptography Library 1.45

## org.bouncycastle.bcpg
Class SignaturePacket

    java.lang.Object
      org.bouncycastle.bcpg.Packet
          org.bouncycastle.bcpg.ContainedPacket
              org.bouncycastle.bcpg.SignaturePacket

All Implemented Interfaces:
  PacketTags, PublicKeyAlgorithmTags

    public class SignaturePacket

extends ContainedPacket
implements PublicKeyAlgorithmTags

generic signature packet

Field Summary

Fields inherited from interface org.bouncycastle.bcpg.PublicKeyAlgorithmTags
`DIFFIE_HELLMAN, DSA, EC, ECDSA, ELGAMAL_ENCRYPT, ELGAMAL_GENERAL, EXPERIMENTAL_1, EXPERIMENTAL_10, EXPERIMENTAL_11, EXPERIMENTAL_2, EXPERIMENTAL_3, EXPERIMENTAL_4, EXPERIMENTAL_5, EXPERIMENTAL_6, EXPERIMENTAL_7, EXPERIMENTAL_8, EXPERIMENTAL_9, RSA_ENCRYPT, RSA_GENERAL, RSA_SIGN`

Fields inherited from interface org.bouncycastle.bcpg.PacketTags
`COMPRESSED_DATA, EXPERIMENTAL_1, EXPERIMENTAL_2, EXPERIMENTAL_3, EXPERIMENTAL_4, LITERAL_DATA, MARKER, MOD_DETECTION_CODE, ONE_PASS_SIGNATURE, PUBLIC_KEY, PUBLIC_KEY_ENC_SESSION, PUBLIC_SUBKEY, RESERVED, SECRET_KEY, SECRET_SUBKEY, SIGNATURE, SYM_ENC_INTEGRITY_PRO, SYMMETRIC_KEY_ENC, SYMMETRIC_KEY_ENC_SESSION, TRUST, USER_ATTRIBUTE, USER_ID`

Constructor Summary
`SignaturePacket(int version, int signatureType, long keyID, int keyAlgorithm, int hashAlgorithm, long creationTime, byte[] fingerPrint, MPInteger[] signature)` Generate a version 2/3 signature packet.
`SignaturePacket(int version, int signatureType, long keyID, int keyAlgorithm, int hashAlgorithm, SignatureSubpacket[] hashedData, SignatureSubpacket[] unhashedData, byte[] fingerPrint, MPInteger[] signature)`
`SignaturePacket(int signatureType, long keyID, int keyAlgorithm, int hashAlgorithm, SignatureSubpacket[] hashedData, SignatureSubpacket[] unhashedData, byte[] fingerPrint, MPInteger[] signature)` Generate a version 4 signature packet.

Method Summary
`void` `encode(BCPGOutputStream out)`
`long` `getCreationTime()` Return the creation time of the signature in milli-seconds.
`int` `getHashAlgorithm()` return the hashAlgorithm tag
`SignatureSubpacket[]` `getHashedSubPackets()`
`int` `getKeyAlgorithm()` return the encryption algorithm tag
`long` `getKeyID()` return the keyID
`MPInteger[]` `getSignature()` return the signature as a set of integers - note this is normalised to be the ASN.1 encoding of what appears in the signature packet.
`byte[]` `getSignatureBytes()` Return the byte encoding of the signature section.
`byte[]` `getSignatureTrailer()` return the signature trailer that must be included with the data to reconstruct the signature
`int` `getSignatureType()` return the signature type.
`SignatureSubpacket[]` `getUnhashedSubPackets()`
`int` `getVersion()` get the version number

Methods inherited from class org.bouncycastle.bcpg.ContainedPacket
`getEncoded`

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

Constructor Detail

### SignaturePacket

    public SignaturePacket(int signatureType,
                           long keyID,
                           int keyAlgorithm,
                           int hashAlgorithm,
                           SignatureSubpacket[] hashedData,
                           SignatureSubpacket[] unhashedData,
                           byte[] fingerPrint,
                           MPInteger[] signature)

  Generate a version 4 signature packet.

  Parameters:
    `signatureType` -
    `keyAlgorithm` -
    `hashAlgorithm` -
    `hashedData` -
    `unhashedData` -
    `fingerPrint` -
    `signature` -

### SignaturePacket

    public SignaturePacket(int version,
                           int signatureType,
                           long keyID,
                           int keyAlgorithm,
                           int hashAlgorithm,
                           long creationTime,
                           byte[] fingerPrint,
                           MPInteger[] signature)

  Generate a version 2/3 signature packet.

  Parameters:
    `signatureType` -
    `keyAlgorithm` -
    `hashAlgorithm` -
    `fingerPrint` -
    `signature` -

### SignaturePacket

    public SignaturePacket(int version,
                           int signatureType,
                           long keyID,
                           int keyAlgorithm,
                           int hashAlgorithm,
                           SignatureSubpacket[] hashedData,
                           SignatureSubpacket[] unhashedData,
                           byte[] fingerPrint,
                           MPInteger[] signature)

Method Detail

### getVersion

    public int getVersion()

  get the version number

### getSignatureType

    public int getSignatureType()

  return the signature type.

### getKeyID

    public long getKeyID()

  return the keyID

  Returns:
    the keyID that created the signature.

### getSignatureTrailer

    public byte[] getSignatureTrailer()

  return the signature trailer that must be included with the data to reconstruct the signature

  Returns:
    byte[]

### getKeyAlgorithm

    public int getKeyAlgorithm()

  return the encryption algorithm tag

### getHashAlgorithm

    public int getHashAlgorithm()

  return the hashAlgorithm tag

### getSignature

    public MPInteger[] getSignature()

  return the signature as a set of integers - note this is normalised to be the ASN.1 encoding of what appears in the signature packet.

### getSignatureBytes

    public byte[] getSignatureBytes()

  Return the byte encoding of the signature section.

  Returns:
    uninterpreted signature bytes.

### getHashedSubPackets

    public SignatureSubpacket[] getHashedSubPackets()

### getUnhashedSubPackets

    public SignatureSubpacket[] getUnhashedSubPackets()

### getCreationTime

    public long getCreationTime()

  Return the creation time of the signature in milli-seconds.

  Returns:
    the creation time in millis

### encode

    public void encode(BCPGOutputStream out)
                throws java.io.IOException

  Specified by:
    `encode` in class `ContainedPacket`
  Throws:
    `java.io.IOException`

Bouncy Castle Cryptography Library 1.45