Base64算法

阅读数:94 评论数:0

跳转到新版页面

分类

算法/数据结构

正文

概念

Base54算法使用了单表置换算法的思想,Base64使用一个由64个字符组成的映射表。

实现原理

1、将给定的字符串转换成对应的字符编码(如GBK、UTF-8)

2、将该字符编码转换成二进制码

3、对获得的二进行码进行分组操作

(1)每3个字节(8位二进制)为一组,一共24个二进制位。

(2)将这个24个进制位分成4组,每个组有6个二进制位,不足6位的,后面补0.(2的6次方=64)

(3)在每个组前面加两个0,这样每组就又变成了8位,即每个组一个字节,4个组就4个字节了。

(4)根据Base64的转码表找到每个字节对应的符号,这个符号就是Base64的编码值。

经过Base64编码后的字符数一定是4的整数倍,如果得到的字符数不为4的整数倍,则后面使用等号“=”补足。

举一个中文utf-8编码的例子:

(1)“严”的utf-8编码为E4B8A5

(2)写成二进制 “11100100 10111000 10100101”

(3)转换成四组“00111001 00001011 00100010 00100101”

(4)相应的十进制数为57、11、34、37

(5)所以,此字的编码为5Lil




相关推荐