driver signatures

Winsage
September 5, 2025
Developers can now access enhanced tools and sample code for Rust in Windows driver development, although achieving production readiness remains challenging. Rust crates are available for creating Windows 11 drivers using frameworks like WDM, KMDF, and UMDF, but developers must still use unsafe blocks when interacting with the OS, which limits Rust's safety advantages. The WDF team is working on safe Rust abstractions to reduce unsafe code reliance, and there are efforts to integrate Rust into the Windows kernel, with some progress noted in the Windows 11 24H2 release. A cargo extension called cargo-wdk is being developed to aid Rust driver development, with future updates planned for ARM64 support and automated processes. The current state of the project is not recommended for production use, as indicated by its GitHub repository, but developers can experiment with it while following Microsoft driver signature procedures. Analysis using GitHub's CodeQL tool, which now supports Rust, is required for this process, although the latest validated version for the Windows Hardware Compatibility Program is 2.21.4. Microsoft Research announced plans to use Rust for memory safety in 2019, and in 2022, Azure CTO Mark Russinovich advocated for moving away from C/C++ in favor of Rust for new projects. The deployment of a Windows driver written in Rust is becoming increasingly feasible.
Winsage
September 1, 2025
Windows 11 requires drivers to be digitally signed before they can be loaded, which enhances security by preventing malware but restricts user autonomy. This requirement is part of Microsoft's Code Integrity security feature, which became mandatory with Windows 10 version 1607. Drivers must possess a valid digital signature from a recognized authority, and Windows will refuse to load any driver lacking this signature. The signing process can be cumbersome and expensive, favoring larger companies. This enforcement raises concerns about consumer freedom, as users may feel they do not fully own their hardware and face challenges in developing custom drivers. In contrast, Linux allows users greater control over what runs in the kernel, though it presents its own security challenges.
Search