Ver código fonte

fix: 登录接口添加加密方法

zhupei 1 ano atrás
pai
commit
498566380e
4 arquivos alterados com 105 adições e 81 exclusões
  1. 34 80
      package-lock.json
  2. 1 0
      package.json
  3. 5 1
      src/ajax/api/user.js
  4. 65 0
      src/utils/jsencrypt.js

+ 34 - 80
package-lock.json

@@ -21,6 +21,7 @@
         "dayjs": "^1.11.13",
         "eventsource-parser": "^3.0.0",
         "highlight.js": "^11.10.0",
+        "jsencrypt": "^3.3.1",
         "less": "^4.2.0",
         "makeit-captcha": "^2.0.7",
         "markdown-it": "^14.1.0",
@@ -92,7 +93,6 @@
       "version": "0.4.0",
       "resolved": "https://registry.npmmirror.com/@arco-design/color/-/color-0.4.0.tgz",
       "integrity": "sha512-s7p9MSwJgHeL8DwcATaXvWT3m2SigKpxx4JA1BGPHL4gfvaQsmQfrLBDpjOJFJuJ2jG2dMt3R3P8Pm9E65q18g==",
-      "dev": true,
       "dependencies": {
         "color": "^3.1.3"
       }
@@ -101,7 +101,6 @@
       "version": "2.56.3",
       "resolved": "https://registry.npmmirror.com/@arco-design/web-vue/-/web-vue-2.56.3.tgz",
       "integrity": "sha512-D2CPIXRBUPcg37TFsfWROZddCWFZnIwqGpsOhOn2BhmH89UFqtBGpTxyuMdYJEwKNXunp3dVL6V69ZMmJBRPOg==",
-      "dev": true,
       "dependencies": {
         "@arco-design/color": "^0.4.0",
         "b-tween": "^0.3.3",
@@ -494,7 +493,6 @@
       "cpu": [
         "arm"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "android"
@@ -510,7 +508,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "android"
@@ -526,7 +523,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "android"
@@ -542,7 +538,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "darwin"
@@ -558,7 +553,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "darwin"
@@ -574,7 +568,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "freebsd"
@@ -590,7 +583,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "freebsd"
@@ -606,7 +598,6 @@
       "cpu": [
         "arm"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -622,7 +613,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -638,7 +628,6 @@
       "cpu": [
         "ia32"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -654,7 +643,6 @@
       "cpu": [
         "loong64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -670,7 +658,6 @@
       "cpu": [
         "mips64el"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -686,7 +673,6 @@
       "cpu": [
         "ppc64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -702,7 +688,6 @@
       "cpu": [
         "riscv64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -718,7 +703,6 @@
       "cpu": [
         "s390x"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -734,7 +718,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -750,7 +733,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "netbsd"
@@ -766,7 +748,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "openbsd"
@@ -782,7 +763,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "sunos"
@@ -798,7 +778,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "win32"
@@ -814,7 +793,6 @@
       "cpu": [
         "ia32"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "win32"
@@ -830,7 +808,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "win32"
@@ -1120,7 +1097,6 @@
       "version": "2.5.0",
       "resolved": "https://registry.npmmirror.com/@parcel/watcher/-/watcher-2.5.0.tgz",
       "integrity": "sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==",
-      "dev": true,
       "hasInstallScript": true,
       "optional": true,
       "dependencies": {
@@ -1159,7 +1135,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "android"
@@ -1179,7 +1154,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "darwin"
@@ -1199,7 +1173,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "darwin"
@@ -1219,7 +1192,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "freebsd"
@@ -1239,7 +1211,6 @@
       "cpu": [
         "arm"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -1259,7 +1230,6 @@
       "cpu": [
         "arm"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -1279,7 +1249,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -1299,7 +1268,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -1319,7 +1287,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -1339,7 +1306,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "linux"
@@ -1359,7 +1325,6 @@
       "cpu": [
         "arm64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "win32"
@@ -1379,7 +1344,6 @@
       "cpu": [
         "ia32"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "win32"
@@ -1399,7 +1363,6 @@
       "cpu": [
         "x64"
       ],
-      "dev": true,
       "optional": true,
       "os": [
         "win32"
@@ -2207,14 +2170,12 @@
     "node_modules/b-tween": {
       "version": "0.3.3",
       "resolved": "https://registry.npmmirror.com/b-tween/-/b-tween-0.3.3.tgz",
-      "integrity": "sha512-oEHegcRpA7fAuc9KC4nktucuZn2aS8htymCPcP3qkEGPqiBH+GfqtqoG2l7LxHngg6O0HFM7hOeOYExl1Oz4ZA==",
-      "dev": true
+      "integrity": "sha512-oEHegcRpA7fAuc9KC4nktucuZn2aS8htymCPcP3qkEGPqiBH+GfqtqoG2l7LxHngg6O0HFM7hOeOYExl1Oz4ZA=="
     },
     "node_modules/b-validate": {
       "version": "1.5.3",
       "resolved": "https://registry.npmmirror.com/b-validate/-/b-validate-1.5.3.tgz",
-      "integrity": "sha512-iCvCkGFskbaYtfQ0a3GmcQCHl/Sv1GufXFGuUQ+FE+WJa7A/espLOuFIn09B944V8/ImPj71T4+rTASxO2PAuA==",
-      "dev": true
+      "integrity": "sha512-iCvCkGFskbaYtfQ0a3GmcQCHl/Sv1GufXFGuUQ+FE+WJa7A/espLOuFIn09B944V8/ImPj71T4+rTASxO2PAuA=="
     },
     "node_modules/balanced-match": {
       "version": "1.0.2",
@@ -2396,18 +2357,18 @@
       ]
     },
     "node_modules/canvas": {
-      "version": "3.0.0-rc2",
-      "resolved": "https://registry.npmmirror.com/canvas/-/canvas-3.0.0-rc2.tgz",
-      "integrity": "sha512-esx4bYDznnqgRX4G8kaEaf0W3q8xIc51WpmrIitDzmcoEgwnv9wSKdzT6UxWZ4wkVu5+ileofppX0TpyviJRdQ==",
+      "version": "2.11.2",
+      "resolved": "https://registry.npmmirror.com/canvas/-/canvas-2.11.2.tgz",
+      "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==",
       "hasInstallScript": true,
       "optional": true,
       "dependencies": {
-        "node-addon-api": "^7.0.0",
-        "prebuild-install": "^7.1.1",
+        "@mapbox/node-pre-gyp": "^1.0.0",
+        "nan": "^2.17.0",
         "simple-get": "^3.0.3"
       },
       "engines": {
-        "node": "^18.12.0 || >= 20.9.0"
+        "node": ">=6"
       }
     },
     "node_modules/caseless": {
@@ -2509,7 +2470,6 @@
       "version": "3.2.1",
       "resolved": "https://registry.npmmirror.com/color/-/color-3.2.1.tgz",
       "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==",
-      "dev": true,
       "dependencies": {
         "color-convert": "^1.9.3",
         "color-string": "^1.6.0"
@@ -2519,7 +2479,6 @@
       "version": "1.9.3",
       "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz",
       "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
-      "dev": true,
       "dependencies": {
         "color-name": "1.1.3"
       }
@@ -2527,14 +2486,12 @@
     "node_modules/color-name": {
       "version": "1.1.3",
       "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz",
-      "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
-      "dev": true
+      "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
     },
     "node_modules/color-string": {
       "version": "1.9.1",
       "resolved": "https://registry.npmmirror.com/color-string/-/color-string-1.9.1.tgz",
       "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==",
-      "dev": true,
       "dependencies": {
         "color-name": "^1.0.0",
         "simple-swizzle": "^0.2.2"
@@ -3227,7 +3184,6 @@
       "version": "1.0.3",
       "resolved": "https://registry.npmmirror.com/detect-libc/-/detect-libc-1.0.3.tgz",
       "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==",
-      "dev": true,
       "optional": true,
       "bin": {
         "detect-libc": "bin/detect-libc.js"
@@ -3375,7 +3331,6 @@
       "version": "0.17.19",
       "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.17.19.tgz",
       "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==",
-      "dev": true,
       "hasInstallScript": true,
       "bin": {
         "esbuild": "bin/esbuild"
@@ -3551,21 +3506,6 @@
         "jsdom": "^15.2.1"
       }
     },
-    "node_modules/fabric/node_modules/canvas": {
-      "version": "2.11.2",
-      "resolved": "https://registry.npmmirror.com/canvas/-/canvas-2.11.2.tgz",
-      "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==",
-      "hasInstallScript": true,
-      "optional": true,
-      "dependencies": {
-        "@mapbox/node-pre-gyp": "^1.0.0",
-        "nan": "^2.17.0",
-        "simple-get": "^3.0.3"
-      },
-      "engines": {
-        "node": ">=6"
-      }
-    },
     "node_modules/fast-deep-equal": {
       "version": "3.1.3",
       "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
@@ -3713,7 +3653,6 @@
       "version": "2.3.3",
       "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz",
       "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
-      "dev": true,
       "hasInstallScript": true,
       "optional": true,
       "os": [
@@ -4059,7 +3998,7 @@
       "version": "5.0.2",
       "resolved": "https://registry.npmmirror.com/immutable/-/immutable-5.0.2.tgz",
       "integrity": "sha512-1NU7hWZDkV7hJ4PJ9dur9gTNQ4ePNPN4k9/0YhwjzykTi/+3Q5pF93YU5QoVj8BuOnhLgaY8gs0U2pj4kSYVcw==",
-      "dev": true
+      "devOptional": true
     },
     "node_modules/inflight": {
       "version": "1.0.6",
@@ -4104,8 +4043,7 @@
     "node_modules/is-arrayish": {
       "version": "0.3.2",
       "resolved": "https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.3.2.tgz",
-      "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==",
-      "dev": true
+      "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ=="
     },
     "node_modules/is-buffer": {
       "version": "1.1.6",
@@ -4271,6 +4209,11 @@
       "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==",
       "optional": true
     },
+    "node_modules/jsencrypt": {
+      "version": "3.3.1",
+      "resolved": "https://registry.npmmirror.com/jsencrypt/-/jsencrypt-3.3.1.tgz",
+      "integrity": "sha512-dVvV54GdFuJgmEKn+oBiaifDMen4p6o6j/lJh0OVMcouME8sST0bJ7bldIgKBQk4za0zyGn0/pm4vOznR25mLw=="
+    },
     "node_modules/jsesc": {
       "version": "3.0.2",
       "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-3.0.2.tgz",
@@ -5016,8 +4959,7 @@
     "node_modules/number-precision": {
       "version": "1.6.0",
       "resolved": "https://registry.npmmirror.com/number-precision/-/number-precision-1.6.0.tgz",
-      "integrity": "sha512-05OLPgbgmnixJw+VvEh18yNPUo3iyp4BEWJcrLu4X9W05KmMifN7Mu5exYvQXqxxeNWhvIF+j3Rij+HmddM/hQ==",
-      "dev": true
+      "integrity": "sha512-05OLPgbgmnixJw+VvEh18yNPUo3iyp4BEWJcrLu4X9W05KmMifN7Mu5exYvQXqxxeNWhvIF+j3Rij+HmddM/hQ=="
     },
     "node_modules/nwsapi": {
       "version": "2.2.13",
@@ -5192,6 +5134,21 @@
         "path2d": "^0.2.1"
       }
     },
+    "node_modules/pdfjs-dist/node_modules/canvas": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmmirror.com/canvas/-/canvas-3.0.0.tgz",
+      "integrity": "sha512-NtcIBY88FjymQy+g2g5qnuP5IslrbWCQ3A6rSr1PeuYxVRapRZ3BZCrDyAakvI6CuDYidgZaf55ygulFVwROdg==",
+      "hasInstallScript": true,
+      "optional": true,
+      "dependencies": {
+        "node-addon-api": "^7.0.0",
+        "prebuild-install": "^7.1.1",
+        "simple-get": "^3.0.3"
+      },
+      "engines": {
+        "node": "^18.12.0 || >= 20.9.0"
+      }
+    },
     "node_modules/perfect-debounce": {
       "version": "1.0.0",
       "resolved": "https://registry.npmmirror.com/perfect-debounce/-/perfect-debounce-1.0.0.tgz",
@@ -5765,7 +5722,7 @@
       "version": "1.80.7",
       "resolved": "https://registry.npmmirror.com/sass/-/sass-1.80.7.tgz",
       "integrity": "sha512-MVWvN0u5meytrSjsU7AWsbhoXi1sc58zADXFllfZzbsBT1GHjjar6JwBINYPRrkx/zqnQ6uqbQuHgE95O+C+eQ==",
-      "dev": true,
+      "devOptional": true,
       "dependencies": {
         "chokidar": "^4.0.0",
         "immutable": "^5.0.2",
@@ -5901,7 +5858,6 @@
       "version": "0.2.2",
       "resolved": "https://registry.npmmirror.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
       "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==",
-      "dev": true,
       "dependencies": {
         "is-arrayish": "^0.3.1"
       }
@@ -6420,7 +6376,6 @@
       "version": "4.3.7",
       "resolved": "https://registry.npmmirror.com/vite/-/vite-4.3.7.tgz",
       "integrity": "sha512-MTIFpbIm9v7Hh5b0wSBgkcWzSBz7SAa6K/cBTwS4kUiQJfQLFlZZRJRQgqunCVzhTPCk674tW+0Qaqh3Q00dBg==",
-      "dev": true,
       "dependencies": {
         "esbuild": "^0.17.5",
         "postcss": "^8.4.23",
@@ -6468,7 +6423,6 @@
       "version": "3.29.5",
       "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.29.5.tgz",
       "integrity": "sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w==",
-      "dev": true,
       "bin": {
         "rollup": "dist/bin/rollup"
       },

+ 1 - 0
package.json

@@ -22,6 +22,7 @@
     "dayjs": "^1.11.13",
     "eventsource-parser": "^3.0.0",
     "highlight.js": "^11.10.0",
+    "jsencrypt": "^3.3.1",
     "less": "^4.2.0",
     "makeit-captcha": "^2.0.7",
     "markdown-it": "^14.1.0",

+ 5 - 1
src/ajax/api/user.js

@@ -1,5 +1,7 @@
 import request from "../request";
 
+import { encrypt } from '../../utils/jsencrypt';
+
 /**
  * 获取用户信息
  * @returns {Promise<Object>}
@@ -18,9 +20,11 @@ const login = (username, password) => {
     // const url = "/api/auth/login";
     const url = "/api/auth/v2/login";
 
+    const pswd = encrypt(password);
+
     return request.post(url, {
         username,
-        password
+        password: pswd
     });
 };
 

+ 65 - 0
src/utils/jsencrypt.js

@@ -0,0 +1,65 @@
+// import JSEncrypt from '../3rd-libs/jsencrypt';
+/**
+ * @see https://www.npmjs.com/package/jsdecrypt
+ * */
+import JSEncrypt from 'jsencrypt/bin/jsencrypt.min';
+
+
+// 密钥对生成 http://web.chacuo.net/netrsakeypair
+
+const publicKey = `MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw
+J0feodpQYfSPeeBRlyqlqfs5dtP38LL19kKO3wwdP+vdcktxXR9Inje9Jcq+nIUJ
++Comh3bEh1nsWUDBgtlz4vEqecho9KFaDqkFp3tR/emWJYT0KLEcBidKUImkumJk0cVBKleww/4R1HDorwE
+9J2a1Rp9z0DUEU7YuudoaUy5Es1vORjDplIZv9bzip7/LANv6GmdtXwk5IpdbfNr
+koJgGXlE063uIMkqRyiOo04ofeYpSjZbP4bvnboxYi23wpIe81uLIsM+4JcFoU6u
+N0cYs03oYkfjXQdlKTpBpM6lcm+7xhEz9Y/OR7YorRWB1Qdt7nr3cRmx0uIs/h/T
+9QIDAQAB`;
+
+const privateKey = `MIIEowIBAAKCAQEAwJ0feodpQYfSPeeBRlyqlqfs5dtP38LL19kKO3wwdP+vdckt
+xXR9Inje9Jcq+nIUJ+Comh3bEh1nsWUDBgtlz4vEqecho9KFaDqkFp3tR/emWJYT
+0KLEcBidKUImkumJk0cVBKleww/4R1HDorwE9J2a1Rp9z0DUEU7YuudoaUy5Es1v
+ORjDplIZv9bzip7/LANv6GmdtXwk5IpdbfNrkoJgGXlE063uIMkqRyiOo04ofeYp
+SjZbP4bvnboxYi23wpIe81uLIsM+4JcFoU6uN0cYs03oYkfjXQdlKTpBpM6lcm+7
+xhEz9Y/OR7YorRWB1Qdt7nr3cRmx0uIs/h/T9QIDAQABAoIBAAN62JBwyMuQUYp9
+RfDU2iY/0UHVTKXEBWHxPhXjiiOUU4yATo5OnJrtamQ4z4Biq4TUlf1wXyWo8RBY
+C1Gif7EjCUdN/CzoqNuHkwZL6hOs60Jr9iWhHy/sts5lRLKHZhtfwz/dj5ncwBVQ
+qmGIJQXGdmLnhKYyuZzG/pdZozbNxuPzOHP0LdkETLAqVbROL/lDVNMxlQoicKAK
+ir38bxH4ck2IjogJTJKyfl7UzFyxb0fjujYJX4ZsVoJzawdV7jJAbdKilOX/4bl/
+WITRyjm5AKTckFsuKbniWhlrgN/ji2J+u0RP5LEIq+VBt2Akdz2E2d2OzLUowxtS
+i6MXIbkCgYEA+HIZR1fvtMZCu2Z1NBl9GCuCm2TlaOnHB0jLvan2R062Icih/BRG
+wzc/AAhExqWS69r9NA1M/09kwybFOzPY/A3UidrqTx6QkXIIUkk1CRBKrdDqISss
+Kzo7lkS9HS46ADkPFGqG9ZnPHEmKvxvWC6vMXI/S2VQIiK0QrdhRkGkCgYEAxnht
+rg4OQsP+KNOSe8qkqvKyJK48+vRV6JlDnFqsiWsUHdck+VqhlkkxVe2bH1w92JYt
+ACvtQW+mTJsORlixdPWnpqF5i5m/3nKk6zLw8hc4KBq+8rwqAOF6O+yd2MVDUiYB
+7Tn05Rvl3/WRq28oKP64MGK/Piz9Njjj3YfPta0CgYACl85DvFs4G8megxc+D/YK
+Ron6bTcnvSjinpPhyuBTJjMobxuhseR7LRxvN6bgG+JIq+RwoqLnF0EJ+GGemI/v
+MYXCWpKPeNYxbms/0JvJGG5vGfsXlYfEe7sbemQu5cidL/tET0hRT+Wlee8Ex5mY
+TZa4cJfWxNXB92xxJAzV4QKBgQDER+nAz2nPIeJEIimmf9ymq+r+V8s7LVWg+aJi
+CVLFfL6iXFnWuYlBBhXis2BMfX80qiDLIKY9ptvCuz482A54a1Joex2nsGCO8Lal
+XPXplokVMI5TpT+tK1El3nalIUHZBnm1UTIfO532BfkQoJgJIxCp2Z7lML0jWNQS
+DPSg6QKBgAR7IMz5wCkdS//PbIS8UOmxXHwwkZgrtAf56+xyvyQiOdcZj/xFolY4
+X86xznY0cuDr9o5sWdNXDqcZFOGS4txwCOEyI3VntYReO005nS6vsfDiGqyutlZh
+9gAMVA6Hm3UFKvxrjgmpMOAMYqugRx5hFxhjiiaDRScoewx5abHN`;
+
+/**
+ * @description: 加密
+ * @param {string} txt 待加密字符串
+ * @return {string} 加密后的字符串
+ * */
+
+export function encrypt(txt) {
+  const encryptor = new JSEncrypt();
+  encryptor.setPublicKey(publicKey); // 设置公钥
+  return encryptor.encrypt(txt); // 对数据进行加密
+}
+
+/**
+ * @description: 解密
+ * @param {string} txt 待解密字符串
+ * @return {string} 解密字符串
+ * */
+export function decrypt(txt) {
+  const encryptor = new JSEncrypt();
+  encryptor.setPrivateKey(privateKey); // 设置私钥
+  return encryptor.decrypt(txt); // 对数据进行解密
+}