美文网首页Python
制作一款属于自己的翻译小软件,Python解决有道JS加密!

制作一款属于自己的翻译小软件,Python解决有道JS加密!

作者: 一起学编程 | 来源:发表于2020-04-22 15:38 被阅读0次

    当我在左边输入苹果的时候,右边自动给我显示英文。

    那么可以猜想一下如果我左边输入的是英文呢?右边会不会显示中文!(会)

    结论:这个网站的api它会自动识别你的中英文

    制作一款属于自己的翻译小软件,Python解决有道JS加密!

    抓包:

    制作一款属于自己的翻译小软件,Python解决有道JS加密!
    很多人学习python,不知道从何学起。
    很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
    很多已经做案例的人,却不知道如何去学习更加高深的知识。
    那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
    QQ群:595948765
    欢迎加入,一起讨论 一起学习!

    很明显观看返回值后可以确定就是这一个包,而这个post请求所携带的参数非常多,大概率多参数加密!

    然后经过反复测试后发现,其中的salt,sign,ts是会发生变化的。

    不难发现ts仅仅比salt少了一位,而如果你有经验,看到ts就会知道这个是现行时间。

    当然这个也只是猜测,不能当真。所以我们可以去寻找一下salt的来源,它到底是由什么方法生成的,然后我们用python代码去模拟。

    制作一款属于自己的翻译小软件,Python解决有道JS加密!

    随便一下就找到了,当然这个也是要经验的。我们可以看到的信息量很足。比如i = r +随机数,而r=ts,i=salt。不就验证了我们的猜想——不难发现ts仅仅比salt少了一位,前面的都是一样的。

    而r = (new Date).getTime(),这不就是取现行时间吗?那么salt与ts我们都已经得到。

    制作一款属于自己的翻译小软件,Python解决有道JS加密!

    而sign的值就是个md5摘要,里面的只有两个变量,e、i,而i我们已经在前面得到了。那么如何得到e,甚至我们前面t = n.md5(navigator.appVersion),bv=t,很明显 即使bv也是加密的,只是我们的navigator.appVersion是一个定值。

    OK,到此为止所有问题都已经解决,e为我们所查询的字符串,navigator.appVersion为我们的用户代理。(模拟请求时,记得添加请求报文。)

    相关文章

      网友评论

        本文标题:制作一款属于自己的翻译小软件,Python解决有道JS加密!

        本文链接:https://www.haomeiwen.com/subject/nnwiihtx.html