Skip to content

Change Proposal: Expand Options for Data License in SPDX Documents #8

@Pizza-Ria

Description

@Pizza-Ria

Owners
• Ria Farrell Schalnat (Pizza-Ria) – Open Source Program Manager for Hewlett Packard Enterprise and Chris Hibbard – Open Source Security Architect

Issue Statement
SPDX Version 2.3 Section 6.2 contains a Data License Field (see also, associated file under the spdx-3-model) as part of the SPDX document creation information section which requires that any SPDX-Metadata be subject to the terms of the Creative Commons CC0 1.0 Universal license. The stated intent of this license choice is to alleviate concerns “that content (the data or database) in an SPDX document is subject to any form [emphasis added] of intellectual property right that could restrict the re-use of the information or the creation of another SPDX document for the same project(s).” See also, Legal Team/Decisions/SPDX-Metadata-License - (January 18, 2012). The explanation continues that “individuals can still contract with each other to restrict release of specific collections of SPDX documents (which map to software bill of materials) and the identification of the supplier of SPDX documents.”
• The decision surrounding the license for the SPDX metadata, while positively intended to foster communication and collaboration, was made prior to the advent of SBOM requirements in various jurisdictions including the those in the United States stemming from Executive Order 14028 (May 12, 2021). These requirements will eventually cover the entire software supply chain for a software product sold to the federal government. This may involve many tiers of both open source and proprietary software including code distributions subject to confidentiality or other contractual restrictions. Sharing such SBOMs under a license that effectively waives any copyright and database rights carries the potential for, at least, confusion and misinterpretation regarding the ability to share such documents especially if contradictory provisions are attached in other fields such as comments.
• While Hewlett Packard Enterprise (HPE) recognizes that the original choice of license satisfies many use cases for SPDX documents that may be freely shared throughout the supply chain, we are concerned that these clauses contradict one another where information outlined in an SPDX document (e.g., SBOM) may be subject to confidentiality or trade secrecy (either inherently or via additional contractual restrictions) especially since the CC0 license may be considered “public domain” (see, “CC0 enables scientists, educators, artists and other creators and owners of copyright- or database-protected content to waive those interests in their works and thereby place them as completely as possible in the public domain. [emphasis added]”).
• HPE is particularly concerned that utilizers of the SPDX document may not be aware of such confidentiality/trade-secrecy/contractual obligations and, either directly or via machine automation, not recognize the obligations associated with such documents. The consequence is that a recipient may inadvertently share such SBOMs under the assumption that the CC0 license permits such sharing. Adding commentary or additional metadata to the SPDX document runs the risk of further confusing the issue or having such additional restrictions overlooked.
• Entering an alternative identifier for the Data License field results in SPDX validators failing which raises questions from recipients as to the efficacy of the SPDX document.
• Thus, use of the SPDX standard for communicating SBOMs either runs a risk of disclosure or creates friction/manual work in explaining why our SBOMs do not pass validators if a different license is chosen. Furthermore, we do not believe this situation is unique to HPE and could have a prohibitive effect regarding adoption of SPDX as the chosen SBOM standard in the industry.

Proposed Solution
• Update the documentation and validators to accept alternative entries to the Data License field in the documentation metadata including licenses already recognized by SPDX
• (https://spdx.org/licenses/),
• “none”/”no assertion” as defined in https://spdx.github.io/spdx-spec/v2.3/file-information/#85-concluded-license-field, and
• other licensing information (e.g., EULAs or NDAs) as recognized by “license-ref-[idstring]” in https://spdx.github.io/spdx-spec/v2.3/other-licensing-information-detected/.

Describe the benefit to SPDX and its ecosystem
• Requirements for SBOMs are a feature in US EO14028, NTIAs SBOM Minimum Data Elements, CISAs standard form for SBOMs (Mar 14 2023), OMB M-22-18, SSDFv1.1/ SP800-218, SBOM requirements in other jurisdictions and other private/public measures. These requirements go beyond the simple standards of attribution documents practiced in the open source world by requiring identification of vendors, component relationships and other metadata associated with both open source and proprietary software components in products. Some of this information will be subject to contractual restrictions (e.g. non-disclosure agreements, EULAs, etc.) to protect information that needs to remain confidential/secret outside the mere identification of the open source package/license/copyrights.
• The proposed change will allow adopters of the SPDX format to prepare SPDX documents that correctly categorize such restrictions where they apply (SPDX recognized such special cases may exist in its 6.2 document) and honor obligations/restrictions received from their upstream vendors while clearly communicating such restrictions downstream to avoid accidental leaks/confusion.
• While HPE supports SPDX’s mission to promote open standards for communicating software bill of material information, there are certain circumstances where this is not desirable and the inability to designate an alternative license will damage credibility/trust in the provision of SPDX documents downstream. Inability for an SPDX validator to accept alternative license designations will also create friction in automation for organizations as they will not be able to seamlessly ingest such documents and will need to engage in additional tooling to automate inquiries or even manual effort to resolve such issues.

Scope of impact
This would require any update to https://github.com/spdx/spdx-3-model, for the section aligning with #62-data-license-field in the SPDXv2.3, as well as SPDX validation mechanisms which currently fail if an identifier other than CC0 is provided for the field “datalicense”.

Additional information
• This change proposal reopens spdx/spdx-spec#159 for discussion and acceptance.
• This change proposal also reiterates the concerns raised by Mark Atwood in Issue #850 (“I would like to reopen this issue. Amazon has severe reservations about being required to tag the SBOMs of our internal services and delivered products as CC0, even if there is also an NDA in place. We especially don't want to have "you put a CC0 on it" when someone else publishes something that was provided to them by someone breaking their NDA. The other SBOM standards do not require a CC0 or other license tag.”).

Metadata

Metadata

Assignees

No one assigned

    Labels

    DECIDEDExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions