Hex 编码
Hex 编码常被称为 Base16 编码。是计算机科学中最基础、最直观的数据表示方式之一,主要用于将二进制数据转换为人类可读的文本格式。核心逻辑是将每一个字节拆分为两个4位的部分,然后用十六进制数字来表示每一个部分。
Hex 是查看内存、分析二进制文件(如图片、可执行程序)的首选。通过 Hex 视图,可以一眼看出文件的魔数(如 PNG 文件开头总是 89 50 4E 47)。
由于每 1 个字节的数据需要 2 个字符来表示,Hex 编码会使数据体积膨胀 100%。相比之下,Base64 的体积膨胀仅为约 33%。
使用场景:二进制分析
base64 编码
base64 是基于64个可打印的字符来表示二进制的数据的一种方法。以3个字节(24位)为一组,每组会被划分为4组(每组6位,表示64个字符)并在每组前补位两个0,变为每组8位。最后通过对照 base64 表取值得到最终的编码内容。因将6位的二进制数据以8位表示,原文的体积膨胀约为 33%。
如果分组后的字节数不位3的倍数,则对最后余数的部分不满6位的组用0补位,没有数据的组使用 = 补位。因此编码结果末尾可能存在 0~2 个等于号。
使用场景:常见数据传输