百趣云
百趣云的博客
🔖加密算法
为什么要先识别再还原逆向加密代码时,第一步永远是识别算法家族——是标准算法(AES/RSA/SHA)还是自定义算法?标准算法意味着你只需要找密钥,自定义算法才需要还原逻辑。识别靠的不是读代码,是特征常量:密码学算法内部都有固定的数学常量,它们在二进制里像指纹一样独特。AES 的特征常量AES 的核心是 S 盒(SubBytes 替换表),256 字节的固定表:63 7c 77 7b f2 6b 6f c5 30 01 67 2b fe d7 ab 76
ca 82 c9 7d fa 59 47 f0 ad d4 a2 af 9c a4 72 c0
...IDA 里搜前几个字节 63 7C 77
weapi:逆向圈的"祖传教学案例"网易云音乐网页版的 weapi 接口加密,可能是中文互联网被分析得最多的加密方案——因为它设计得实在太标准了:AES-CBC 加密业务数据(两遍),RSA 加密 AES 密钥。十年没变过,是练"JS 加密翻译 Python"的最佳教材。加密流程完整拆解POST 到 https://music.163.com/weapi/... 的数据只有两个参数:params:业务数据两次 AES-CBC 加密的 base64encSecKey:AES 密钥经 RSA 加密后的 hex完整实现:from Crypto.Cipher import AES
import jso