【逆向】Base64编码解码基础
序言:
Base64编码将一段二进制数据转换成由64个可显示字母或数字组成的字符集合,其主要用于传送图形、声音等非文本数据。
编码:
3字节一组,将第1个字节放置于24位缓冲区的高8位,将第2个字节放置于24位缓冲区的中间8位,,将第3个字节放置于24位缓冲区的低8位,(如果少于3个字节,相应的缓冲区位置,置0),然后将24位缓冲区,分为6位一组,作为下标索引,从Base64编码表中获取对应的字符作为输出(如果输出字符少于4个,用“=”填充)。
1、将字符串每三个字节分为一组,每个字节8bit,共24bit。
2、将24bit分为4组,每组6bit。
3、将每组用0补齐为8bit,4组共32bit。
4、将结果用做Base64编码对照表下标,获取对应值。
解码:
解码是编码的逆过程,得到Base64字符串中的每一个字符在Base64编码表中的索引值,然后将这些索引值的二进制连接起来,重新以8位为一组,即可得到编码前的内容。
1、获取字符在Base64编码对照表中的下标,4字节,共32bit。
2、去除每组补0,分为4组,每组6bit,共24bit。
3、将24bit分为3组,每组8bit。
4、按照ASCII码表获取对应字符后,即解密。
逆向识别
https://www.cnblogs.com/SunsetR/p/12323580.html