diff --git a/package-lock.json b/package-lock.json index bca0aae..76bfdbf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,6 +15,7 @@ "bcryptjs": "^2.4.3", "body-parser": "^1.20.1", "cors": "^2.8.5", + "crypto-js": "^4.1.1", "dotenv": "^16.0.3", "express": "^4.18.2", "google-auth-library": "^8.7.0", @@ -3712,6 +3713,11 @@ "node": ">= 0.10" } }, + "node_modules/crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" + }, "node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -8644,6 +8650,11 @@ "vary": "^1" } }, + "crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -9604,8 +9615,7 @@ "pg-pool": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.5.2.tgz", - "integrity": "sha512-His3Fh17Z4eg7oANLob6ZvH8xIVen3phEZh2QuyrIl4dQSDVEabNducv6ysROKpDNPSD+12tONZVWfSgMvDD9w==", - "requires": {} + "integrity": "sha512-His3Fh17Z4eg7oANLob6ZvH8xIVen3phEZh2QuyrIl4dQSDVEabNducv6ysROKpDNPSD+12tONZVWfSgMvDD9w==" }, "pg-protocol": { "version": "1.6.0", diff --git a/package.json b/package.json index fc3a7a1..5a51ef1 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "bcryptjs": "^2.4.3", "body-parser": "^1.20.1", "cors": "^2.8.5", + "crypto-js": "^4.1.1", "dotenv": "^16.0.3", "express": "^4.18.2", "google-auth-library": "^8.7.0", diff --git a/utils/password.js b/utils/password.js index 38f899b..4873169 100644 --- a/utils/password.js +++ b/utils/password.js @@ -4,6 +4,7 @@ dotev.config() import crypto from 'crypto'; import jwt from 'jsonwebtoken'; +import CryptoJS from "crypto-js"; export function getJwt(object,expiresIn='30d'){ @@ -26,3 +27,13 @@ export async function hash_password(password){ .toString("hex"); return genHash; } + +export async function encryptString(str){ + const encrypted = await CryptoJS.AES.encrypt(str, process.env.SECRET); + return encrypted; +} + +export async function dcryptString(encryptedStr){ + const decrypted =await CryptoJS.AES.decrypt(encryptedStr, process.env.SECRET); + return decrypted; +}