Saltar al contenido
uencoder

CBOR

CBOR (Concise Binary Object Representation) es una forma binaria de JSON, normalizada en el RFC 8949, más compacta y con más tipos de datos.

Propósito

Proporcionar una codificación binaria más compacta que JSON para escenarios con restricciones de ancho de banda y almacenamiento.

Mecanismo

Cada elemento de datos comienza con un byte de etiqueta: los 3 bits altos dan el tipo principal (0-7) y los 5 bits bajos la información adicional. Los tipos principales 0-2 son enteros sin signo, enteros negativos y cadenas de bytes; 3 es una cadena de texto; 4-5 son arrays y mapas; 6 son etiquetas (marcado semántico); 7 son floats y valores simples. Las etiquetas de extensión admiten fechas, URLs, bignums y más.

Casos de uso

  • Protocolo IoT CoAP
  • Datos de credenciales WebAuthn
  • IPLD (el modelo de datos de IPFS)
  • Transporte de datos de sensores

Ejemplos

  • entrada
    {"a":1}
    Output
    A1 61 61 01

    CBOR encoding of a one-pair map

Errores comunes

Confusing CBOR and MessagePack encoding details
They differ; parse with each specification

Términos relacionados

Herramientas relacionadas

References