Interface Hash.Algorithm

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean check​(byte[] plainText, byte[] hash)
      Returns whether the given plain text matches the given hash.
      boolean compatibleTo​(Hash.Algorithm other)
      Returns whether this algorithm can consistently check hash values created by the given algorithm.
      byte[] hash​(byte[] plainText)
      Returns a hash for the given plain text.
      int length()  
      String name()  
    • Method Detail

      • length

        int length()
      • hash

        byte[] hash​(byte[] plainText)
        Returns a hash for the given plain text. The result is not required to be deterministic - this means, multiple calls for the same plain text do not have to return the same hash. This is especially true for salted hashes.
        Parameters:
        plainText - the text to be hashed. Is never null.
        Returns:
        the hash of plainText. Must never return null.
      • check

        boolean check​(byte[] plainText,
                      byte[] hash)
        Returns whether the given plain text matches the given hash.
        Parameters:
        plainText - the text to be hashed. Is never null.
        hash - the hash of plainText. Is never null.
        Throws:
        IllegalArgumentException - if hash.length!=length().
      • compatibleTo

        boolean compatibleTo​(Hash.Algorithm other)
        Returns whether this algorithm can consistently check hash values created by the given algorithm.
        Throws:
        NullPointerException - if other is null