Teknik Standartlar

SPDX ve CycloneDX Arasındaki Farklar: Hangi SBOM Standardı Seçilmeli?

Yazılım Malzeme Listesi (SBOM) standartları olan SPDX ve CycloneDX'in mimari farkları, kullanım senaryoları ve regülasyonlara (CRA) uygunluk analizi.
10 dk okuma
Yazar: Mert Merkit

İçindekiler

  • Yazı içindeki başlıklardan otomatik oluşturulabilir...
Yazılım Malzeme Listesi (SBOM) üretiminde karşınıza çıkacak ilk teknik karar, hangi standardı kullanacağınızdır. Tıpkı elektronik tablolar için ".xlsx" ve ".csv" arasında seçim yapmak gibi, SBOM dünyasında da iki büyük standart rekabet etmektedir: **SPDX** ve **CycloneDX**.

Her iki format da uluslararası standart olarak (ISO ve ECMA) kabul görmüş, Avrupa Birliği Cyber Resilience Act (CRA) ve ABD (CISA) direktiflerinin yasal gereksinimlerini karşılayan sağlam yapılardır. Ancak doğuş felsefeleri ve mimari odakları farklıdır.

SPDX (Software Package Data Exchange) Nedir?

Linux Foundation öncülüğünde 2010 yılında başlatılan SPDX, SBOM kavramının henüz "güvenlik" ile anılmadığı dönemlerde, tamamen **lisans uyumluluğu** (License Compliance) sorunlarını çözmek için ortaya çıkmıştır. (Örneğin, şirketinizin ticari kapalı kaynak koduna yanlışlıkla bulaşan bir GPL lisanslı kütüphanenin, tüm ürün kodunuzu açık kaynak yapmaya zorlaması riski).

**Öne Çıkan Özellikleri:**
- **Derin Lisans Envanteri:** Dünyadaki en geniş ve standartlaştırılmış açık kaynak lisans sözlüğüne (SPDX License List) sahiptir.
- **Dosya Seviyesinde Takip:** Sadece paketin/kütüphanenin kendisini değil, paketin içindeki tekil dosyaların bile telif haklarını ayrı ayrı haritalayabilir.
- **Uluslararası Tanınırlık:** ISO/IEC 5962:2021 olarak resmi ISO standardıdır. Geleneksel yazılım, gömülü sistemler ve otomotiv sektörlerinde çok güçlü bir benimsenmesi vardır.
- **Modülerlik (SPDX 3.0):** 3.0 sürümü ile birlikte mimarisini "Profil" tabanlı hale getirerek (Security Profile, AI Profile vb.) sadece lisans değil, siber güvenlik ihtiyaçlarına da derinlemesine cevap verecek şekilde modernize edilmiştir.

CycloneDX Nedir?

OWASP (Open Worldwide Application Security Project) tarafından geliştirilen ve sonrasında ECMA-424 standardı haline gelen CycloneDX, nispeten daha gençtir. Temel felsefesi **siber güvenlik ve tedarik zinciri zafiyetleridir**. Lisanslardan ziyade, "Sistemimde hacklenecek ne var?" sorusuna yanıt vermek için hafif ve amaca yönelik tasarlanmıştır.

**Öne Çıkan Özellikleri:**
- **Güvenlik Odaklı (Security-First):** Doğrudan güvenlik uzmanları tarafından tasarlandığı için zafiyet tarama araçlarıyla (SCA) entegrasyonu kusursuzdur.
- **Kapsayıcılık (X-BOM):** Sadece yazılım (SBOM) değil; donanım bileşenleri (HBOM), yapay zeka/makine öğrenmesi modelleri (ML-BOM), servis odaklı operasyonlar (OBOM) ve kriptografik varlıklar (CBOM) için de standart tanımlar içerir.
- **Yerleşik VEX Desteği:** CycloneDX, bir bileşendeki zafiyetin sizin sisteminizi etkileyip etkilemediğini belirten VEX (Vulnerability Exploitability eXchange) raporlarını doğrudan kendi şeması içinde natif olarak destekler.

Mimari ve Kullanım Karşılaştırması


#

1. Dosya Formatları

- **SPDX:** Tag:Value (geleneksel), JSON, YAML, RDF, XML formatlarını destekler. Genellikle JSON yapısı yaygındır ancak tag-value formatı hala çok kullanılmaktadır.
- **CycloneDX:** XML, JSON ve Protocol Buffers (Protobuf) kullanır. JSON ve XML şemaları çok katı (strict) tanımlanmıştır, bu da araçların ayrıştırma (parsing) yapmasını hızlandırır.

#

2. Bağımlılık Ağacı (Dependency Graph) Yönetimi

Her iki format da doğrudan ve geçişli (transitive) bağımlılıkları destekler. Ancak CycloneDX, zafiyetleri grafik üzerinde bulmayı kolaylaştıran nesne yönelimli (object-model) ve referans tabanlı katı bir hiyerarşiye sahiptir. SPDX ise tarihsel olarak bağımlılıkları daha çok "ilişkiler" (Relationships) kavramı üzerinden, esnek ve kompleks ağlar şeklinde tanımlar.

#

3. Kullanım Senaryosu: SaaS ve Bulut Tabanlı Sistemler

Eğer bir B2B SaaS platformu geliştiriyorsanız ve sürekli CI/CD boru hattından günde onlarca kez çıktı alıyorsanız, zafiyet yönetimi ve bulut tabanlı API mimarileriyle doğrudan entegre olan **CycloneDX** genellikle daha çevik bir çözüm sunar.

#

4. Kullanım Senaryosu: Gömülü Sistemler ve Üreticiler

Eğer otomotiv, telekomünikasyon veya IoT cihazları için gömülü C/C++ yazılımları geliştiriyorsanız, cihazda çalışan yüzlerce farklı kaynaktan gelmiş açık kaynak kodun lisans ve mülkiyet haklarını ispat etmeniz gerekir. Bu senaryolarda dosya bazlı tarama gücüyle **SPDX** açık ara sektör lideridir.

Hangisini Seçmelisiniz?

Karar verirken "Hangisi daha iyi?" sorusundan ziyade, "Bizim şirketimizin ana ağrısı nedir?" sorusu sorulmalıdır.

1. **Önceliğiniz Lisans Uyumluluğu ve Açık Kaynak Yönetimi ise:** SPDX.
2. **Önceliğiniz Zafiyet Yönetimi, VEX, Yapay Zeka (ML-BOM) ve SaaS ise:** CycloneDX.

> [!TIP]
> Çoğu modern açık kaynaklı SBOM üretim aracı (örneğin Anchore Syft veya Aqua Trivy) projenizi tararken sadece bir parametre değişikliğiyle hem SPDX hem de CycloneDX çıktısı üretebilir (`syft dir:. -o spdx-json`). Dolayısıyla yanlış formatı seçme riski teknik olarak düşüktür; her an diğerine geçiş yapabilirsiniz.

TEVSİK'in Standardizasyon Yaklaşımı

TEVSİK olarak şirketlerin Siber Güvenlik Kanunu ve Cyber Resilience Act (CRA) hazırlıklarında, ürün portföyüne ve teknoloji yığınına (Tech-Stack) en uygun SBOM formatının belirlenmesini sağlıyoruz. Yazılımınızın CI/CD süreçlerine entegre edilecek güvenlik adımlarında her iki standardın da yasal gerekliliklere (CISA Minimum Elements) uyumlu olarak çalışması için teknik konfigürasyon altyapınızı hazırlıyoruz.

Hizmet Sınırı

Bu içerik genel teknik bilgilendirme amacı taşır; hukuk görüşü, resmî uygunluk değerlendirmesi veya sertifikasyon hizmeti değildir. TEVSİK; teknik envanter, süreç, veri, kanıt ve hazırlık yapılanması sunar.

Sıkça Sorulan Sorular

SPDX ve CycloneDX nedir?

Her ikisi de Yazılım Malzeme Listesi (SBOM) oluşturmak için kullanılan uluslararası makine okunabilir standartlardır. Yazılımınızdaki bileşenleri, sürümleri ve bağımlılıkları tanımlamak için ortak bir dil (XML, JSON vb.) sunarlar.

SPDX (Software Package Data Exchange) hangi amaçla doğmuştur?

Linux Foundation tarafından geliştirilen SPDX (ISO/IEC 5962), başlangıçta açık kaynak lisans uyumluluğunu (GPL, MIT vb.) yönetmek için yaratılmıştır. Zamanla güvenlik ve bağımlılık yönetimi yetenekleri eklenerek tam bir SBOM standardına dönüşmüştür.

CycloneDX'in temel odak noktası nedir?

OWASP (Open Worldwide Application Security Project) çatısı altında doğan CycloneDX (ECMA-424), tamamen siber güvenlik ve tedarik zinciri analizi odaklıdır. Zafiyet yönetimi (VEX) entegrasyonu ve hafif mimarisi ile öne çıkar.

Cyber Resilience Act (CRA) hangisini şart koşuyor?

Avrupa Birliği CRA tüzüğü veya ABD CISA direktifleri tek bir markayı dayatmaz. 'Uluslararası kabul görmüş, makine tarafından okunabilir bir standart' talep eder. Hem SPDX hem de CycloneDX bu yasal şartları (CISA Minimum Elements) tam olarak karşılar.

Aynı projede hem SPDX hem CycloneDX kullanılabilir mi?

Teknik olarak mümkündür ve birçok modern SBOM üretim aracı (Örn. Syft, Trivy) tek komutla her iki formatta da çıktı verebilir. Ancak şirketin merkezi bağımlılık yönetimi (Dependency Track) altyapısı için birinde karar kılmak daha verimlidir.

Resmî Kaynaklar

SPDX Specification (ISO/IEC 5962:2021)
Linux Foundation / ISO • Erişim: 5 Ağustos 2026
Kaynağa Git
CycloneDX BOM Standard
OWASP • Erişim: 5 Ağustos 2026
Kaynağa Git
Hizmet Sınırı: Bu içerik genel teknik bilgilendirme amacı taşır; hukuk görüşü, resmî uygunluk değerlendirmesi veya sertifikasyon hizmeti değildir. TEVSİK; teknik envanter, süreç, veri, kanıt ve hazırlık yapılanması sunar.

Veri Güvenliği

Tüm form ve iletişimler TLS ile şifrelenmektedir. Sunucularımız Vercel Edge ağında korunur.

Altyapı Standartları

Neon (PostgreSQL) veritabanı ve Resend iletişim altyapısı kullanılmaktadır.

Spam Koruması

Kullanıcı deneyimini bozmamak adına Captcha yerine gizli Honeypot mekanizması aktiftir.