base64 编码原理

base64主要作用是将字节流转换成可读的ASCII编码格式

每个字节是8bit的数据,如果分成4bit和4bit的进行区分,那么就会存在一个问题,每一个字符就会翻倍

增大传输的数据,使用4bit的编码,那么共有16种情况

对于3个字节来说,3*8=24个bits

每个字节就有2的8次方情况

如果把上述的数据进行分类

拆分成6*4=24bits的话,那么每个块就6bits,

2^6=共64种情况,

A-Z:26

a-z:26

0-9:10

+:1

/:1

加一起共64个字符,这些字符都是可读的,拆分后就可以表示相应的数据信息内容

拆分后最后一个字节不是少2个bit就是少4个bit,对于少的必须补0,然后再凑够成整个字节

011001 = 25
01xxxx = what?
xxxxxx = what?
xxxxxx = what?

 

12+4,共需要补2个字节,所以补得字节必须是整数倍 

 

011011 = 27
000110 = 6
1111xx = what?
xxxxxx = what?

如果缺少2个bit,就需要补1个byte就可以了

缺少的2bit或4bit全部补0,补得6bit的xxxxxx全部换成=

posted on 2016-11-16 20:40  tistar  阅读(163)  评论(0编辑  收藏  举报