Microsoft rewrites SymCrypt in Rust to modernize cryptographic security

Microsoft is modernizing its core cryptographic library, SymCrypt, in Rust to boost memory safety, enable formal verification, and combat side-channel attacks.

Microsoft is undertaking a comprehensive rewrite of its SymCrypt cryptographic library in Rust, aiming to drastically enhance security by leveraging the memory safety guarantees that Rust provides. In an industry where legacy C code exposes systems to vulnerabilities such as crashes, data corruption, and side-channel attacks, this shift signifies a substantive technological evolution. SymCrypt, critical for Windows, Azure Linux, and Xbox, supports a broad range of cryptographic standards, including AES-GCM, SHA, ECDSA, as well as emergent post-quantum algorithms like ML-KEM and ML-DSA.

The initiative integrates sophisticated formal verification techniques to ensure implementations align precisely with algorithmic intent, essentially eliminating deviations that could foster exploitable vulnerabilities. By employing the Rust ecosystem’s strong ownership and type guarantees, Microsoft is adopting tools such as Aeneas—developed in collaboration with Inria and linking with the Lean proof assistant—to allow code and mathematical proofs to coexist and evolve in tandem. This approach moves away from the traditional challenges faced in C, where pointer safety and overlapping memory could lead to subtle, costly bugs.

Maintaining backward compatibility is a top priority, as many SymCrypt users still rely on direct C toolchains and custom builds. To bridge this divide, Microsoft is utilizing Eurydice, a Rust-to-C compiler, producing C code from formally verified Rust that can be incorporated into existing workflows. This strategy empowers gradual adoption: users can continue with C interfaces while benefitting from new rigor and correctness below the surface, and over time, transition to pure Rust consumption or precompiled binaries.

Beyond code correctness, Microsoft is confronting persistent hardware-level threats with enhancements to Revizor. This tool models and fuzzes microarchitectural leakages, uncovering timing and speculative execution vulnerabilities in compiled binaries which often escape scrutiny at the source code level. The overhaul begins with a verified Rust implementation of ML-KEM, already available in SymCrypt’s preview branch, with plans to support direct Rust usage and to verify further algorithms as the project unfolds.

This modernization aligns with Microsoft’s Secure Future Initiative, representing a pivotal leap in creating industrial-grade, FIPS-certified cryptographic solutions. With ongoing benchmarking to preserve performance and eager solicitation of community feedback, Microsoft anticipates this Rust-based evolution will set a new standard for cryptographic assurance across its ecosystem.

81

Impact Score

Google expands Gemini for Science

Google is rolling out Gemini for Science, a set of experimental tools aimed at compressing scientific work that would typically take months or years into days. The effort combines multi-agent research systems, computational discovery tools, literature analysis, and database-connected life science assistants.

Europe weighs technology sovereignty push amid internal debate

Europe is preparing a new policy push to reduce reliance on major technology platforms, but internal disagreements are shaping the scope and pace of the effort. The Artificial Intelligence Development Act is due to be unveiled on June 3 after repeated delays.

EU Artificial Intelligence Act omnibus deal delays high-risk rules

A provisional EU agreement would push back key high-risk Artificial Intelligence Act deadlines while keeping major transparency duties on track for 2 August 2026. The deal also adds a new ban on non-consensual intimate imagery and child sexual abuse material generated by Artificial Intelligence systems.

Contact Us

Got questions? Use the form to contact us.

Contact Form

Clicking next sends a verification code to your email. After verifying, you can enter your message.