IN SHORT
SPDX 3
The only accepted SBOM format
1 per package
SHA-512
2027
September 2026
First announcement
Microsoft says WHCP driver submissions will need an SBOM and a VEX statement. Replaced by the October post.
21 October 2026
Requirements revised
Microsoft pins the format to SPDX 3.0.1 and ties the scope to the 2027 Windows release. VEX is no longer part of the submission.
Early 2027
Microsoft SBOM tool in the WDK
Microsoft's generator ships in the Windows Driver Kit. Other tools are still allowed.
2027 Windows release (RTM)
Enforcement begins
HLK and HDC start checking applicable submissions. Microsoft will publish the final date.
Developers
Teams that build the driver package and its binaries, including code from silicon vendors and other suppliers.
Signers
Partners who get the driver signed through WHCP, whether through HLK certification or attestation.
Submitters
Anyone who uploads driver packages to the Hardware Dev Center on a company's behalf.
Note: Older targets stay out of scope. A driver for Windows 25H2, 24H2 or Windows 10 doesn't need an SBOM, even if you submit it after enforcement begins.
☑️ No package manager, so dependencies have to come from the build itself
☑️ Vendored and modified source with no version metadata
☑️ Static libraries that leave no trace in the final binary's imports
☑️ A SHA-512 hash for every file actually shipped
☑️ Licenses stated as SPDX identifiers, not free text
☑️ A separate SBOM for each INF in a multi-driver submission
1 per INF
One SBOM for each driver package, never one for the whole submission
.spdx.json
HLK
Blocks packaging if the SBOM is missing
HDC
Rejects signing if it's missing or invalid
Windows client or server release in 2027 and later
The requirement is written for these releases
Windows 11 25H2, 24H2 and Windows 10
Older targets aren't pulled in, even if submitted after enforcement starts
Multi-driver submission
Each driver package needs its own SBOM
WORTH KNOWING
BEYOND THE MINIMUM
Depth
✓ Full transitive dependency tree
Cadence
✓ Regenerated on every build
Vulnerability data
✓ Monitored for new CVEs, with VEX
Reuse
✓ The same SBOM serves CRA technical documentation
01
SPDX 3 from the build
lynkctl reads your MSBuild and WDK projects directly, so vendored code and static libraries end up in the SBOM.
02
SBOM per package
lynkctl splits output per INF and names it <inf_name>.spdx.json to comply with WHCP requirements.
03
Air-Gapped
lynkctl runs fully offline, so build machines never need outside access to produce the SBOM.
04
Separate VEX
The platform watches each component for new CVEs and keeps VEX separate from the SBOM, as Microsoft requires.
Do Windows drivers need an SBOM?
Yes, if the driver targets the 2027 Windows client or server release or later. Every applicable package you submit through HDC for WHCP signing needs a valid SPDX 3 SBOM.















