# Enum Class CryptoPrimitive

java.lang.Object
java.lang.Enum<CryptoPrimitive>
java.security.CryptoPrimitive

All Implemented Interfaces:
  `Serializable, Comparable<CryptoPrimitive>, Constable`

public enum CryptoPrimitive extends Enum<CryptoPrimitive>
An enumeration of cryptographic primitives.

Since:
  1.7

- ## Nested Class Summary

  ### Nested classes/interfaces declared in class Enum

  `Enum.EnumDesc<E>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `BLOCK_CIPHER`
  Symmetric primitive: block cipher
  `KEY_AGREEMENT`
  Asymmetric primitive: key agreement and key distribution
  `KEY_ENCAPSULATION`
  Asymmetric primitive: key encapsulation mechanism
  `KEY_WRAP`
  Symmetric primitive: key wrap
  `MAC`
  Symmetric primitive: message authentication code
  `MESSAGE_DIGEST`
  Hash function
  `PUBLIC_KEY_ENCRYPTION`
  Asymmetric primitive: public key encryption
  `SECURE_RANDOM`
  Cryptographic random number generator
  `SIGNATURE`
  Asymmetric primitive: signature scheme
  `STREAM_CIPHER`
  Symmetric primitive: stream cipher

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static CryptoPrimitive`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static CryptoPrimitive[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods declared in class Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

  ### Methods declared in class Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### MESSAGE_DIGEST

    public static final CryptoPrimitive MESSAGE_DIGEST
    Hash function

  - ### SECURE_RANDOM

    public static final CryptoPrimitive SECURE_RANDOM
    Cryptographic random number generator

  - ### BLOCK_CIPHER

    public static final CryptoPrimitive BLOCK_CIPHER
    Symmetric primitive: block cipher

  - ### STREAM_CIPHER

    public static final CryptoPrimitive STREAM_CIPHER
    Symmetric primitive: stream cipher

  - ### MAC

    public static final CryptoPrimitive MAC
    Symmetric primitive: message authentication code

  - ### KEY_WRAP

    public static final CryptoPrimitive KEY_WRAP
    Symmetric primitive: key wrap

  - ### PUBLIC_KEY_ENCRYPTION

    public static final CryptoPrimitive PUBLIC_KEY_ENCRYPTION
    Asymmetric primitive: public key encryption

  - ### SIGNATURE

    public static final CryptoPrimitive SIGNATURE
    Asymmetric primitive: signature scheme

  - ### KEY_ENCAPSULATION

    public static final CryptoPrimitive KEY_ENCAPSULATION
    Asymmetric primitive: key encapsulation mechanism

  - ### KEY_AGREEMENT

    public static final CryptoPrimitive KEY_AGREEMENT
    Asymmetric primitive: key agreement and key distribution

- ## Method Details

  - ### values

    public static CryptoPrimitive[] 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 CryptoPrimitive 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