ソフトウェア部品表「SBOM」のフォーマットとは? 国際標準「SPDX」の中身SBOM「3つのフォーマット」を比較【中編】

「SBOM」(Software Bill of Materials)を使うことで、セキュリティの向上を図ることができる。そのフォーマットの一つとして「SPDX」がある。これはどのようなフォーマットで、何ができるのか。

2024年01月25日 05時00分 公開
[Ravi DasTechTarget]

 ソフトウェア部品表である「SBOM」(Software Bill of Materials)は、ソフトウェアのライセンス管理や、脆弱(ぜいじゃく)性の特定に役立つ。SBOMには以下3つのフォーマットがある。

  • CycloneDX
  • Software Package Data Exchange(SPDX)
  • Software Identification Tag(SWID Tag、またはSWIG)

 これらは何が違うのか。SPDXの構成要素や、利用できるツールを紹介する。

SPDXとは? その構成要素とツールの中身

 SPDXはオープンソースソフトウェア(OSS)開発を手掛けるLinux Foundationが提供している。2021年、「ISO/IEC 5962:2021」として国際標準化された。企業はSPDXを利用することで、ソフトウェアコンポーネントのライセンス管理の他、脆弱性の特定や修正ができる。SPDXは大規模な組織を中心に採用が広がりつつある。

 SPDXの利用に当たっては、ソフトウェアを識別するための基準として以下が利用できる。

  • CPE(Common Platform Enumeration、共通プラットフォーム一覧)
  • SWHID(SoftWare Heritage persistent IDentifiers)
  • PURL(Package URL)

 SPDXでは「JSON」(JavaScript Object Notation)や「RDF」(Resource Description Framework)、「YAML」といったさまざまなデータ形式が利用できる。

 SPDXは以下の3つから構成される。

  • SPDX specification(SPDX仕様)
  • SPDX License List(SPDXライセンスリスト)
  • Tools(SPDXのツールとライブラリ)

 SPDXのツールには、商用のツールとオープンソースのツールがある。オープンソースの主なツールは以下の通りだ。

  • Build
    • ビルド(実行可能プログラムの作成)対象のメタデータやソースファイルを提供するプラグインや拡張機能を作成する
  • Audit Tool
    • システム監査技術を用いてソースコードのモジュールを分析する
  • License Diff
    • ソースコードモジュール間の差異を文書化する
  • Merge
    • ソフトウェア開発中に全てのソースコードのモジュールを1つの形式にまとめる

 後編は、SWID Tagを紹介する。

TechTarget発 世界のインサイト&ベストプラクティス

米国TechTargetの豊富な記事の中から、さまざまな業種や職種に関する動向やビジネスノウハウなどを厳選してお届けします。

ITmedia マーケティング新着記事

news061.png

高齢男性はレジ待ちが苦手、女性は待たないためにアプリを活用――アイリッジ調査
実店舗を持つ企業が「アプリでどのようなユーザー体験を提供すべきか」を考えるヒントが...

news193.jpg

IASがブランドセーフティーの計測を拡張 誤報に関するレポートを追加
IASは、ブランドセーフティーと適合性の計測ソリューションを拡張し、誤報とともに広告が...

news047.png

【Googleが公式見解を発表】中古ドメインを絶対に使ってはいけない理由とは?
Googleが中古ドメインの不正利用を禁止を公式に発表しました。その理由や今後の対応につ...