前言
在js逆向过程中,大多数网站都会对发送到服务器的数据进行加密,而我们要模拟浏览器请求,必须要明白这些数据是干什么的,了解加密方式的特征可以让我们更快知道加密方式,定位加密函数,节省大量时间
博主的博客网站刚开通,所以文章同步更新
欢迎访问:Starrism.top
加密
单向加密(MD系列 sha系列)
指只能加密数据而不能解密数据,这种加密方式主要是为了保证数据的完整性,常见的加密算法有MD5、sha系列等(位于python内置的hashlib模块中)
MD5
MD系列的加密方式主要有MD5、MD4与MD2,但是爬虫中主要遇见的都是MD5,特征:
- 位数只有16位,32位,40位,无论明文数据有多长加密后的长度都是不变的
- 而且数据都是16进制的,最大值不会超过f
- MD5加密函数会出现的默认key:1732584193、271733879在逆向时会节省不少时间
对于未被魔改过的MD5,可记住一些常见的MD5加密后的密文,可对逆向节省时间
如在进行模拟登陆的时候可输入密码为123456
我们只需记住16位前两位是49,32位前两位是E10,就可以很快分辨出这是MD5加密
注意:有些网站可能对原始明文进行取盐操作,需要注意识别
实现:
from hashlib import md5, sha1
test = md5()
test.