前言
最近遇到了base64解密的问题,而且需要自定义密码表,于是仔细了解了一下base64的加解密的过程
介绍
其实base64是一种很简单的编码方式。
将3个8字节的二进制,转化为4个6字节的二进制。同时因为2^6=64所以将转化之后的值匹配对应长度为64的密码表,最终得到密文。
解密过程就是,先在密码表中找到对应的下标,然后组合,每8位为一个字符。
特征
参考源码https://github.com/joedf/base64.c
base64算法通常会在IDA看到一组64位的数据块
有了源码,那么自定义密码表,只需要略作修改即可。