鸣潮自动化工具:解决重复性游戏任务的专业技术方案
2026/6/5 21:21:31
在现代Web应用中,数据安全变得越来越重要。本文介绍如何在前端实现数据加密功能,包括AES和国密SM4两种主流加密算法的实现方案。
下面是一套完整的加密工具函数实现:
importCryptoJSfrom'crypto-js';importCryptoSMfrom'sm-crypto';/** * 将对象转换为字符串 * @param {*} data - 待转换的数据 * @returns {string} 转换后的字符串 */functiondataToString(data){if(typeofdata==='object'){returnJSON.stringify(data);}letstr=String(data);// 移除首尾引号if(str.startsWith("'")||str.startsWith('"')){str=str.substring(1);}if(str.endsWith("'")||str.endsWith('"')){str=str.substring(0,str.length-1);}returnstr;}/** * 字符串转十六进制 * @param {string} str - 待转换的字符串 * @returns {string} 十六进制字符串 */functionstringToHex(str){lethex='';for(leti=0;i<str.length;i++){hex+=str.charCodeAt(i).toString(16).padStart(2,'0');}returnhex;}// AES加密配置constAES_CONFIG={// 128位密钥(16个字符)KEY:'my_secret_key_16',// 加密方法encrypt(