Class Digest


  • public class Digest
    extends java.lang.Object
    Describes a digest value and the digest algorithm used. Digests can have several use cases such as ensuring the integrity of representations exchanges between resources, or for authentication purpose.
    Author:
    Jerome Louvel
    See Also:
    Representation.getDigest()
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String ALGORITHM_HTTP_DIGEST
      Digest algorithm for the HTTP DIGEST scheme.
      static java.lang.String ALGORITHM_MD2
      Digest algorithm defined in RFC 1319.
      static java.lang.String ALGORITHM_MD5
      Digest algorithm defined in RFC 1321.
      static java.lang.String ALGORITHM_NONE
      No digest algorithm defined.
      static java.lang.String ALGORITHM_SHA_1
      Digest algorithm defined in Secure Hash Standard, NIST FIPS 180-1.
      static java.lang.String ALGORITHM_SHA_256
      NIST approved digest algorithm from SHA-2 family.
      static java.lang.String ALGORITHM_SHA_384
      NIST approved digest algorithm from SHA-2 family.
      static java.lang.String ALGORITHM_SHA_512
      NIST approved digest algorithm from SHA-2 family.
    • Constructor Summary

      Constructors 
      Constructor Description
      Digest​(byte[] value)
      Constructor using the MD5 algorithm by default.
      Digest​(java.lang.String algorithm, byte[] value)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object obj)  
      java.lang.String getAlgorithm()
      Returns the digest algorithm.
      byte[] getValue()
      Returns the digest value.
      int hashCode()  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • ALGORITHM_MD2

        public static final java.lang.String ALGORITHM_MD2
        Digest algorithm defined in RFC 1319.
        See Also:
        Constant Field Values
      • ALGORITHM_MD5

        public static final java.lang.String ALGORITHM_MD5
        Digest algorithm defined in RFC 1321.
        See Also:
        Constant Field Values
      • ALGORITHM_NONE

        public static final java.lang.String ALGORITHM_NONE
        No digest algorithm defined.
        See Also:
        Constant Field Values
      • ALGORITHM_SHA_1

        public static final java.lang.String ALGORITHM_SHA_1
        Digest algorithm defined in Secure Hash Standard, NIST FIPS 180-1.
        See Also:
        Constant Field Values
      • ALGORITHM_SHA_256

        public static final java.lang.String ALGORITHM_SHA_256
        NIST approved digest algorithm from SHA-2 family.
        See Also:
        Constant Field Values
      • ALGORITHM_SHA_384

        public static final java.lang.String ALGORITHM_SHA_384
        NIST approved digest algorithm from SHA-2 family.
        See Also:
        Constant Field Values
      • ALGORITHM_SHA_512

        public static final java.lang.String ALGORITHM_SHA_512
        NIST approved digest algorithm from SHA-2 family.
        See Also:
        Constant Field Values
      • ALGORITHM_HTTP_DIGEST

        public static final java.lang.String ALGORITHM_HTTP_DIGEST
        Digest algorithm for the HTTP DIGEST scheme. This is exactly the A1 value specified in RFC2617 which is a MD5 hash of the user name, realm and password, separated by a colon character.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Digest

        public Digest​(byte[] value)
        Constructor using the MD5 algorithm by default.
        Parameters:
        value - The digest value.
      • Digest

        public Digest​(java.lang.String algorithm,
                      byte[] value)
        Constructor.
        Parameters:
        algorithm - The digest algorithm.
        value - The digest value.
    • Method Detail

      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • getAlgorithm

        public java.lang.String getAlgorithm()
        Returns the digest algorithm.
        Returns:
        The digest algorithm.
      • getValue

        public byte[] getValue()
        Returns the digest value.
        Returns:
        The digest value.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object