"use strict"; cc._RF.push(module, '17850Q1QMVAyaNra/9rnecW', 'EncryptUtil'); // Script/sdk/tools/EncryptUtil.ts "use strict"; /** * * @file EncryptUtil.ts * @author dream * @description 一些加密解密方法 * */ Object.defineProperty(exports, "__esModule", { value: true }); exports.EncryptUtil = exports.EncryptType = void 0; var SDK_1 = require("../SDK"); var Utils_1 = require("./Utils"); // let keyStr = ["AabB1122CcdDEfgg","Xianyou2021jjrfk","CMi89Egjd233pOKs"] var keyStr = ["", "", "CMi89Egjd233pOKs"]; var keyCode = "1qazQAZ2wsxWSX3edcEDC4rfvRFV5tgbTGB6yhnYHN7ujmUJM8ikIK9olOL0pP"; var ivKey = "GhCMeiV16WkB4kFf"; var counts = [, , 14]; var EncryptType; (function (EncryptType) { EncryptType[EncryptType["ED_CM"] = 2] = "ED_CM"; })(EncryptType = exports.EncryptType || (exports.EncryptType = {})); var EncryptUtil; (function (EncryptUtil) { function en(word) { // if(SDK.Instance.edType === EncryptType.ED_ZC){ // return encrypt(word); // }else // if(SDK.Instance.edType === EncryptType.ED_XY){ // return desEncrypt(word); // } // else if (SDK_1.default.Instance.edType === EncryptType.ED_CM) { return encryptIv(word); } return null; } EncryptUtil.en = en; function de(word) { // if(SDK.Instance.edType === EncryptType.ED_ZC){ // return decrypt(word); // }else // if(SDK.Instance.edType === EncryptType.ED_XY){ // return desDecrypt(word); // } // else if (SDK_1.default.Instance.edType === EncryptType.ED_CM) { return decryptIv(word); } return null; } EncryptUtil.de = de; // // 97-122,A-Z:65-90,0-9:48-57。 // //加密 function encryptIv(word) { var keys = keyStr[SDK_1.default.Instance.edType]; var key = CryptoJS.enc.Utf8.parse(keys); //Latin1 w8m31+Yy/Nw6thPsMpO5fg== var srcs = CryptoJS.enc.Utf8.parse(word); var encrypted = CryptoJS.AES.encrypt(word, key, { iv: CryptoJS.enc.Utf8.parse(ivKey), mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); var code = ""; var count = counts[SDK_1.default.Instance.edType]; for (var i = 1; i <= count; i++) { var index = Utils_1.default.instance.getRandomInt(1, keyCode.length); code += keyCode.substring(index - 1, index); } return code + encrypted.toString(); } EncryptUtil.encryptIv = encryptIv; // //解密 // export function decrypt(word, keyStr){ function decryptIv(word) { var count = counts[SDK_1.default.Instance.edType]; var keys = keyStr[SDK_1.default.Instance.edType]; word = word.substring(count, word.length); var key = CryptoJS.enc.Utf8.parse(keys); //Latin1 w8m31+Yy/Nw6thPsMpO5fg== var decrypt = CryptoJS.AES.decrypt(word, key, { iv: CryptoJS.enc.Utf8.parse(ivKey), mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); return CryptoJS.enc.Utf8.stringify(decrypt).toString(); } EncryptUtil.decryptIv = decryptIv; // // 97-122,A-Z:65-90,0-9:48-57。 // //加密 // // export function encrypt(word, keyStr){ // export function encrypt(word:string){ // let keys = keyStr[SDK.Instance.edType]; // var key = CryptoJS.enc.Utf8.parse(keys);//Latin1 w8m31+Yy/Nw6thPsMpO5fg== // var srcs = CryptoJS.enc.Utf8.parse(word); // var encrypted = CryptoJS.AES.encrypt(srcs, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}); // let code =""; // let count = counts[SDK.Instance.edType]; // for(let i = 1 ; i <= count ; i++){ // let index = Utils.instance.getRandomInt(1,keyCode.length); // code+=keyCode.substring(index-1,index); // } // return code+encrypted.toString(); // } // //解密 // // export function decrypt(word, keyStr){ // export function decrypt(word:string){ // let count = counts[SDK.Instance.edType]; // let keys = keyStr[SDK.Instance.edType]; // word = word.substring(count,word.length); // var key = CryptoJS.enc.Utf8.parse(keys);//Latin1 w8m31+Yy/Nw6thPsMpO5fg== // var decrypt = CryptoJS.AES.decrypt(word, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}); // return CryptoJS.enc.Utf8.stringify(decrypt).toString(); // } // export function desEncrypt(word:string){ // let keys = keyStr[SDK.Instance.edType]; // var key = CryptoJS.enc.Utf8.parse(keys);//Latin1 w8m31+Yy/Nw6thPsMpO5fg== // var srcs = CryptoJS.enc.Utf8.parse(word); // var encrypted = CryptoJS.DES.encrypt(srcs, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}); // let code =""; // let count = counts[SDK.Instance.edType]; // for(let i = 1 ; i <= count ; i++){ // let index = Utils.instance.getRandomInt(1,keyCode.length); // code+=keyCode.substring(index-1,index); // } // // console.log("code: "+code); // return code+encrypted.toString(); // } // //解密 // // export function decrypt(word, keyStr){ // export function desDecrypt(word:string){ // let count = counts[SDK.Instance.edType]; // let keys = keyStr[SDK.Instance.edType]; // word = word.substring(count,word.length); // var key = CryptoJS.enc.Utf8.parse(keys);//Latin1 w8m31+Yy/Nw6thPsMpO5fg== // var decrypt = CryptoJS.DES.decrypt(word, key, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}); // return CryptoJS.enc.Utf8.stringify(decrypt).toString(); // } })(EncryptUtil = exports.EncryptUtil || (exports.EncryptUtil = {})); cc._RF.pop();