base64原理

介绍

base64是一种加密算法,用 64个字符 来表示二进制数据。

64个字符,26个大写英文字母,26个小写英文字母,10个数字,+、/组成,如下:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

base64 转换后的结果只会出现 64个字符,这也是base64名字的由来。

由于不同的应用场景,当+或/有特殊含义时,这两个字符被换成了其他字符,那属于base64的变种

base64编码二进制数据

  1. base64将3个8位(3*8=24)的二进制数据连在一起,然后切分成4个6位(4*6=24)的二进制数据,然后再在这4个6位二进制数据的前面都补两个0,补满8位,转换为十进制后表示的是0到63。(2^6=64)

  2. 上面的64个字符按顺序分别对应了十进制数字的0到63

base64编码字符串

先将字符串转 二进制的ascii,

然后重复上面 base64编码二进制数据

如下图:

补=

base64会在数据的末尾填充等号=。一般来说,对字符串进行base64转换时,字符数量整除3不会补=,余1会补两个==,余2会补一个=。

感谢:
https://www.csdn.net/gather_24/MtjaQgxsNzcwLWJsb2cO0O0O.html
https://blog.csdn.net/aozeahj/article/details/52507352


原文出处:/show_1EF5OKMAiLLU.html