From 7847d2920080dea9292591ebcff3c1e74ff46130 Mon Sep 17 00:00:00 2001 From: unurled Date: Mon, 21 Feb 2022 16:43:57 +0100 Subject: [PATCH] Hash password --- src/login.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/login.js b/src/login.js index 2bcac0f..c122a2a 100644 --- a/src/login.js +++ b/src/login.js @@ -3,9 +3,22 @@ const express = require('express') const router = express.Router() +const cyrb53 = function(str, seed = 0) { + let h1 = 0xdeadbeef ^ seed, h2 = 0x41c6ce57 ^ seed; + for (let i = 0, ch; i < str.length; i++) { + ch = str.charCodeAt(i); + h1 = Math.imul(h1 ^ ch, 2654435761); + h2 = Math.imul(h2 ^ ch, 1597334677); + } + h1 = Math.imul(h1 ^ (h1>>>16), 2246822507) ^ Math.imul(h2 ^ (h2>>>13), 3266489909); + h2 = Math.imul(h2 ^ (h2>>>16), 2246822507) ^ Math.imul(h1 ^ (h1>>>13), 3266489909); + return 4294967296 * (2097151 & h2) + (h1>>>0); +}; + + router.post('/auth', function(request, response) { var username = request.body.username; - var password = request.body.password; + var password = cyrb53(request.body.password, 5).toString(); if (username && password) { let user = User.findOne({ name: username, pass: password