SBOM
CycloneDX vs SPDX
CycloneDX와 SPDX는 거의 모든 도구가 지원하는 두 가지 SBOM 형식입니다. 둘 다 소프트웨어에 포함된 구성 요소와 그 관계를 설명합니다. 차이는 출발점, 함께 담는 정보, 그리고 뒷받침하는 표준화 기구에 있습니다.
업데이트
간단한 답변
고객, 규제 기관 또는 도구가 요구하는 형식을 사용하세요. 아무도 요구하지 않는다면, 보안 업무에서는 VEX를 기본으로 담는 CycloneDX가 더 흔히 선택되고, 라이선스 컴플라이언스가 중심인 곳에서는 SPDX가 더 흔히 선택됩니다. CRACI를 포함한 대부분의 생성 도구는 둘 다 생성할 수 있습니다.
나란히 비교
| 기능 | CycloneDX | SPDX |
|---|---|---|
| 관리 주체 | OWASP Foundation 및 Ecma International | Linux Foundation |
| 표준 | ECMA-424 | ISO/IEC 5962:2021 |
| 현재 버전 | 1.7, 2025년 10월 | 3.0, 2024년 4월 |
| 출발점 | 보안 및 공급망 위험 | 라이선스 컴플라이언스 |
| BOM 유형 | SBOM, SaaSBOM, HBOM 등 | 보안, 빌드, 데이터셋, AI용 프로필 |
| 취약점 데이터 | VEX 기본 내장 | 3.0의 보안 프로필 |
| 인코딩 | JSON, XML, Protocol Buffers | JSON을 포함한 여러 형식 |
CycloneDX
CycloneDX는 OWASP Foundation이 개발하고 Ecma International이 ECMA-424로 표준화했습니다. 버전 1.7은 2025년 10월에 출시되었습니다. 보안과 공급망 위험에서 출발했으며 소프트웨어 이상을 다룹니다. SBOM, 서비스용 SaaSBOM, 하드웨어용 HBOM이 여기에 포함됩니다. VEX를 지원하므로 같은 형식으로 취약점이 제품에 영향을 주는지도 표현할 수 있습니다. JSON, XML 또는 Protocol Buffers로 직렬화됩니다.
SPDX
SPDX는 Linux Foundation이 호스팅하는 오픈 소스 프로젝트이며, 국제 표준 ISO/IEC 5962:2021로 인정받았습니다. 라이선스 컴플라이언스에서 출발했으며, SPDX 라이선스 식별자는 SBOM을 훨씬 넘어 널리 쓰입니다. 2024년 4월에 출시된 SPDX 3.0은 보안, 빌드, 데이터셋, AI용 프로필을 추가했습니다.
영상: SBOM 기초
KCD Helsinki 발표에서 SBOM이 무엇을 기록하는지, SPDX와 CycloneDX가 실제로 어떻게 다른지, OpenVEX가 무엇을 더하는지 설명합니다.
SBOM basics: SPDX, CycloneDX and OpenVEX
Kubernetes Community Days Helsinki 2026의 Petteri Pulkkinen 및 Erika Marttinen, SBOMbastic: Getting Ready for Upcoming EU Cybersecurity Regulation in Software Supply Chains 중 16:50~22:05.
규제 기관이 인정하는 형식
EU Cyber Resilience Act는 SBOM을 "널리 쓰이는 기계 판독 가능 형식"으로 요구할 뿐 특정 형식을 지정하지 않습니다. 독일 BSI TR-03183-2 버전 2.1.0은 더 구체적입니다. JSON 또는 XML로 된 CycloneDX 1.6 이상 또는 SPDX 3.0.1 이상을 요구합니다. CRA SBOM 요구 사항을 참고하세요.
형식보다 내용이 중요합니다
두 형식 모두 불완전한 SBOM을 담을 수 있습니다. SBOM이 유용한지를 결정하는 것은 전이적 종속성을 포함해 제품에 들어간 모든 것을 나열하는가입니다. CRACI는 GitHub Actions 빌드가 실행되는 동안 SBOM을 기록하고, 작업과 캐시마다 완전성을 표시하며, CycloneDX 또는 SPDX로 내보냅니다. 빌드 시점 SBOM 생성을 참고하세요. 어느 형식이든 파일 내용을 확인하려면 SBOM 품질 체크리스트를 사용하세요.
CycloneDX vs SPDX: 자주 묻는 질문
CycloneDX와 SPDX 중 어느 것이 더 나은가요?
일반적으로 어느 한쪽이 더 낫지는 않습니다. CycloneDX는 보안 분야에서 출발해 VEX를 기본으로 담고, SPDX는 라이선스 컴플라이언스에서 출발했으며 ISO 표준입니다. 대부분의 도구는 둘 다 생성할 수 있습니다. 고객, 규제 기관 또는 도구가 요구하는 형식을 선택하세요.
EU Cyber Resilience Act는 어떤 SBOM 형식을 요구하나요?
CRA는 널리 쓰이는 기계 판독 가능 형식을 요구할 뿐 특정 형식을 지정하지 않습니다. 독일 BSI TR-03183-2는 JSON 또는 XML로 된 CycloneDX 1.6 이상과 SPDX 3.0.1 이상을 인정합니다.
CycloneDX와 SPDX 간에 변환할 수 있나요?
양방향으로 변환하는 도구가 있지만, 두 형식이 일대일로 대응하지 않으므로 변환 과정에서 세부 정보가 손실될 수 있습니다. 가능하다면 필요한 형식으로 직접 생성하세요.
CRACI는 CycloneDX와 SPDX 중 무엇으로 내보내나요?
둘 다 지원합니다. CRACI는 GitHub Actions 빌드가 실행되는 동안 SBOM을 기록하고, 전이적 종속성과 각 구성 요소의 선언된 라이선스를 포함해 CycloneDX 또는 SPDX로 내보냅니다.