Основна проблема створення хеш-паролю в JavaScript полягає в тому, що його легко вгадати. Хеш-пароль — це просто рядок символів, який хешується або перетворюється на унікальне число, а потім зберігається на комп’ютері користувача. Кожен, хто знає хеш-пароль, може легко увійти в обліковий запис користувача, не запам’ятовуючи справжній пароль.
var password = ""; var salt = ""; function hashPassword(password, salt) { var hash = CryptoJS.SHA256(password + salt); return hash.toString(CryptoJS.enc.Hex); }
var password = “”;
У цьому рядку створюється змінна під назвою пароль і встановлюється рівним порожньому рядку.
var salt = “”;
Цей рядок створює змінну під назвою salt і встановлює їй рівність порожнього рядка.
функція hashPassword(пароль, сіль) {
var hash = CryptoJS.SHA256(пароль + сіль);
return hash.toString(CryptoJS.enc.Hex);
}
Ця функція приймає два параметри, пароль і сіль, і повертає хешовану версію пароля за допомогою алгоритму SHA256 і шістнадцяткового формату кодування.
Хешувати паролі
Хеш-паролі — це тип паролів, які використовують криптографічну хеш-функцію для створення унікального пароля для кожного користувача. Хеш-функція приймає вхідний рядок і створює вихідний рядок фіксованої довжини, який називається хеш-значенням. Хеш-значення є унікальним для кожного вхідного рядка та не пов’язане з вихідним вхідним рядком.
Щоб створити хеш-пароль, вам спочатку потрібно згенерувати криптографічний хеш облікових даних вашого користувача. Ви можете зробити це за допомогою алгоритму хешування MD5 або SHA-1, залежно від платформи, яку ви використовуєте. Далі вам потрібно зберегти хеш-значення в безпечному місці на вашому сервері. Кожного разу, коли ваші користувачі входитимуть у систему, їм потрібно буде ввести свої облікові дані для входу у вашу програму, а потім використати хеш-значення для створення нового пароля.
Робота з хешами
У JavaScript хеші використовуються для представлення масивів. Наприклад, наступний код створює масив рядків і зберігає його в змінній з іменем myArray:
myArray = [“a”, “b”, “c”];
Ви також можете використовувати хеші для представлення інших типів даних. Наприклад, наступний код створює хеш, який зберігає значення «1» і «2»:
хеш = { 1: “1”, 2: “2” }