Base64编码转换原理

  • 时间:
  • 浏览:0
  • 来源:大发pk10_pk10手机版ios_大发pk10手机版ios

Base64编码,是亲戚朋友 程序开发中老会 使用到的编码措施。它是并算不算基于用6另另1个可打印字符来表示二进制数据的表示措施。它通常用作存储、传输有些二进制数据编码措施。它其实要是定义用可打印字符传输内容并算不算措施,并非会产生新的字符集。

Base64实现转换原理

它是用6另另1个可打印字符表示二进制所有数据措施。但是26等于64,统统还可不可不能能用每6个位元为另另1个单元,对应某个可打印字符。亲戚朋友 知道另另1个字节有2另另1个位元,就还可不可不能能刚好对应于另另1个Base64单元,即1个字节须要用另另1个Base64的可打印字符来表示。在Base64中的可打印字符包括字母A-Z、a-z、数字0-9 ,那么 共有6另另1个字符,此外另另1个可打印符号在不同的系统中一般有所不同。但是,亲戚朋友 老会 所说的Base64另外另另1个字符是:“+/”。这6另另1个字符,所对应表如下。

转换的但是,将另另1个byte的数据,先后放上去另另1个24bit的缓冲区中,先来的byte占高位。数据存在问题3byte搞笑的话,于缓冲区中剩下的bit用0补足。但是,每次取出6个bit,按照其值选则

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
中的字符作为编码后的输出。不断进行,直到完整性输入数据转换完成。

但是最后剩下另另1个输入数据,在编码结果后加另另1个“=”;但是最后剩下另另1个输入数据,编码结果后加另另1个“=”;但是那么 剩下任何数据,就哪几种就有 要加,那么 能够否保证资料还原的正确性。

编码后的数据比原始数据略长,为那么 的4/3。无论哪几种样的字符就有完整性被编码,但是不像Quoted-printable 编码,还保留每种可打印字符。统统,它的可读性不如Quoted-printable编码!



M的Ascii码是77,前六位对应值为19,对应base64字符是T,那么 类推。其它字符编码就还可不可不能能自动转换得到。

就有 刚好是1个字节的状况: