SBOM
CycloneDX vs SPDX
O CycloneDX e o SPDX são os dois formatos de SBOM que quase todas as ferramentas suportam. Ambos descrevem os componentes de um software e a forma como se relacionam. Diferem na sua origem, no que mais transportam e no organismo de normalização que os apoia.
Atualizado a
A resposta curta
Use o formato que os seus clientes, reguladores ou ferramentas pedem. Se ninguém pedir, o CycloneDX é a escolha mais comum para trabalho de segurança, porque inclui VEX de forma nativa, e o SPDX é a escolha mais comum quando a conformidade de licenças vem primeiro. A maioria dos geradores, incluindo o CRACI, consegue produzir ambos.
Lado a lado
| Funcionalidade | CycloneDX | SPDX |
|---|---|---|
| Mantido por | OWASP Foundation e Ecma International | Linux Foundation |
| Norma | ECMA-424 | ISO/IEC 5962:2021 |
| Versão atual | 1.7, outubro de 2025 | 3.0, abril de 2024 |
| Origem | Segurança e risco da cadeia de abastecimento | Conformidade de licenças |
| Tipos de lista | SBOM, SaaSBOM, HBOM e outras | Perfis para segurança, build, conjuntos de dados e IA |
| Dados de vulnerabilidades | VEX integrado | Perfil de segurança na 3.0 |
| Codificações | JSON, XML, Protocol Buffers | Várias, incluindo JSON |
CycloneDX
O CycloneDX é desenvolvido pela OWASP Foundation e normalizado pela Ecma International como ECMA-424. A versão 1.7 foi lançada em outubro de 2025. Começou pela segurança e pelo risco da cadeia de abastecimento e cobre mais do que software: SBOM, SaaSBOM para serviços e HBOM para hardware. Suporta VEX, pelo que o mesmo formato pode dizer se uma vulnerabilidade afeta um produto. É serializado em JSON, XML ou Protocol Buffers.
SPDX
O SPDX é um projeto open source alojado pela Linux Foundation e reconhecido como a norma internacional ISO/IEC 5962:2021. Começou pela conformidade de licenças, e os seus identificadores de licença são usados muito para além das SBOM. O SPDX 3.0, lançado em abril de 2024, acrescentou perfis para segurança, build, conjuntos de dados e IA.
Veja: noções básicas de SBOM
Da nossa palestra na KCD Helsinki: o que uma SBOM regista, como o SPDX e o CycloneDX diferem na prática e o que o OpenVEX acrescenta.
SBOM basics: SPDX, CycloneDX and OpenVEX
Petteri Pulkkinen e Erika Marttinen em Kubernetes Community Days Helsinki 2026, de 16:50 a 22:05 de SBOMbastic: Getting Ready for Upcoming EU Cybersecurity Regulation in Software Supply Chains.
O que os reguladores aceitam
O Cyber Resilience Act da UE pede uma SBOM num "formato de uso corrente e legível por máquina" e não nomeia nenhum. A BSI TR-03183-2 alemã, versão 2.1.0, é mais específica: CycloneDX 1.6 ou superior, ou SPDX 3.0.1 ou superior, em JSON ou XML. Consulte requisitos de SBOM do CRA.
O formato importa menos do que o conteúdo
Ambos os formatos podem conter uma SBOM incompleta. O que decide se uma SBOM é útil é se lista tudo o que entrou no produto, incluindo as dependências transitivas. O CRACI regista a SBOM enquanto o seu build de GitHub Actions é executado, indica a sua completude por job e por cache e exporta-a em CycloneDX ou SPDX. Consulte geração de SBOM durante o build.
CycloneDX vs SPDX: perguntas frequentes
O que é melhor, CycloneDX ou SPDX?
Nenhum é melhor em geral. O CycloneDX nasceu da utilização em segurança e inclui VEX de forma nativa; o SPDX nasceu da conformidade de licenças e é uma norma ISO. A maioria das ferramentas consegue produzir ambos. Escolha aquele que os seus clientes, reguladores ou ferramentas pedem.
Que formato de SBOM exige o Cyber Resilience Act da UE?
O CRA pede um formato de uso corrente e legível por máquina e não nomeia nenhum. A BSI TR-03183-2 alemã aceita CycloneDX 1.6 ou superior e SPDX 3.0.1 ou superior, em JSON ou XML.
É possível converter entre CycloneDX e SPDX?
Existem ferramentas para converter nos dois sentidos, mas os formatos não têm correspondência direta, pelo que uma conversão pode perder detalhe. Se puder, gere diretamente o formato de que precisa.
O CRACI exporta CycloneDX ou SPDX?
Ambos. O CRACI regista a SBOM enquanto o seu build de GitHub Actions é executado e exporta-a em CycloneDX ou SPDX, incluindo as dependências transitivas e a licença declarada de cada componente.
Obtenha ambos os formatos a partir de um só build
Execute um job de GitHub Actions no CRACI e exporte a SBOM registada em CycloneDX ou SPDX.
Marcar demo