java.lang.Object
java.lang.Enum<JCEAlgorithm>
io.github.astrapi69.crypt.api.algorithm.JCEAlgorithm
All Implemented Interfaces:
Serializable, Comparable<JCEAlgorithm>, Constable

public enum JCEAlgorithm extends Enum<JCEAlgorithm>
The enum JCEAlgorithm represents various algorithms provided by the Java Cryptography Extension (JCE).
  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    AES algorithm for encrypting and decrypting data.
    Blowfish algorithm for encrypting and decrypting data.
    DES algorithm for encrypting and decrypting data.
    3DES (DESede) algorithm for encrypting and decrypting data.
    DH algorithm for key agreement using the Diffie-Hellman algorithm.
    DSA algorithm for generating and verifying digital signatures.
    DSA key factory for converting between different representations of DSA keys.
    DSA key pair generator for generating DSA key pairs.
    EC algorithm for generating elliptic curve key pairs.
    EC key factory for converting between different representations of elliptic curve keys.
    EC key pair generator for generating elliptic curve key pairs.
    ECDH algorithm for key agreement using the Elliptic Curve Diffie-Hellman algorithm.
    HmacMD5 algorithm for computing a message authentication code (MAC) using HMAC-MD5.
    HmacSHA1 algorithm for computing a message authentication code (MAC) using HMAC-SHA1.
    HmacSHA256 algorithm for computing a message authentication code (MAC) using HMAC-SHA256.
    HmacSHA384 algorithm for computing a message authentication code (MAC) using HMAC-SHA384.
    HmacSHA512 algorithm for computing a message authentication code (MAC) using HMAC-SHA512.
    Java KeyStore (JKS) type for storing cryptographic keys and certificates.
    MD5 algorithm for computing a message digest (hash) from input data.
    PKCS#12 type for storing cryptographic keys and certificates.
    Certification path builder using the PKIX algorithm.
    Key manager factory for managing key material with PKIX trust management.
    Trust manager factory for managing trust material with PKIX trust management.
    RC2 algorithm for encrypting and decrypting data.
    RC4 algorithm for encrypting and decrypting data.
    RSA algorithm for encrypting and decrypting data.
    RSA key factory for converting between different representations of RSA keys.
    RSA key pair generator for generating RSA key pairs.
    SHA-1 algorithm for computing a message digest (hash) from input data.
    SHA-256 algorithm for computing a message digest (hash) from input data.
    SHA-384 algorithm for computing a message digest (hash) from input data.
    SHA-512 algorithm for computing a message digest (hash) from input data.
    Key manager factory for managing key material for X.509 certificates using SunX509 algorithm.
    Trust manager factory for managing trust material for X.509 certificates using SunX509 algorithm.
    X.509 certificate factory for generating X.509 certificates from their encodings.
  • Method Summary

    Modifier and Type
    Method
    Description
    Gets the possible names for the algorithm.
    Gets the class name where the algorithm is used.
    Gets the description of the algorithm.
    Returns the enum constant of this class with the specified name.
    static JCEAlgorithm[]
    Returns an array containing the constants of this enum class, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • MD5

      public static final JCEAlgorithm MD5
      MD5 algorithm for computing a message digest (hash) from input data.
    • SHA1

      public static final JCEAlgorithm SHA1
      SHA-1 algorithm for computing a message digest (hash) from input data.
    • SHA256

      public static final JCEAlgorithm SHA256
      SHA-256 algorithm for computing a message digest (hash) from input data.
    • SHA384

      public static final JCEAlgorithm SHA384
      SHA-384 algorithm for computing a message digest (hash) from input data.
    • SHA512

      public static final JCEAlgorithm SHA512
      SHA-512 algorithm for computing a message digest (hash) from input data.
    • AES

      public static final JCEAlgorithm AES
      AES algorithm for encrypting and decrypting data.
    • DES

      public static final JCEAlgorithm DES
      DES algorithm for encrypting and decrypting data.
    • DESede

      public static final JCEAlgorithm DESede
      3DES (DESede) algorithm for encrypting and decrypting data.
    • Blowfish

      public static final JCEAlgorithm Blowfish
      Blowfish algorithm for encrypting and decrypting data.
    • RC2

      public static final JCEAlgorithm RC2
      RC2 algorithm for encrypting and decrypting data.
    • RC4

      public static final JCEAlgorithm RC4
      RC4 algorithm for encrypting and decrypting data.
    • RSA

      public static final JCEAlgorithm RSA
      RSA algorithm for encrypting and decrypting data.
    • DSA

      public static final JCEAlgorithm DSA
      DSA algorithm for generating and verifying digital signatures.
    • EC

      public static final JCEAlgorithm EC
      EC algorithm for generating elliptic curve key pairs.
    • DH

      public static final JCEAlgorithm DH
      DH algorithm for key agreement using the Diffie-Hellman algorithm.
    • ECDH

      public static final JCEAlgorithm ECDH
      ECDH algorithm for key agreement using the Elliptic Curve Diffie-Hellman algorithm.
    • HmacMD5

      public static final JCEAlgorithm HmacMD5
      HmacMD5 algorithm for computing a message authentication code (MAC) using HMAC-MD5.
    • HmacSHA1

      public static final JCEAlgorithm HmacSHA1
      HmacSHA1 algorithm for computing a message authentication code (MAC) using HMAC-SHA1.
    • HmacSHA256

      public static final JCEAlgorithm HmacSHA256
      HmacSHA256 algorithm for computing a message authentication code (MAC) using HMAC-SHA256.
    • HmacSHA384

      public static final JCEAlgorithm HmacSHA384
      HmacSHA384 algorithm for computing a message authentication code (MAC) using HMAC-SHA384.
    • HmacSHA512

      public static final JCEAlgorithm HmacSHA512
      HmacSHA512 algorithm for computing a message authentication code (MAC) using HMAC-SHA512.
    • RSA_KEYPAIR

      public static final JCEAlgorithm RSA_KEYPAIR
      RSA key pair generator for generating RSA key pairs.
    • DSA_KEYPAIR

      public static final JCEAlgorithm DSA_KEYPAIR
      DSA key pair generator for generating DSA key pairs.
    • EC_KEYPAIR

      public static final JCEAlgorithm EC_KEYPAIR
      EC key pair generator for generating elliptic curve key pairs.
    • RSA_KEYFACTORY

      public static final JCEAlgorithm RSA_KEYFACTORY
      RSA key factory for converting between different representations of RSA keys.
    • DSA_KEYFACTORY

      public static final JCEAlgorithm DSA_KEYFACTORY
      DSA key factory for converting between different representations of DSA keys.
    • EC_KEYFACTORY

      public static final JCEAlgorithm EC_KEYFACTORY
      EC key factory for converting between different representations of elliptic curve keys.
    • X509_CERT

      public static final JCEAlgorithm X509_CERT
      X.509 certificate factory for generating X.509 certificates from their encodings.
    • JKS_KEYSTORE

      public static final JCEAlgorithm JKS_KEYSTORE
      Java KeyStore (JKS) type for storing cryptographic keys and certificates.
    • PKCS12_KEYSTORE

      public static final JCEAlgorithm PKCS12_KEYSTORE
      PKCS#12 type for storing cryptographic keys and certificates.
    • SUNX509_KEYMANAGER

      public static final JCEAlgorithm SUNX509_KEYMANAGER
      Key manager factory for managing key material for X.509 certificates using SunX509 algorithm.
    • PKIX_KEYMANAGER

      public static final JCEAlgorithm PKIX_KEYMANAGER
      Key manager factory for managing key material with PKIX trust management.
    • SUNX509_TRUSTMANAGER

      public static final JCEAlgorithm SUNX509_TRUSTMANAGER
      Trust manager factory for managing trust material for X.509 certificates using SunX509 algorithm.
    • PKIX_TRUSTMANAGER

      public static final JCEAlgorithm PKIX_TRUSTMANAGER
      Trust manager factory for managing trust material with PKIX trust management.
    • PKIX_CERTPATH

      public static final JCEAlgorithm PKIX_CERTPATH
      Certification path builder using the PKIX algorithm.
  • Method Details

    • values

      public static JCEAlgorithm[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static JCEAlgorithm valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getClassName

      public String getClassName()
      Gets the class name where the algorithm is used.
      Returns:
      the class name
    • getDescription

      public String getDescription()
      Gets the description of the algorithm.
      Returns:
      the description
    • getAlgorithms

      public String[] getAlgorithms()
      Gets the possible names for the algorithm.
      Returns:
      the algorithm names