码迷,mamicode.com
首页 > 其他好文 > 详细

Base64编解码是什么?

时间:2019-11-20 21:18:54      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:填充   标识   编码方式   环境   编解码   单元   regex   排列   比特   

㈠Base64是什么?

⑴Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。

⑵Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。采用Base64编码具有不可读性,需要解码后才能阅读。

⑶标准的Base64并不适合直接放在URL里传输,因为URL编码器会把标准Base64中的“/”和“+”字符变为形如“%XX”的形式,而这些“%”号在存入数据库时还需要再进行转换,因为ANSI SQL中已将“%”号用作通配符。

 

㈡Base64编码的规则

①把3个字节变成4个字节。
②每76个字符加一个换行符。
③.最后的结束符也要处理。
 
㈢Base64索引表
技术图片

 

㈣Base64的相关知识

⑴在Base64中的可打印字符包括字母A-Za-z、数字0-9共有62个字符,加上+/共64个字符,实际上还有一个字符=来作为后缀。

比如:编码Man

技术图片

 

⑵当Base64对一个二进制数据进行编码时,每6个位元为一个单元,对应某个可打印字符。3个字节有24个位元,对应于4个Base64单元,即3个字节可由4个可打印字符来表示,所以最少要24个比特位。如果不足24位,就在后面补0,后面补的0就会用=来表示,所以=也只会在最后面。

 

⑶Base64加密原则:

6bit(原8bit)一个字节,不足的位数用0补齐,两个0用一个=表示。

 

⑷Base64编码原理:

  Base64编码的思想是:采用64个基本的ASCII码字符对数据进行重新编码。

 ①将需要编码的数据拆分成字节数组,以3个字节为一组,按顺序排列24位数据,再把这24位数据分成4组,即每组6位;

 ②再在每组的的最高位前补两个0凑足一个字节,这样就把一个3字节为一组的数据重新编码成了4个字节;

 ③当所要编码的数据的字节数不是3的整倍数,也就是说在分组时最后一组不够3个字节,这时在最后一组填充1到2个0字节,并在最后编码完成后在结尾添加1到2个=号。

 

⑸A和BC的编码过程

技术图片

 

⑹在线工具
图片转换Base64:http://imgbase64.duoshitong.com/
正则表达式图形化工具:https://regexper.com/


Base64编解码是什么?

标签:填充   标识   编码方式   环境   编解码   单元   regex   排列   比特   

原文地址:https://www.cnblogs.com/shihaiying/p/11893905.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!