爬虫 某物流

目标地址

复制代码
url = "https://api.jdl.com/aging/feeInquiryNewByJDL"

加密参数 ciphertext和data

搜关键字ciphertext跟着栈走

很明显的DES加密

复制代码
window = global

const e = require('jsencrypt');
// const e = require('JSEncrypt')
// e = r(775).JSEncrypt
// const t = require('crypto-js')

var n = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
   function o() {
            for (var e = "", i = 16; i > 0; --i)
                e += n[Math.floor(62 * Math.random())];
            return e
        }
s = {
    "requestData": [
        {
            "queryType": 1,
            "volume": "1",
            "weight": 1,
            "sendTime": 1702283304071,
            "sendDetailAddress": "111",
            "receiveDetailAddress": "科学园南里西街与南沙滩东路交叉口西120米",
            "sendProvinceId": 1,
            "sendCityId": 72,
            "sendCountyId": 2819,
            "sendTownId": null,
            "receiveProvinceId": 1,
            "receiveCityId": 72,
            "receiveCountyId": 2819,
            "receiveTownId": null
        },
        {
            "client": "4",
            "entrance": "JDWL-GW"
        }
    ],
    "pubKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCSp5eYB2FfHSXhzaUuHHbMfeOJp2dJ/oew7EKwzhLYfRa29d2pXm+rtN4c2HdhR+NGwm/5fY8T3entKq/7qrNBagG8R8tGl604vqteU+8Tjl4SRbQRpm0Il64ruz+xjE4NWJFtr8CWW0U6mA8yjSffSDbvqm87bsxTpHIn2frr/QIDAQAB"
}
getWgEncryptData = function(r) {
                    var n = r.requestData
                      , c = r.pubKey
                      , l = ""
                      , d = ""
                      , m = ""
                      , f = "";
                    try {
                        var h = o()
                          , v = o()
                          , w = new e;
                        w.setPublicKey(c),
                        l = w.encrypt("".concat(h).concat(v)),
                        m = t.enc.Utf8.parse(h),
                        f = t.enc.Utf8.parse(v),
                        d = t.AES.encrypt(JSON.stringify(n), m, {
                            iv: f,
                            mode: t.mode.CBC,
                            padding: t.pad.Pkcs7
                        })
                    } catch (e) {
                        console.log("e", e)
                    }
                    return {
                        ciphertext: l,
                        encryptedData: d,
                        key: m,
                        iv: f
                    }
                }

d = getWgEncryptData(s)

params = {
       ciphertext : d.ciphertext,
        data:d.encryptedData.toString()
}

console.log(params)
相关推荐
Brilliantwxx14 分钟前
【STM32】 I2C_EEPROM_test 工程(实战篇)
开发语言·stm32·单片机·嵌入式硬件·ecmascript
清水白石00820 分钟前
Python 异步编程深度解析:Cancellation 到底是异常还是控制信号?从 asyncio 取消机制到企业级事务设计最佳实践
开发语言·python
袋鼠云数栈UED团队22 分钟前
AI Coding 方法论分析:同一个需求 SpecKit 、 Superpowers、 MattpocockSkills 不同设计
前端·aigc·ai编程
kolyle26 分钟前
万级 QPS 下的 Token 分发系统架构:从 0 到 1 跑通 AI 时代的“水电煤“
开发语言·人工智能·系统架构·token·qps·极智词元·大模型私有化部署
掰头战士26 分钟前
Prompt Cache,如果agent全靠LLM方做隐式缓存实在不够用。
前端·llm·agent
caoerzhong39 分钟前
JeeWMS 开源仓库管理系统 GPL-3.0 合规指南:Java WMS 二次开发前必须弄清的授权边界
java·开发语言·开源·vue
Patrick在香港39 分钟前
Python 审计香港开放数据目录:两个端点差 10 倍,只有 9.3% 的资源标了「最后修改时间」
开发语言·数据库·python·数据分析·api·数据治理·开放数据
LEE41 分钟前
前端转型全栈 01:数据建模,前端最大的盲区
前端·javascript·后端
货拉拉技术42 分钟前
个人提效,攒不成组织提效:货拉拉 AI Coding 落地实践
前端
雪芽蓝域zzs1 小时前
第四十七节:驾驶舱大屏 ECharts 图表集成
前端·javascript·vue.js