code: public static String hash(final String hashIt, final String salt,
  		final HashAlgorithm hashAlgorithm, final Charset charset) throws NoSuchAlgorithmException
  	{
  		final MessageDigest messageDigest = MessageDigest.getInstance(hashAlgorithm.getAlgorithm());
  		messageDigest.reset();
  		messageDigest.update(salt.getBytes(charset));
  		return new String(messageDigest.digest(hashIt.getBytes(charset)), charset);
  	}
docs: Hashes the given {@link String} object with the given parameters.
  
  @param hashIt
  the hash it
  @param salt
  the salt
  @param hashAlgorithm
  the hash algorithm
  @param charset
  the charset
  @return the generated {@link String} object
  @throws NoSuchAlgorithmException
  is thrown if instantiation of the MessageDigest object fails.