base家族分类方法
base家族总是傻傻分不清, 所以就做了以下的总结,方便自己的分类
以下是关于ascii码、base64、base32、base16的微妙关系
ASCII码表 ---字符一共 256个(8bit表示一个字符)
base64字符---字符一共64个 (6bit表示一个字符)
表示方式:
base64中包含大写字母(A-Z)、小写字母(a-z)、数字0-9以及+/;
base64编码后一般都有=号,而且密文长度较长的也基本是base64编码
剩余一个八位字节(1个byte)时,最后一个6位的base64字节块有四位是0值,最后附加上两个等号;
8+4=12 可以被三整除,补4个0 ===> 两个等于号
剩余两个八位字节(2个byte)时,最后一个6位的base字节块有两位是0值,最后附加一个等号
16+2=18 可以被三整除,补2个0 ===> 补一个等于号
base32字符---字符一共32个(5bit表示一个字符)
表达方式:
Base32中只有大写字母(A-Z)和数字234567
{不包括189}以及特殊符号
长度不足补足
1个字节(byte)时,补足6个=号
2个字节(byte)时,补足4个=号
3个字节(byte)时,补足2个=号
4个字节(byte)时,补足1个=号
8 => +2 =>10 /// 2bit ==> 6 =
16 => +4 +> 20 // 4bit ==> 4 =
24 => +6 => 30 // 6bit ===> 2 =
32 => +8 => 40 // 8bit ===> 1 =
base16字符---字符一个16个(4bit表示一个字符)
base16就是用16(2的4次方)个特定ASCII码表示256个ASCII字符。1个ASCII字符经过base16编码后会变为2个字符,长度增加一倍
表达方式:
相当于16进制,0-9和ABCDEF

浙公网安备 33010602011771号