|  | @@ -0,0 +1,61 @@
 | 
	
		
			
				|  |  | +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 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
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +//type:1 姓名、2 手机号、3 身份证
 | 
	
		
			
				|  |  | +export const tuomin = (value,type) => {
 | 
	
		
			
				|  |  | +	if(!value) return;
 | 
	
		
			
				|  |  | +	let res = '';
 | 
	
		
			
				|  |  | +	if(type==1){
 | 
	
		
			
				|  |  | +		let arr = Array.from(value)
 | 
	
		
			
				|  |  | +		if (arr.length === 2) {
 | 
	
		
			
				|  |  | +			res = arr[0] + '*'
 | 
	
		
			
				|  |  | +		} else if (arr.length > 2) {
 | 
	
		
			
				|  |  | +			for (let i = 1; i < arr.length - 1; i++) {
 | 
	
		
			
				|  |  | +			  arr[i] = '*'
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			res = arr.join("")
 | 
	
		
			
				|  |  | +		}else {
 | 
	
		
			
				|  |  | +			res = value
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +	}else if(type==2){
 | 
	
		
			
				|  |  | +		res = value.replace(/^(.{3})(?:\d+)(.{4})$/, "$1****$2");
 | 
	
		
			
				|  |  | +	}else if(type==3){
 | 
	
		
			
				|  |  | +		res = value.replace(/^(.{4})(?:\d+)(.{4})$/, "$1**********$2");
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  | +	
 | 
	
		
			
				|  |  | +	return res;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export default {
 | 
	
		
			
				|  |  | +	encrypt,
 | 
	
		
			
				|  |  | +	decrypt,
 | 
	
		
			
				|  |  | +	tuomin
 | 
	
		
			
				|  |  | +}
 |