前言:在base64中可打印字符范围是字母A~Z、a~z和数字0~9,共62个字符,再加上+、/两个字符(总共64个字符)。
notion image

1.base64编码原理:

(以“ABC”为例)
首先将需要编码的字符串以3个字节为一组,放入一个24位缓冲区缺少的用0补齐,先来的字节占高位
notion image
然后将缓冲区的数据以每6bit为一组,共分成四组
notion image
将这四组数据高位补零,补齐一个字节,4组共32bit
最后将四个字节的数据与base64编码对照表一一对应
notion image

2.base64解码:

首先找到字符在base64编码对照表里的下标,(以四字节一组,共32bit)
然后将每个字节的前两位去除,组合在一起,共24bit
之后分成的3个字节即是源码。