Вот алгоритм в Java:
public String getHash(String password, String salt) throws Exception {
    String input = password + salt;
    MessageDigest md = MessageDigest.getInstance(SHA-512);
    byte[] out = md.digest(input.getBytes());
    return HexEncoder.toHex(out);
}
Предположим, что соль известна. Я хочу знать время для грубой силы, когда пароль является словарем, а также когда это не словарное слово.