Class PrivateKeySignature

java.lang.Object
com.itextpdf.signatures.PrivateKeySignature
All Implemented Interfaces:
IExternalSignature

public class PrivateKeySignature extends Object implements IExternalSignature
Implementation of the IExternalSignature interface that can be used when you have a PrivateKey object.
Author:
Paulo Soares
  • Constructor Details

    • PrivateKeySignature

      public PrivateKeySignature (PrivateKey pk, String hashAlgorithm, String provider)
      Creates a PrivateKeySignature instance.
      Parameters:
      pk - A PrivateKey object.
      hashAlgorithm - A hash algorithm (e.g. "SHA-1", "SHA-256",...).
      provider - A security provider (e.g. "BC").
  • Method Details

    • getHashAlgorithm

      public String getHashAlgorithm()
      Returns the hash algorithm.
      Specified by:
      getHashAlgorithm in interface IExternalSignature
      Returns:
      The hash algorithm (e.g. "SHA-1", "SHA-256,...").
    • getEncryptionAlgorithm

      public String getEncryptionAlgorithm()
      Returns the encryption algorithm used for signing.
      Specified by:
      getEncryptionAlgorithm in interface IExternalSignature
      Returns:
      The encryption algorithm ("RSA" or "DSA").
    • sign

      public byte[] sign (byte[] message) throws GeneralSecurityException
      Signs the given message using the encryption algorithm in combination with the hash algorithm.
      Specified by:
      sign in interface IExternalSignature
      Parameters:
      message - The message you want to be hashed and signed.
      Returns:
      A signed message digest.
      Throws:
      GeneralSecurityException - when requested cryptographic algorithm or security provider is not available