DeepSeal — 本地加密笔记应用,你的隐私只有你说了算。 免费下载 → ×
0x

Hex 编解码

十六进制与文本互转,支持空格分隔、大小写、字节序设置。

P2
文本 ↔ Hex(UTF-8)
文本
Hex(16 进制)

Hex 十六进制在线编解码

Hex(十六进制)是用 16 个字符(0-9、A-F)表示二进制字节的编码方式,每个字节对应 2 个 Hex 字符。 Hex 在逆向工程、底层调试、二进制查看、密码学输出等领域广泛使用。本工具支持 UTF-8 文本与 Hex 互转, 可自定义分隔符(空格、冒号、短横线、0x 前缀等)和大小写。

Hex 与 Base64 对比

  • 体积:Hex 膨胀 2 倍(每字节 2 字符),Base64 膨胀 4/3 倍。
  • 可读性:Hex 更易人工阅读,每字符直接对应半字节。
  • 调试:Hex 适合 hex dump、内存查看;Base64 适合传输。
  • 常见格式:MAC 地址、颜色值、哈希值、UUID 常用 Hex;图片 Data URL、邮件附件用 Base64。

常见应用

  • 逆向工程:hexdump 查看二进制文件结构
  • 密码学:哈希值、密钥、密文的 Hex 表示
  • 颜色:CSS 颜色 #RRGGBB 就是 Hex
  • MAC 地址:网卡硬件地址用 Hex 表示
  • Unicode:U+XXXX 是字符 Unicode 码点 Hex

Hex 编码注意事项

Hex 不是加密:和 Base64 一样,Hex 只是编码方式,任何人都能解码,完全不提供保密性。Hex 常用于显示加密后的二进制结果——因为密文是二进制字节,直接显示是乱码,转成 Hex 才能以可读文本形式呈现。AES 加密的输出通常是 Base64 或 Hex,两者只是密文的不同表示,密文本身没变。

字节序问题:Hex 表示二进制时需注意字节序(endianness)。大端序(big-endian,网络字节序)高位在前,小端序(little-endian,x86/ARM 原生)低位在前。例如整数 0x4D2 在大端序 Hex 为 04 D2,小端序为 D2 04。网络协议通常用大端序,CPU 内部通常用小端序,跨平台传输需转换(如 htonl/ntohl)。查看二进制文件时要先确定字节序,否则解读会完全错误。

UTF-8 与中文:中文以 UTF-8 编码存储,每个汉字占 3 字节,即 6 个 Hex 字符。例如"中"的 UTF-8 编码为 E4 B8 AD,"文"为 E6 96 87。把 Hex 解码为文本时,必须知道原编码(UTF-8/GBK/UTF-16),否则会乱码。本工具固定使用 UTF-8解码,如果你的 Hex 是 GBK 编码的中文,需先转为 UTF-8 再用本工具。奇数长度错误是最常见的 Hex 解码失败原因——Hex 必须 2 个字符一组表示 1 字节,奇数个字符无法解析,请检查是否漏了字符。

Hex 常见问答

十六进制是什么?
十六进制(Hexadecimal)是基数为 16 的计数法,用 0-9 和 a-f 表示一个字节(0-255)。一个字节用两个十六进制字符表示,如 0x41 表示字符 A。常用于显示二进制数据、内存地址、哈希值、密钥等。
Hex 和 Base64 哪个好?
Hex 编码体积是原文的 2 倍(200%),Base64 约 133%。Base64 更紧凑适合传输。Hex 可读性更好、每字节对齐,适合调试和显示密钥/哈希。根据场景选择。
十六进制怎么转中文?
中文以 UTF-8 编码存储,每个汉字占 3 字节,即 6 个十六进制字符。例如"中"的 UTF-8 编码为 E4 B8 AD。把 Hex 字符串按字节解析为 Uint8Array,再用 TextDecoder 以 UTF-8 解码即可得到中文。
Hex 编码能加密吗?
不能。Hex 只是编码,任何人都能解码,无保密性。如果需要保护数据,请使用 AES/RSA 等真正的加密算法。Hex 常用于显示加密后的密文(因为密文是二进制,不便直接显示)。

HyperGrad 生态还有这些站