Переглянути джерело

加解密增加trycatch处理

htc 3 місяців тому
батько
коміт
ef9c7396ec
1 змінених файлів з 29 додано та 21 видалено
  1. 29 21
      utils/aes.js

+ 29 - 21
utils/aes.js

@@ -3,30 +3,38 @@ import CryptoJS from "crypto-js";
 const CRYPTOJSKEY= "szhdxfiCPTh3zDaW";
 
 // 加密
-export const encrypt = plaintText => {
-    var plaintText = plaintText;
-    var options = {
-        mode: CryptoJS.mode.ECB,
-        padding: CryptoJS.pad.Pkcs7
-    };
-    var key = CryptoJS.enc.Utf8.parse(CRYPTOJSKEY);
-    var encryptedData = CryptoJS.AES.encrypt(plaintText, key, options);
-    var encryptedBase64Str = encryptedData.toString().replace(/\//g, "_");
-    encryptedBase64Str = encryptedBase64Str.replace(/\+/g,"-");
-    return encryptedBase64Str;
+export const encrypt = plaintText => {
+	try{
+		var plaintText = plaintText;
+		var options = {
+		    mode: CryptoJS.mode.ECB,
+		    padding: CryptoJS.pad.Pkcs7
+		};
+		var key = CryptoJS.enc.Utf8.parse(CRYPTOJSKEY);
+		var encryptedData = CryptoJS.AES.encrypt(plaintText, key, options);
+		var encryptedBase64Str = encryptedData.toString().replace(/\//g, "_");
+		encryptedBase64Str = encryptedBase64Str.replace(/\+/g,"-");
+		return encryptedBase64Str;
+	}catch(e){
+		return plaintText
+	}
 }
 
 //解密
-export const decrypt = encryptedBase64Str => {
-    var vals = encryptedBase64Str.replace(/\-/g, '+').replace(/_/g, '/');
-    var options = {
-        mode: CryptoJS.mode.ECB,
-        padding: CryptoJS.pad.Pkcs7
-    };
-    var key = CryptoJS.enc.Utf8.parse(CRYPTOJSKEY);
-    var decryptedData = CryptoJS.AES.decrypt(vals, key, options);
-    var decryptedStr = CryptoJS.enc.Utf8.stringify(decryptedData);
-    return decryptedStr
+export const decrypt = encryptedBase64Str => {
+	try{
+		var vals = encryptedBase64Str.replace(/\-/g, '+').replace(/_/g, '/');
+		var options = {
+		    mode: CryptoJS.mode.ECB,
+		    padding: CryptoJS.pad.Pkcs7
+		};
+		var key = CryptoJS.enc.Utf8.parse(CRYPTOJSKEY);
+		var decryptedData = CryptoJS.AES.decrypt(vals, key, options);
+		var decryptedStr = CryptoJS.enc.Utf8.stringify(decryptedData);
+		return decryptedStr
+	}catch(e){
+		return encryptedBase64Str
+	}
 }
 
 //type:1 姓名、2 手机号、3 身份证