22 lines
791 B
JavaScript
22 lines
791 B
JavaScript
"use strict";
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.default = hashPassword;
|
|
const crypto_1 = require("crypto");
|
|
const grab_keys_1 = __importDefault(require("../../utils/grab-keys"));
|
|
/**
|
|
* # Hash password Function
|
|
*/
|
|
function hashPassword({ password, encryptionKey, }) {
|
|
const { key } = (0, grab_keys_1.default)({ encryptionKey });
|
|
if (!(key === null || key === void 0 ? void 0 : key.match(/.{8,}/))) {
|
|
throw new Error("Encryption key is invalid");
|
|
}
|
|
const hmac = (0, crypto_1.createHmac)("sha512", key);
|
|
hmac.update(password);
|
|
let hashed = hmac.digest("base64");
|
|
return hashed;
|
|
}
|