PHP-код:
echo hash('sha256', 'jake');
Вывод PHP:
cdf30c6b345276278bedc7bcedd9d5582f5b8e0c1dd858f46ef4ea231f92731d
Java-код:
String s = "jake";
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.update(s.getBytes(Charset.forName("UTF-8")));
byte[] hashed = md.digest();
String s2 = "";
for (byte b : hashed) {
s2 += b;
}
System.out.println(s2);
Вывод Java:
-51-1312107528211839-117-19-57-68-19-39-43884791-1141229-4088-12110-12-223531-11011529
Я ожидал, что они вернут один и тот же результат. Очевидно, это не так. Как я могу заставить их совпадать или это невозможно?
РЕДАКТИРОВАТЬ: я сделал ошибку, думаю, теперь у меня есть ответ на вопрос.