Conversor CBOR para JSON (texto)
Explica o CBOR (RFC 8949), seus tipos e como representar valores binários compactos em JSON textual.
Copiado!
Cole os bytes CBOR em hex. Byte strings viram 0x…; tags devolvem o conteúdo. Não cobre comprimento indefinido nem bignum.
CBOR (Concise Binary Object Representation, RFC 8949) é um formato binário compacto com modelo de dados semelhante ao JSON, mas com suporte a tipos como bytestrings, timestamps e bignum.
Para converter um arquivo CBOR em JSON texto use bibliotecas como cbor (Node) ou cbor2 (Python). Tipos sem equivalente direto (ex: bytestring) são representados em base64 ou hex.
Lendo bytes CBOR sem instalar biblioteca
CBOR aparece em COSE, WebAuthn, certificados digitais e telemetria de dispositivos, sempre naqueles momentos em que você recebe um punhado de bytes e precisa entender o conteúdo antes de escrever a primeira linha de código. Cole a sequência em hexadecimal e a página devolve o JSON equivalente, identado. O exemplo a26161016162820203 vira um objeto com a igual a 1 e b igual à lista 2, 3.
O leitor segue o caminho principal do RFC 8949: os três bits altos do primeiro byte dizem se aquilo é inteiro, inteiro negativo, byte string, texto, array, mapa, tag ou valor simples, e os cinco bits baixos dizem o tamanho. Meia precisão, float de 32 e de 64 bits são reconhecidos. Byte strings viram texto começando em 0x, e chaves de mapa sempre viram string no JSON, mesmo quando eram números inteiros.
Duas limitações merecem atenção antes de você confiar no resultado. Comprimento indefinido, aqueles bytes 0x9f e 0xbf, não é suportado e a ferramenta avisa. Tags são abertas e descartadas: uma data com tag 1 devolve só o inteiro 1363896240, e um bignum com tag 2 devolve os bytes em hexadecimal em vez de virar número. Se as tags importam, use cbor no Node ou cbor2 no Python. A decodificação acontece toda no navegador.
Perguntas frequentes
Aceita base64 em vez de hexadecimal?
Por que minha data virou um número inteiro?
Por que um array de comprimento indefinido dá erro?
Ferramentas Relacionadas
Conversor MessagePack para JSON (texto)
Explica o formato binário MessagePack, suas vantagens e como traduzir para JSON textual com exemplos.
Conversor BSON para JSON (texto)
Explica diferenças entre BSON (binário) e JSON, com tabela de tipos e exemplos de conversão textual.
Tradutor de Código Binário
Converta texto em código binário (0s e 1s) e vice-versa. Suporta qualquer caractere ASCII. Processado no navegador.