WeRn-rm
@WeRn-rm
Диванный разработчик

Почему не совпадают SHA-256 методами java, python, php?

Здравствуйте, подскажите пожалуйста, как правильно реализовать хэширование пароля на python. Когда на Java и Php все верно.

Суть в том, что java и php совпадают хэши, а на python с тем же значением: "111111" - выдает другой хэш

Код на java:
public static String encodePassword(String password) {
		try {
			MessageDigest messageDiegest = MessageDigest.getInstance("SHA-256");
			messageDiegest.update(password.getBytes("UTF-8"));
			return Base64.encodeToString(messageDiegest.digest(), false);
		}
		catch (NoSuchAlgorithmException e) {
			System.out.println("Exception while encoding password");
			throw new Error(e);
		}
		catch (UnsupportedEncodingException e) {
			System.out.println("Exception while encoding password");
			throw new Error(e);
		}
	}


Код на php:
$password = trim($pass1);
				$password = base64_encode(sha1($password, true));


Код на Python:
digest = hmac.new(bytes(ps, 'UTF-8'), msg=None, digestmod=hashlib.sha256).digest()
    signature = base64.b64encode(digest).decode()
    print(signature)


На java и php - выдает нужный мне хэш пароля "111111" - vLFfghR5tNV3K9DKhmwArV + SbjWAcgZZzIDTnJ0JgCo =
На python же выдает хэш того же пароля "111111" - 3EMl1xMKvwzg0nLFPbOdYZtAKH / cWN964EjE18KiRkw =
  • Вопрос задан
  • 1222 просмотра
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
26 апр. 2024, в 13:47
1000 руб./за проект
26 апр. 2024, в 13:40
4000 руб./за проект
26 апр. 2024, в 13:39
500 руб./за проект