/goudongsign

京东 APP 的 sign 算法以及请求库(已封装 Python,可直接接入爬虫)

Primary LanguageC

仅做逆向学习交流使用,请勿用于非法用途,任何单位或个人因除学习交流外使用而直接或间接产生的任何侵权、违法后果,作者不承担任何法律责任。

签名

$ bash build-lib.sh
$
$ python3 jdsigner.py

未完整复原,大概复原了 70%。主要是加密方法 0,1 对于最后几个字节的处理未还原。

就是,如果加密数据大小如果不是8的整数倍的话,最后剩余的几个字节 (1-7个字节),会根据

switch(剩余字节数)
    case 1:
    a()
    ...
    case 7:
    g()

分情况加密处理,这七种算法不同且较长。不过把加密数据扩充到8的整数倍也可行,所以这部分没有处理。