Как создать симметричный хэш из двух строк? Я в криптографии плохо разбираюсь, поэтому прошу совета.
У меня есть две строки
const str1 = "str1"
const str2 = "str2"
Мне нужно получить один и тот же хэш в не зависимости от порядка предоставления строк. Просто хэш, не шифрование текста с двумя ключами
hash(str1, str2) === hash(str2, str1)
Какой алгоритм в crypto для этого подойдет?

21 Авг 2019 в 07:11
178 +1
0
Ответы
1

Для создания симметричного хэша из двух строк вам подойдет алгоритм HMAC (Hash-based Message Authentication Code) в Node.js. Пример использования:

const crypto = require('crypto');
const str1 = "str1";
const str2 = "str2";
const hash1 = crypto.createHmac('sha256', 'secret').update(str1 + str2).digest('hex');
const hash2 = crypto.createHmac('sha256', 'secret').update(str2 + str1).digest('hex');
console.log(hash1); // Выведет один и тот же хэш
console.log(hash2); // Выведет один и тот же хэш

Обратите внимание, что в примере выше я использовал алгоритм sha256 и секретный ключ 'secret'. Вы можете выбрать другой алгоритм или ключ в зависимости от ваших требований.

20 Апр в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 541 автору
Первые отклики появятся уже в течение 10 минут
Прямой эфир