Class PGPDataFormat


@Metadata(firstVersion="2.9.0", label="dataformat,transformation,security", title="PGP") public class PGPDataFormat extends DataFormatDefinition
Encrypt and decrypt messages using Java Cryptographic Extension (JCE) and PGP.
  • Constructor Details

    • PGPDataFormat

      public PGPDataFormat()
  • Method Details

    • getSignatureKeyUserid

      public String getSignatureKeyUserid()
    • setSignatureKeyUserid

      public void setSignatureKeyUserid(String signatureKeyUserid)
      User ID of the key in the PGP keyring used for signing (during encryption) or signature verification (during decryption). During the signature verification process the specified User ID restricts the public keys from the public keyring which can be used for the verification. If no User ID is specified for the signature verficiation then any public key in the public keyring can be used for the verification. Can also be only a part of a user ID. For example, if the user ID is "Test User <[email protected]>" then you can use the part "Test User" or "<[email protected]>" to address the User ID.
    • getSignaturePassword

      public String getSignaturePassword()
    • setSignaturePassword

      public void setSignaturePassword(String signaturePassword)
      Password used when opening the private key used for signing (during encryption).
    • getSignatureKeyFileName

      public String getSignatureKeyFileName()
    • setSignatureKeyFileName

      public void setSignatureKeyFileName(String signatureKeyFileName)
      Filename of the keyring to use for signing (during encryption) or for signature verification (during decryption); must be accessible as a classpath resource (but you can specify a location in the file system by using the "file:" prefix).
    • getSignatureKeyRing

      public String getSignatureKeyRing()
    • setSignatureKeyRing

      public void setSignatureKeyRing(String signatureKeyRing)
      Keyring used for signing/verifying as byte array. You can not set the signatureKeyFileName and signatureKeyRing at the same time.
    • getHashAlgorithm

      public String getHashAlgorithm()
    • setHashAlgorithm

      public void setHashAlgorithm(String hashAlgorithm)
      Signature hash algorithm; possible values are defined in org.bouncycastle.bcpg.HashAlgorithmTags; for example 2 (= SHA1), 8 (= SHA256), 9 (= SHA384), 10 (= SHA512), 11 (=SHA224). Only relevant for signing.
    • getArmored

      public String getArmored()
    • setArmored

      public void setArmored(String armored)
      This option will cause PGP to base64 encode the encrypted text, making it available for copy/paste, etc.
    • getIntegrity

      public String getIntegrity()
    • setIntegrity

      public void setIntegrity(String integrity)
      Adds an integrity check/sign into the encryption file.

      The default value is true.

    • getKeyFileName

      public String getKeyFileName()
    • setKeyFileName

      public void setKeyFileName(String keyFileName)
      Filename of the keyring; must be accessible as a classpath resource (but you can specify a location in the file system by using the "file:" prefix).
    • getKeyUserid

      public String getKeyUserid()
    • setKeyUserid

      public void setKeyUserid(String keyUserid)
      The user ID of the key in the PGP keyring used during encryption. Can also be only a part of a user ID. For example, if the user ID is "Test User <[email protected]>" then you can use the part "Test User" or "<[email protected]>" to address the user ID.
    • getPassword

      public String getPassword()
    • getAlgorithm

      public String getAlgorithm()
    • setAlgorithm

      public void setAlgorithm(String algorithm)
      Symmetric key encryption algorithm; possible values are defined in org.bouncycastle.bcpg.SymmetricKeyAlgorithmTags; for example 2 (= TRIPLE DES), 3 (= CAST5), 4 (= BLOWFISH), 6 (= DES), 7 (= AES_128). Only relevant for encrypting.
    • getCompressionAlgorithm

      public String getCompressionAlgorithm()
    • setCompressionAlgorithm

      public void setCompressionAlgorithm(String compressionAlgorithm)
      Compression algorithm; possible values are defined in org.bouncycastle.bcpg.CompressionAlgorithmTags; for example 0 (= UNCOMPRESSED), 1 (= ZIP), 2 (= ZLIB), 3 (= BZIP2). Only relevant for encrypting.
    • setPassword

      public void setPassword(String password)
      Password used when opening the private key (not used for encryption).
    • getProvider

      public String getProvider()
    • setProvider

      public void setProvider(String provider)
      Java Cryptography Extension (JCE) provider, default is Bouncy Castle ("BC"). Alternatively you can use, for example, the IAIK JCE provider; in this case the provider must be registered beforehand and the Bouncy Castle provider must not be registered beforehand. The Sun JCE provider does not work.
    • getSignatureVerificationOption

      public String getSignatureVerificationOption()
    • setSignatureVerificationOption

      public void setSignatureVerificationOption(String signatureVerificationOption)
      Controls the behavior for verifying the signature during unmarshaling. There are 4 values possible: "optional": The PGP message may or may not contain signatures; if it does contain signatures, then a signature verification is executed. "required": The PGP message must contain at least one signature; if this is not the case an exception (PGPException) is thrown. A signature verification is executed. "ignore": Contained signatures in the PGP message are ignored; no signature verification is executed. "no_signature_allowed": The PGP message must not contain a signature; otherwise an exception (PGPException) is thrown.