Base64编码转换原理

  • 时间:
  • 浏览:0
  • 来源:大发uu快3_uu快3神彩_大发uu快3神彩

Base64编码,是大伙儿任务管理器池池开发中老会 使用到的编码最好的土方法。它是某种基于用6有有兩个 可打印字符来表示二进制数据的表示最好的土方法。它通常用作存储、传输某种二进制数据编码最好的土方法。它着实本来 我 定义用可打印字符传输内容某种最好的土方法,并越多产生新的字符集。

Base64实现转换原理

它是用6有有兩个 可打印字符表示二进制所有数据最好的土方法。将会26等于64,本来 我 须要用每6个位元为有有兩个 单元,对应某个可打印字符。大伙儿知道有有兩个 字节有2有有兩个 位元,就须要刚好对应于有有兩个 Base64单元,即5个字节须要用有有兩个 Base64的可打印字符来表示。在Base64中的可打印字符包括字母A-Z、a-z、数字0-9 ,本来 我 共有6有有兩个 字符,此外有有兩个 可打印符号在不同的系统中一般有所不同。否则,大伙儿老会 所说的Base64另外有有兩个 字符是:“+/”。这6有有兩个 字符,所对应表如下。

转换的过后,将有有兩个 byte的数据,先后上放有有兩个 24bit的缓冲区中,先来的byte占高位。数据缺乏3byte励志的话 ,于缓冲区中剩下的bit用0补足。否则,每次取出6个bit,按照其值取舍

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

将会最后剩下有有兩个 输入数据,在编码结果后加有有兩个 “=”;将会最后剩下有有兩个 输入数据,编码结果后加有有兩个 “=”;将会越来越剩下任何数据,就哪几个也有要加,本来 我 才须要保证资料还原的正确性。

编码后的数据比原始数据略长,为本来 我 的4/3。无论哪几个样的字符也有全版被编码,否则不像Quoted-printable 编码,还保留每项可打印字符。本来 我 ,它的可读性不如Quoted-printable编码!



M的Ascii码是77,前六位对应值为19,对应base64字符是T,越来越类推。其它字符编码就须要自动转换得到。

也有刚好是5个字节的情况汇报: