Base64

380 阅读1分钟

Base64是一种基于64个可打印字符来表示二进制数据的方法。他是一种编码方式,不是加密方法。使用0-9,a-z,A~Z,+,/,这个64个字符,以6位为一个单元,对应一个可打印字符,位数不够时,末尾补0,补的0为=。

规则:

  • 原数据必须的字节数需被3整除,不够末尾补0。3x8=4x6
  • 每6位取出来作为1个单位,从下表中查询其对应的字符。

Snipaste_2021-05-15_22-06-40.png 图片摘自:百度百科

举例1:

1111 1111 1010 0101                     原始数据
1111 11 | 11 1010 | 0101 00 | 00 0000   base64编码
63        58        20      
/         6         U         =         查上表可得,结果:/6U=

举例2: 用base64编码A,A的ACSII为65,二进制位是0100 0001

   A
   0100 0001
   0100 00 | 01 0000 | 0000 00 | 00 0000
   16        16        
   Q         Q         =         =            base64编码:QQ==

举例3: 用base64编码CB,C的ACSII为67,B的ACSII为66

  C         B
  0100 0011 0100 0010 
  0100 00 | 11 0100 | 0010 00 | 00 0000
  16        52        8
  Q         0         I         =             base64编码:Q0I=