Base64编码介绍
Base64编码是计算机领域常用的一种编码方式,由64个基本字符和1个填充补位字符=组成,基本字符包括英文26个字母大小写(52个字符)、数字0-9(10个字符)以及“+”和“/”共计64个字符。
Base64编码是一种字符编码,并不是一种加密方式,因此并不能使用Base64编码对敏感数据进行加密,会导致敏感信息泄露。
为什么要使用Base64编码
1、解决二进制数据传输过程中出现的一些不可见字符的问题
2、能够节省开销,Base64使用8bit来表示原有信息中的6bit,信息传输成本为原有信息的1.33倍,Base64更具有压缩比优势。
Base64编码的的基本原理
首先将一段目标文本转换为二进制的形式,然后按照6bit进行截取,每6bit按照64进制转换成为一个对应的字符。最后不足6bit的时候会在末尾进行补0,最后会有2bit,4bit的情况,补上0000和00,补0后需要在末尾添加0到两个“=”进行区分,当填充“0000”会在末尾添加“==”,填充“00”会在末尾添加“=”。
示例:
下面举几个例子来解释一下base64编码
1、比如"CSDN"
查阅ASCii表,十进制分别为67,83,68,78
二进制分别为0100 0011 0101 0011 0100 0100 0100 1110
然后按照6bit进行拆分,最后需要补全4个0
010000 110101 001101 000100 010011 100000
然后换算成十进制是 16 53 13 4 19 32
再查找base64对应的表,由于是补了4个0,所以最后是补“==”
Q1NETg==
通过burpsuite的decode进行确认一下,发现结果是正确的