V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
niselover

[有偿] 翻译一个签名算法

  •  
  •   niselover · Mar 8, 2022 · 3512 views
    This topic created in 1516 days ago, the information mentioned may be changed or developed.

    部分代码:

    getSign: function(t) {
        var n = t.appkey, a = Object.keys(t);
        a.sort();
        var s = a.map(function(r) {
            return r + "=" + t[r];
        }).join("&");
        return s = (s = r(s)) + t.nonce_str + t.timestamp + e[n], s = (s = r(s)).toUpperCase();
    },
    

    wechat: d2FuZ3NhbnhpYQ==

    noe132
        1
    noe132  
       Mar 8, 2022
    翻译成啥
    edward1987
        2
    edward1987  
       Mar 8, 2022
    逻辑看着挺简单的啊。。 就是把 请求参数 t 拼成 排序后的 query 形式+特定参数,类似微信 token 的加密生成
    niselover
        3
    niselover  
    OP
       Mar 8, 2022
    @noe132 #1 给我讲明白就行了
    musi
        4
    musi  
       Mar 8, 2022
    代码不全,看着就像是对参数进行了字典序排序然后拼接
    niselover
        5
    niselover  
    OP
       Mar 8, 2022
    @edward1987 #2 最后一行加密 我不知道怎么搞
    niselover
        6
    niselover  
    OP
       Mar 8, 2022
    @musi #4 有完整代码
    musi
        7
    musi  
       Mar 8, 2022
    @niselover #6 有完整代码建议你放到浏览器里面一步步 debug ,这是最容易懂的了
    niselover
        8
    niselover  
    OP
       Mar 8, 2022
    @musi #7 不是 web 开发..搞不明白
    lawler
        9
    lawler  
       Mar 8, 2022
    眼熟,像某非一线大厂的小程序接口 sgin 。
    musi
        10
    musi  
       Mar 8, 2022
    加你了
    liuxu
        11
    liuxu  
       Mar 8, 2022
    在爬谁的站,一看就是弄别人的接口搞不定 sign
    sakasaka
        12
    sakasaka  
       Mar 8, 2022
    就是普通的加签,具体加密算法在 r()这个函数里,上述只是拼接逻辑。
    HAYWAEL
        13
    HAYWAEL  
       Mar 8, 2022
    r() 这个是加密算法。我猜是 MD5 。因为见过不少类似的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2128 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 00:33 · PVG 08:33 · LAX 17:33 · JFK 20:33
    ♥ Do have faith in what you're doing.