无需登录 数据私有 本地保存

CBOR编码解码器 - 二进制JSON格式

10
0
0
0
JSON 数据 0 字符
简单对象 数组 嵌套结构 多种类型
CBOR 十六进制 0 字节

常见问题与知识点

什么是 CBOR?

CBOR(Concise Binary Object Representation,简洁二进制对象表示法)是 IETF 在 RFC 7049 中定义的一种二进制数据格式。它类似于 JSON,但使用二进制编码,数据体积更小,解析速度更快,特别适合物联网(IoT)、嵌入式系统和网络传输场景。

CBOR 和 JSON 有什么区别?

JSON 是文本格式,人类可读但体积较大;CBOR 是二进制格式,体积更紧凑(通常比 JSON 小 30%-60%),解析更快。CBOR 支持更多数据类型(如字节字符串、标签、大整数等),而 JSON 仅支持字符串、数字、布尔值、null、数组和对象。

CBOR 使用什么字节序?

CBOR 统一使用大端序(Big-Endian,网络字节序)编码多字节数值。这与许多网络协议一致,确保跨平台兼容性。所有长度字段和数值都按照大端序存储。

CBOR 支持哪些数据类型?

CBOR 支持 8 种主要类型:无符号整数(类型0)、负整数(类型1)、字节字符串(类型2)、文本字符串(类型3)、数组(类型4)、映射/对象(类型5)、标签(类型6)、浮点数与简单值(类型7,包括布尔值、null、浮点数等)。

什么场景适合使用 CBOR?

CBOR 特别适合:① IoT 设备和传感器数据传输(低带宽环境);② WebAuthn/FIDO2 认证协议(已广泛采用);③ 区块链和分布式系统;④ 移动应用与后端之间的高效通信;⑤ 需要紧凑存储的配置文件或缓存数据。

如何验证 CBOR 数据是否正确?

您可以使用本工具的解码功能:将 CBOR 十六进制粘贴到右侧面板,点击"解码"按钮。如果解码成功并得到预期的 JSON 数据,则说明 CBOR 编码正确。此外,CBOR 有严格的编码规范,不合规的数据解码时会报错。

CBOR 的"自描述"特性是什么?

CBOR 是一种自描述的编码格式——每个数据项的前导字节包含类型信息和长度信息,解码器无需外部模式(schema)即可解析数据。这与 JSON 类似,但比 Protocol Buffers 等需要预定义模式的格式更灵活。标签机制(类型6)还可以为数据附加语义信息(如日期时间、URI 等)。