@@ -87,50 +91,54 @@ export const CreatePasswordDialog = ({
setName(e.target.value)}
+ value={passwordItem.name}
+ onChange={handleChange}
maxLength={50}
+ name="name"
/>
-
{name.length} / 50
+
{passwordItem.name.length} / 50
-
diff --git a/src/utils/encryption.ts b/src/utils/encryption.ts
index 7b04a0f..78e031d 100644
--- a/src/utils/encryption.ts
+++ b/src/utils/encryption.ts
@@ -1,11 +1,13 @@
import CryptoJS from "crypto-js";
+
+// this can be reverse engineered - please use a randomly generated string that is saved securely somewhere else.
const generateEncryptionPassword = (clerkUser: any) => {
if (!clerkUser) return "";
-
return `${clerkUser.id}-${clerkUser.createdAt}-${clerkUser.createdAt?.getTime()}-${clerkUser.id.charCodeAt(clerkUser.id.length - 1)}-${clerkUser.createdAt?.getDate()}-${clerkUser.id.charCodeAt(0)}-${clerkUser.createdAt?.getUTCFullYear()}-${clerkUser.id.charCodeAt(1)}-${clerkUser.createdAt?.getUTCHours()}-${clerkUser.id.length}-${clerkUser.createdAt?.getUTCMinutes()}`;
};
+// See above comment - the key should be stored securely and used on subsequent encryption calls
export const encrypt = (data: string, clerkUser: any) => {
const encryptionPassword = generateEncryptionPassword(clerkUser);
return CryptoJS.AES.encrypt(data, encryptionPassword).toString();
diff --git a/yarn.lock b/yarn.lock
index 7d5909c..3eb6e4e 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -104,7 +104,7 @@
"@babel/helper-string-parser" "^7.25.9"
"@babel/helper-validator-identifier" "^7.25.9"
-"@clerk/backend@^1.21.6", "@clerk/backend@^1.23.11":
+"@clerk/backend@^1.23.11":
version "1.23.11"
resolved "https://registry.npmjs.org/@clerk/backend/-/backend-1.23.11.tgz"
integrity sha512-N5CYCnVbSVXUkQg9oAAAf9r/kfPmBGxMqjzslDC9Tl3rkXFTkWjkBNnToB6We2ySdrmqiQGR/+/c4mS9XRbaOQ==
@@ -124,16 +124,6 @@
"@clerk/types" "^4.45.0"
tslib "2.4.1"
-"@clerk/clerk-sdk-node@^5.1.6":
- version "5.1.6"
- resolved "https://registry.npmjs.org/@clerk/clerk-sdk-node/-/clerk-sdk-node-5.1.6.tgz"
- integrity sha512-KeF5p0XP0gNoCx+YIHrfrkNNADBz8ZabwPAhOiJZ9Wo14r93WlzRA51IE0Qgteej8IpWwnvKu4/MpiV7FFoLqA==
- dependencies:
- "@clerk/backend" "^1.21.6"
- "@clerk/shared" "^2.20.6"
- "@clerk/types" "^4.40.2"
- tslib "2.4.1"
-
"@clerk/nextjs@^6.11.0":
version "6.11.0"
resolved "https://registry.npmjs.org/@clerk/nextjs/-/nextjs-6.11.0.tgz"
@@ -147,7 +137,7 @@
server-only "0.0.1"
tslib "2.4.1"
-"@clerk/shared@^2.20.18", "@clerk/shared@^2.20.6":
+"@clerk/shared@^2.20.18":
version "2.20.18"
resolved "https://registry.npmjs.org/@clerk/shared/-/shared-2.20.18.tgz"
integrity sha512-vSQLZSRFr62+YeE1KE/Xu/eWCrwYJRNA2KRyQYmb2VPleFNmOjtTNlO4xkMZ0eN6BLKxrBo9b0NVwu3L28FhKg==
@@ -159,7 +149,7 @@
std-env "^3.7.0"
swr "^2.2.0"
-"@clerk/types@^4.40.2", "@clerk/types@^4.45.0":
+"@clerk/types@^4.45.0":
version "4.45.0"
resolved "https://registry.npmjs.org/@clerk/types/-/types-4.45.0.tgz"
integrity sha512-DSXPWq1xD01tzyHv7CugX2T/XfVUZX2xxQ92cs+JPTrGoqIYm+yjRWqOz1CVJ/76TbYMOrB0efCGOxEcNV/PQw==