Class MessageDigests

java.lang.Object
org.elasticsearch.common.hash.MessageDigests

public final class MessageDigests extends Object
This MessageDigests class provides convenience methods for obtaining thread local MessageDigest instances for MD5, SHA-1, SHA-256 and SHA-512 message digests.
  • Constructor Details

    • MessageDigests

      public MessageDigests()
  • Method Details

    • md5

      public static MessageDigest md5()
      Returns a MessageDigest instance for MD5 digests; note that the instance returned is thread local and must not be shared amongst threads.
      Returns:
      a thread local MessageDigest instance that provides MD5 message digest functionality.
    • sha1

      public static MessageDigest sha1()
      Returns a MessageDigest instance for SHA-1 digests; note that the instance returned is thread local and must not be shared amongst threads.
      Returns:
      a thread local MessageDigest instance that provides SHA-1 message digest functionality.
    • sha256

      public static MessageDigest sha256()
      Returns a MessageDigest instance for SHA-256 digests; note that the instance returned is thread local and must not be shared amongst threads.
      Returns:
      a thread local MessageDigest instance that provides SHA-256 message digest functionality.
    • sha512

      public static MessageDigest sha512()
      Returns a MessageDigest instance for SHA-512 digests; note that the instance returned is thread local and must not be shared amongst threads.
      Returns:
      a thread local MessageDigest instance that provides SHA-512 message digest functionality.
    • toHexString

      public static String toHexString(byte[] bytes)
      Format a byte array as a hex string.
      Parameters:
      bytes - the input to be represented as hex.
      Returns:
      a hex representation of the input as a String.
    • toHexCharArray

      public static char[] toHexCharArray(byte[] bytes)
      Encodes the byte array into a newly created hex char array, without allocating any other temporary variables.
      Parameters:
      bytes - the input to be encoded as hex.
      Returns:
      the hex encoding of the input as a char array.
    • digest

      public static byte[] digest(BytesReference bytesReference, MessageDigest digest)
      Updates the given digest with the given bytes reference and the returns the result of the digest.
      Parameters:
      bytesReference - bytes to add to digest
      digest - digest to update and return the result for
      Returns:
      digest result
    • digest

      public static byte[] digest(InputStream stream, MessageDigest digest) throws IOException
      Reads bytes from the stream and updates the given digest. Returns the result of the digest.
      Returns:
      digest result
      Throws:
      IOException