开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 958|回复: 18
收起左侧

[求助] 转成js

[复制链接]
结帖率:100% (1/1)
发表于 2023-4-19 13:05:08 | 显示全部楼层 |阅读模式   广东省广州市
var h = function(e) {
            for (var t = "=".repeat((4 - e.length % 4) % 4), n = (e + t).replace(/\-/g, "+").replace(/_/g, "/"), a = o.default.enc.Base64.parse(n).toString(o.default.enc.Latin1), r = new Uint8Array(a.length), i = 0; i < a.length; ++i)
                r = a.charCodeAt(i);
            return r
        }


参数e:
TcuxDoQgEIThd5maAmHXVV5FrkCRxOS0USrDu7vJJRebL1P8c+O7nRfCdGPLCJ3BkfYVAbH2Yq3KszpkInVOBc380vGVUpESq7Ab9OCtxMqe5Z+6V8pdv6hESW+ry7rL4tE+7QE=

结帖率:98% (98/100)

签到天数: 23 天

发表于 2023-4-19 13:07:36 | 显示全部楼层   河南省郑州市
少东西呀 o.default.enc.Latin1 o是什么
最好还是直接发网页
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)

签到天数: 19 天

发表于 2023-4-19 13:22:19 | 显示全部楼层   湖南省娄底市
结果是1?
[JavaScript] 纯文本查看 复制代码
var CryptoJS = CryptoJS || (function(Math, undefined) {
    var C = {};
    var C_lib = C.lib = {};
    var Base = C_lib.Base = (function() {
        function F() {};
        return {
            extend: function(overrides) {
                F.prototype = this;
                var subtype = new F();
                if (overrides) {
                    subtype.mixIn(overrides);
                }
                if (!subtype.hasOwnProperty('init') || this.init === subtype.init) {
                    subtype.init = function() {
                        subtype.$super.init.apply(this, arguments);
                    };
                }
                subtype.init.prototype = subtype;
                subtype.$super = this;
                return subtype;
            },
            create: function() {
                var instance = this.extend();
                instance.init.apply(instance, arguments);
                return instance;
            },
            init: function() {},
            mixIn: function(properties) {
                for (var propertyName in properties) {
                    if (properties.hasOwnProperty(propertyName)) {
                        this[propertyName] = properties[propertyName];
                    }
                }
                if (properties.hasOwnProperty('toString')) {
                    this.toString = properties.toString;
                }
            },
            clone: function() {
                return this.init.prototype.extend(this);
            }
        };
    }());
    var WordArray = C_lib.WordArray = Base.extend({
        init: function(words, sigBytes) {
            words = this.words = words || [];
            if (sigBytes != undefined) {
                this.sigBytes = sigBytes;
            } else {
                this.sigBytes = words.length * 4;
            }
        },
        toString: function(encoder) {
            return (encoder || Hex).stringify(this);
        },
        concat: function(wordArray) {
            var thisWords = this.words;
            var thatWords = wordArray.words;
            var thisSigBytes = this.sigBytes;
            var thatSigBytes = wordArray.sigBytes;
            this.clamp();
            if (thisSigBytes % 4) {
                for (var i = 0; i < thatSigBytes; i++) {
                    var thatByte = (thatWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
                    thisWords[(thisSigBytes + i) >>> 2] |= thatByte << (24 - ((thisSigBytes + i) % 4) * 8);
                }
            } else if (thatWords.length > 0xffff) {
                for (var i = 0; i < thatSigBytes; i += 4) {
                    thisWords[(thisSigBytes + i) >>> 2] = thatWords[i >>> 2];
                }
            } else {
                thisWords.push.apply(thisWords, thatWords);
            }
            this.sigBytes += thatSigBytes;
            return this;
        },
        clamp: function() {
            var words = this.words;
            var sigBytes = this.sigBytes;
            words[sigBytes >>> 2] &= 0xffffffff << (32 - (sigBytes % 4) * 8);
            words.length = Math.ceil(sigBytes / 4);
        },
        clone: function() {
            var clone = Base.clone.call(this);
            clone.words = this.words.slice(0);
            return clone;
        },
        random: function(nBytes) {
            var words = [];
            var r = (function(m_w) {
                var m_w = m_w;
                var m_z = 0x3ade68b1;
                var mask = 0xffffffff;
                return function() {
                    m_z = (0x9069 * (m_z & 0xFFFF) + (m_z >> 0x10)) & mask;
                    m_w = (0x4650 * (m_w & 0xFFFF) + (m_w >> 0x10)) & mask;
                    var result = ((m_z << 0x10) + m_w) & mask;
                    result /= 0x100000000;
                    result += 0.5;
                    return result * (Math.random() > .5 ? 1 : -1);
                }
            });
            for (var i = 0, rcache; i < nBytes; i += 4) {
                var _r = r((rcache || Math.random()) * 0x100000000);
                rcache = _r() * 0x3ade67b7;
                words.push((_r() * 0x100000000) | 0);
            }
            return new WordArray.init(words, nBytes);
        }
    });
    var C_enc = C.enc = {};
    var Hex = C_enc.Hex = {
        stringify: function(wordArray) {
            var words = wordArray.words;
            var sigBytes = wordArray.sigBytes;
            var hexChars = [];
            for (var i = 0; i < sigBytes; i++) {
                var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
                hexChars.push((bite >>> 4).toString(16));
                hexChars.push((bite & 0x0f).toString(16));
            }
            return hexChars.join('');
        },
        parse: function(hexStr) {
            var hexStrLength = hexStr.length;
            var words = [];
            for (var i = 0; i < hexStrLength; i += 2) {
                words[i >>> 3] |= parseInt(hexStr.substr(i, 2), 16) << (24 - (i % 8) * 4);
            }
            return new WordArray.init(words, hexStrLength / 2);
        }
    };
    var Latin1 = C_enc.Latin1 = {
        stringify: function(wordArray) {
            var words = wordArray.words;
            var sigBytes = wordArray.sigBytes;
            var latin1Chars = [];
            for (var i = 0; i < sigBytes; i++) {
                var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
                latin1Chars.push(String.fromCharCode(bite));
            }
            return latin1Chars.join('');
        },
        parse: function(latin1Str) {
            var latin1StrLength = latin1Str.length;
            var words = [];
            for (var i = 0; i < latin1StrLength; i++) {
                words[i >>> 2] |= (latin1Str.charCodeAt(i) & 0xff) << (24 - (i % 4) * 8);
            }
            return new WordArray.init(words, latin1StrLength);
        }
    };
    var Utf8 = C_enc.Utf8 = {
        stringify: function(wordArray) {
            try {
                return decodeURIComponent(escape(Latin1.stringify(wordArray)));
            } catch (e) {
                throw new Error('Malformed UTF-8 data');
            }
        },
        parse: function(utf8Str) {
            return Latin1.parse(unescape(encodeURIComponent(utf8Str)));
        }
    };
    var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm = Base.extend({
        reset: function() {
            this._data = new WordArray.init();
            this._nDataBytes = 0;
        },
        _append: function(data) {
            if (typeof data == 'string') {
                data = Utf8.parse(data);
            }
            this._data.concat(data);
            this._nDataBytes += data.sigBytes;
        },
        _process: function(doFlush) {
            var data = this._data;
            var dataWords = data.words;
            var dataSigBytes = data.sigBytes;
            var blockSize = this.blockSize;
            var blockSizeBytes = blockSize * 4;
            var nBlocksReady = dataSigBytes / blockSizeBytes;
            if (doFlush) {
                nBlocksReady = Math.ceil(nBlocksReady);
            } else {
                nBlocksReady = Math.max((nBlocksReady | 0) - this._minBufferSize, 0);
            }
            var nWordsReady = nBlocksReady * blockSize;
            var nBytesReady = Math.min(nWordsReady * 4, dataSigBytes);
            if (nWordsReady) {
                for (var offset = 0; offset < nWordsReady; offset += blockSize) {
                    this._doProcessBlock(dataWords, offset);
                }
                var processedWords = dataWords.splice(0, nWordsReady);
                data.sigBytes -= nBytesReady;
            }
            return new WordArray.init(processedWords, nBytesReady);
        },
        clone: function() {
            var clone = Base.clone.call(this);
            clone._data = this._data.clone();
            return clone;
        },
        _minBufferSize: 0
    });
    var Hasher = C_lib.Hasher = BufferedBlockAlgorithm.extend({
        cfg: Base.extend(),
        init: function(cfg) {
            this.cfg = this.cfg.extend(cfg);
            this.reset();
        },
        reset: function() {
            BufferedBlockAlgorithm.reset.call(this);
            this._doReset();
        },
        update: function(messageUpdate) {
            this._append(messageUpdate);
            this._process();
            return this;
        },
        finalize: function(messageUpdate) {
            if (messageUpdate) {
                this._append(messageUpdate);
            }
            var hash = this._doFinalize();
            return hash;
        },
        blockSize: 512 / 32,
        _createHelper: function(hasher) {
            return function(message, cfg) {
                return new hasher.init(cfg).finalize(message);
            };
        },
        _createHmacHelper: function(hasher) {
            return function(message, key) {
                return new C_algo.HMAC.init(hasher, key).finalize(message);
            };
        }
    });
    var C_algo = C.algo = {};
    return C;
}(Math));


(function() {
    var C = CryptoJS;
    var C_lib = C.lib;
    var WordArray = C_lib.WordArray;
    var C_enc = C.enc;
    var Base64 = C_enc.Base64 = {
        stringify: function(wordArray) {
            var words = wordArray.words;
            var sigBytes = wordArray.sigBytes;
            var map = this._map;
            wordArray.clamp();
            var base64Chars = [];
            for (var i = 0; i < sigBytes; i += 3) {
                var byte1 = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
                var byte2 = (words[(i + 1) >>> 2] >>> (24 - ((i + 1) % 4) * 8)) & 0xff;
                var byte3 = (words[(i + 2) >>> 2] >>> (24 - ((i + 2) % 4) * 8)) & 0xff;
                var triplet = (byte1 << 16) | (byte2 << 8) | byte3;
                for (var j = 0;
                (j < 4) && (i + j * 0.75 < sigBytes); j++) {
                    base64Chars.push(map.charAt((triplet >>> (6 * (3 - j))) & 0x3f));
                }
            }
            var paddingChar = map.charAt(64);
            if (paddingChar) {
                while (base64Chars.length % 4) {
                    base64Chars.push(paddingChar);
                }
            }
            return base64Chars.join('');
        },
        parse: function(base64Str) {
            var base64StrLength = base64Str.length;
            var map = this._map;
            var reverseMap = this._reverseMap;
            if (!reverseMap) {
                reverseMap = this._reverseMap = [];
                for (var j = 0; j < map.length; j++) {
                    reverseMap[map.charCodeAt(j)] = j;
                }
            }
            var paddingChar = map.charAt(64);
            if (paddingChar) {
                var paddingIndex = base64Str.indexOf(paddingChar);
                if (paddingIndex !== -1) {
                    base64StrLength = paddingIndex;
                }
            }
            return parseLoop(base64Str, base64StrLength, reverseMap);
        },
        _map: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='
    };

    function parseLoop(base64Str, base64StrLength, reverseMap) {
        var words = [];
        var nBytes = 0;
        for (var i = 0; i < base64StrLength; i++) {
            if (i % 4) {
                var bits1 = reverseMap[base64Str.charCodeAt(i - 1)] << ((i % 4) * 2);
                var bits2 = reverseMap[base64Str.charCodeAt(i)] >>> (6 - (i % 4) * 2);
                words[nBytes >>> 2] |= (bits1 | bits2) << (24 - (nBytes % 4) * 8);
                nBytes++;
            }
        }
        return WordArray.create(words, nBytes);
    }
}());




var h = function(e) {
    for (var t = "=".repeat((4 - e.length % 4) % 4), n = (e + t).replace(/\-/g, "+").replace(/_/g, "/"), a = CryptoJS.enc.Base64.parse(n).toString(CryptoJS.enc.Latin1), r = new Uint8Array(a.length), i = 0; i < a.length; ++i)
    r = a.charCodeAt(i);
    return r
}

回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
 楼主| 发表于 2023-4-19 13:33:05 | 显示全部楼层   广东省广州市
揰掵佲 发表于 2023-4-19 13:22
结果是1?
[mw_shl_code=javascript,true]var CryptoJS = CryptoJS || (function(Math, undefined) {
    va ...

不是1,网址:aHR0cHM6Ly93d3cuenRhbi5hcnQvaDUvIy9wYWdlcy9ob21lL2FydA==

补充内容 (2023-4-19 13:43):
直接搜索 c.default.inflateRaw 可定位到
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
 楼主| 发表于 2023-4-19 13:33:24 | 显示全部楼层   广东省广州市
小明无敌 发表于 2023-4-19 13:07
少东西呀 o.default.enc.Latin1 o是什么
最好还是直接发网页

网址:aHR0cHM6Ly93d3cuenRhbi5hcnQvaDUvIy9wYWdlcy9ob21lL2FydA==

补充内容 (2023-4-19 13:43):
直接搜索 c.default.inflateRaw 可定位到
回复 支持 反对

使用道具 举报

结帖率:98% (98/100)

签到天数: 23 天

发表于 2023-4-19 13:43:18 | 显示全部楼层   河南省郑州市
没搞清楚是哪个参数
好像之前逆过这个站
VX截图_20230419134247.png
是这个吗 还有断点没关掉
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
 楼主| 发表于 2023-4-19 15:05:20 | 显示全部楼层   广东省广州市
小明无敌 发表于 2023-4-19 13:43
没搞清楚是哪个参数
好像之前逆过这个站

不是这个,这个是sign的,我需要的是返回参数那个data的解密数据,老哥你看一下能解出来不,我采纳你
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
 楼主| 发表于 2023-4-19 15:09:08 | 显示全部楼层   广东省广州市
小明无敌 发表于 2023-4-19 13:43
没搞清楚是哪个参数
好像之前逆过这个站

{"code":1,"message":"操作成功","data":"cPEpz6zU1WlAHuZE5Z2jTcgNvuff65FksKi8f84wHeyG\/NUKTL6MOA4+f3LVYSnll8w5s98faOtV8RZeuo0mMZlzXlOvQL0zmhuNZYsg\/sy+UqlA1YwXgWq9Kk3MUiMLy9LD\/RFBtPH4SyHMDDsYj2gW5n5PuZq0HHlXzZUX5jedazwmUyr4Fnyli39fmuR1278fWXTsL72ZeLVdJnnTRleJoPYEIa3aajAaiZoSCU\/g6m2ACApWpmYUK5jbL3W\/4g7axSwpdPDam+hnST4AHXg5qFqifvbHzJPc2hHB3ke6asLyp0UhGNBDSZDEOXSWaajLVVNEwTOkHXZnZaeEGN3nyYrZHq2UXeCzuLkhGuBrNqM89dfqsvHvoaOst2Wh4jVhDMZaq64\/gghYBGc9lxWtHE+b6acFCDEReBRMHdc8U7itll2Y3dsAyLUue9NbNdNylchtx\/m9e35J310I\/bjPMrTEsO2IN0FzndasNagJlcbNNsMD6X0I3waajVj3fSGie\/zlHj1hLWzM6XYMInQMSSrEXm\/PF0h7G\/BeBgG7oQOWkS8gOAz5e65d2vWMZ+yNlkna62HGl3ALNYv2ad0InGpYuitzhJilj+TeI6fvaGEZWgiAlsJJkxpqXLsl+groQsoz7CQJdTGhWwfeRxBXvvei7Iq37Ahw8ntCGpbrZMFrPTj1SPbtMWmyDiphZtatH9zEarcV79JBAmGsZoJ\/H3MfvBbFm4fWzz4w+08AKvZlY3\/XnXre\/6otcOrg1a4U8dVQxHKG6OpgMzRDG8KCUqklQg+SMTXPf4RosEOmsfiv6iuMbD5T6uuZI\/LA\/NI5Vk+I3fHNOcpG4qCNWNrA5r0Da5jr8ELdXdK0zxi+WIw3Q012GpKqUhxh5XBAVXCDSfHDnTSEz7uzz77y3qQFs+f\/nYqJmDVUfBVrzwnU0GLWhtg4TnrdTLevdyFVcD0Qgr2oZq5fJ\/7aNHiAC+S7oF26fY59R+KkGMwWIKYu05yZMFJokKqVUtEWfZhwhNFfayegKIYBBSlYJiMJzi1Wdln3gi8SKrhAzypmXA9\/qtPSxV84\/UeNmkIjYssHKFp30kwaTOBOj3L9Tx8dYVbvVjSu\/hk3mOWVpNc5lGk56iJvQeun0b2fNBkr9AK1CJFRwmMTmVBlcJsnZQf8w8zNWoXwipkiDQMhSEOxbBE9CvI7RNxFrOV1Gi10m6GrYeS3DJlmFb7PT2XfEAWB2OEbibRo6Z1Cb2HQRFga6MbcF0kzNkudpUvl\/L20bXWBwBC8pTzvZDW2eHwX6HMsY4hoMmRgqd4u1B3xPkwhGSxwncYYM77+Cu0CUQXgaiQbi+42uU1eJVa07oHzScoTu36ve8tx7Cr7+pog2C8DGMTZHRXQhSTGwzI4U+\/tl1PJWXKkAynxLWWEh8jO\/bOaXJrIlKidNMYdjgS0rLxjJK4i4C0v7kU7hz6PBLP90ErEublaG7WdonmqgbEaX5beLyjj3t481pMuyNcpAD\/p4r82H6LVZeLgDKBOsOs7FPqM"}
需要解密这个data
回复 支持 反对

使用道具 举报

结帖率:98% (98/100)

签到天数: 23 天

发表于 2023-4-19 15:13:11 | 显示全部楼层   河南省郑州市
774105 发表于 2023-4-19 15:05
不是这个,这个是sign的,我需要的是返回参数那个data的解密数据,老哥你看一下能解出来不,我采纳你 ...

能解出来  有点麻烦 扣个webpack 或者导入一下CryptoJS  30jb太少了
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
 楼主| 发表于 2023-4-19 15:15:16 | 显示全部楼层   广东省广州市
小明无敌 发表于 2023-4-19 15:13
能解出来  有点麻烦 扣个webpack 或者导入一下CryptoJS  30jb太少了

多少啊。
回复 支持 反对

使用道具 举报

  高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表