Core Java

The Post-Quantum Security Timeline for Java: JEP 496, JEP 527, and What Teams Should Do Now

If you manage Java services that handle sensitive data, 2026 is a year that deserves your attention. Not because quantum computers are breaking encryption today, but because the tools to protect against them are already shipping — and the compliance clock is officially ticking.

In this article we’ll break down exactly what delivered in JDK 24, what is bringing to JDK 27, why the NIST deadlines make this urgent, and what your team should realistically be doing right now.

The chart below gives you a clean picture of where each piece lands across JDK releases. Now, let’s walk through the full story — because understanding the why behind these JEPs matters just as much as knowing the what.

Java PQC Roadmap — JDK versions & key milestones (2021–2027)

1. Why Post-Quantum Cryptography Can’t Wait

Before diving into JEPs, it’s worth understanding the threat model. The concern isn’t that quantum computers are breaking RSA today — they’re not. The concern is a specific attack called “Harvest Now, Decrypt Later” (HNDL). An adversary could harvest encrypted data today, store it, and decrypt it once sufficiently powerful quantum computers become available. OpenJDK

That means traffic your APIs are exchanging right now could be sitting in an attacker’s archive, waiting. For financial records, healthcare data, or government communications — where data needs to stay confidential for a decade or more — this is a very real problem.

Furthermore, some analysts predict state actors may have quantum decryption capabilities as early as 2028. Keyfactor Whether or not that timeline proves accurate, NIST has already drawn a firm line: RSA, ECDSA, EdDSA, DH, and ECDH will be deprecated by 2030 and completely disallowed by 2035. AppViewX

Importantly, migration at enterprise scale takes far longer than most teams expect. If large enterprises require 12–15 years for complete PQC migration, and fault-tolerant quantum computers arrive in 2028–2030, enterprises beginning migration in 2025 face a 3–5-year window where significant portions of their infrastructure remain vulnerable. MDPI

That gap is exactly why Java has been moving quickly.

2. The Foundation: How We Got Here

Java’s PQC story didn’t begin with JEP 496. It started with JEP 452 in JDK 21 (September 2023), which introduced the KEM (Key Encapsulation Mechanism) API. Think of JEP 452 as laying the wiring for a new socket — before you could plug anything in, you needed the socket itself. That step is often overlooked, but it’s what made everything that followed possible.

From there, the JDK team had a stable, extensible foundation to build actual quantum-resistant algorithms on top of.

3. JEP 496: ML-KEM Arrives in JDK 24

JEP 496 enhances the security of Java applications by providing an implementation of the quantum-resistant Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM), standardized by NIST in FIPS 203. OpenJDK

In plain terms: ML-KEM is the algorithm that replaces the way two parties agree on a shared secret over an untrusted connection. Today, that job is done by RSA or Diffie-Hellman key exchange. Tomorrow, it needs to be done by something a quantum computer can’t crack. ML-KEM is that something.

JEP 496 adds ML-KEM implementations of the KeyPairGenerator, KEM, and KeyFactory APIs, with support for parameter sets ML-KEM-512, ML-KEM-768, and ML-KEM-1024 as standardized in FIPS 203. OpenJDK These three parameter sets offer increasing security strength at the cost of slightly lower performance — ML-KEM-768 is the current general-purpose recommendation for most enterprise workloads.

Alongside JEP 496, <a href=”https://openjdk.org/jeps/497″ target=”_blank”>JEP 497</a> added ML-DSA — the quantum-resistant digital signature algorithm. ML-DSA is a standard for verifying the authenticity and integrity of data. When code or documents are signed with ML-DSA, they remain trustworthy even against future quantum attackers. Baeldung

A Quick Note on What’s Not Yet In JDK 24

Here’s something important teams often miss: critically, TLS 1.3 integration is not yet complete in the standard JDK TLS provider (JSSE). The SunJSSE provider does not yet support ML-KEM as a named group for TLS key exchange by default. Java Code Geeks In other words, JDK 24 gives you the cryptographic primitives, but full TLS integration — the thing that protects your actual network traffic — is coming in JDK 27. That gap is precisely what JEP 527 fills.

4. The Algorithm Landscape at a Glance

The table below summarises the key post-quantum algorithms, their purpose, and their current status in the JDK:

AlgorithmStandardPurposeJDK StatusBest For
ML-KEM-768FIPS 203Key encapsulationJDK 24 (JEP 496)TLS key exchange, API secrets
ML-KEM-1024FIPS 203Key encapsulation (high-security)JDK 24 (JEP 496)Long-lived sensitive data
ML-DSA-65FIPS 204Digital signaturesJDK 24 (JEP 497)JWT signing, code signing
SLH-DSAFIPS 205Hash-based signaturesBouncyCastle 1.80+Firmware, artifact signing
X25519MLKEM768IETF DraftHybrid TLS key exchangeJDK 27 (JEP 527)TLS 1.3 connections

JEP 527: Hybrid TLS 1.3 in JDK 27

This is the JEP that will matter most to the majority of Java enterprise teams. JEP 527 enhances the security of Java applications by implementing hybrid key exchange algorithms for TLS 1.3, combining a quantum-resistant algorithm with a traditional algorithm to defend against future quantum computing attacks. Inside.java

JEP 527 was formally targeted to JDK 27 in February 2026 Inside.java, and JDK 27 is scheduled for GA release in September 2026 Jvm-weekly — meaning production-ready hybrid TLS in Java is only months away.

What “Hybrid” Actually Means

The term “hybrid” is key here. Rather than switching from traditional algorithms to quantum-resistant ones all at once (which introduces compatibility risks), the hybrid approach combines both. A hybrid key exchange scheme combines a quantum-resistant algorithm with a traditional algorithm, and is secure as long as one of the algorithms remains unbroken. OpenJDK

This is a very deliberate design decision: if ML-KEM turns out to have an undiscovered weakness (which is possible, since these algorithms are newer), the traditional ECDHE component still provides protection. Conversely, if ECDHE eventually falls to quantum attacks, ML-KEM covers you. You get the best of both worlds, with neither being a single point of failure.

JEP 527 delivers three hybrid schemes in the SunJSSE provider: X25519MLKEM768 (combining ECDHE with X25519 and ML-KEM-768), SecP256r1MLKEM768 (combining ECDHE using the secp256r1 curve with ML-KEM-768), and SecP384r1MLKEM1024 (combining ECDHE with the secp384r1 curve and ML-KEM-1024). OpenJDK

The Best Part: No Code Changes Required

One of the most compelling aspects of JEP 527 is that, for most applications, it just works. Applications that use the javax.net.ssl APIs will benefit from these improved algorithms by default, without any change to existing code. Inside.java JDK 27’s TLS stack will automatically prefer the hybrid scheme in new connections, as long as the server supports it.

Of course, for teams that want explicit control — for example, to enforce only quantum-resistant schemes in high-security environments — the SSLParameters::setNamedGroups API is available. But the default behaviour means upgrading the JDK is itself a meaningful security improvement.

5. The NIST Deprecation Timeline: What It Means in Practice

Let’s translate the regulatory picture into practical terms. Here’s how the timeline stacks up:

PQC compliance vs. Java JDK releases (2023–2035)

As you can see, Java is actually well ahead of the NIST curve — but the enterprise adoption gap between “JDK ships it” and “all production services are running it” is where the real risk lives.

The shift from SHA-1 to SHA-2 took over 12 years across industries, and that migration was far simpler than moving to post-quantum cryptography. Keyfactor PQC involves larger key sizes, new algorithm families, potential protocol compatibility issues, and library updates across your entire dependency graph. In short, teams that start now will be in good shape by 2030. Teams that wait until 2028 likely won’t.

6. What Teams on JDK 17 or 21 Can Do Today

If you’re running an LTS release — JDK 17 or JDK 21 — you don’t have to wait. For teams on JDK 17 or JDK 21, the practical path to PQC today runs through BouncyCastle 1.80+, which implements FIPS 203, 204, and 205 and integrates cleanly with the standard JCA KeyPairGenerator, Signature, and KeyGenerator APIs. Java Code Geeks

BouncyCastle is a well-established cryptographic library, and its recent releases are essentially a bridge that lets you adopt post-quantum algorithms years before your JDK upgrade cycle would otherwise allow it.

7. A Practical Migration Checklist for Enterprise Teams

Migrating to post-quantum cryptography isn’t a single task — it’s a multi-phase program. Here’s how to think about it:

Phase 1 — Audit (Do This Now)

The first step is simply knowing what you have. Identify every place in your codebase and infrastructure where asymmetric cryptography is used. Look for RSA key exchange in TLS configurations, ECDSA signatures in JWT handling, any hardcoded algorithm names like "RSA" or "EC" in your Java security code. Tools like quantum cryptography NIST’s Migration to PQC Project offer guidance on discovery tooling.

Phase 2 — Build Cryptographic Agility

Rather than hardcoding algorithm choices, refactor your security layer so that the algorithm selection is configurable. The key lesson is to build algorithm agility now, before you are forced to make breaking changes under a compliance deadline. Java Code Geeks A well-designed crypto-agile architecture can swap from RSA to ML-KEM in a configuration change rather than a code rewrite.

Phase 3 — Adopt ML-DSA for Signing Now

Digital signature migration is less urgent than TLS key exchange (signatures don’t suffer from the HNDL threat in the same way), but it’s also simpler to start with. JDK 24’s ML-DSA implementation is production-ready, so there’s no reason to wait on signing pipelines, JWT issuance, or code artifact signing.

Phase 4 — Plan Your JDK 27 Upgrade Path

Since JEP 527 brings hybrid TLS with zero code changes required, the most important planning question becomes: when can we upgrade to JDK 27? Start that conversation with your platform and ops teams now. JDK 27 is scheduled for GA in September 2026 Jvm-weekly, so a Q4 2026 or Q1 2027 upgrade window is realistic for most teams.

Phase 5 — Test Hybrid TLS Today with JDK 27 Early Access

You don’t have to wait for GA. Early access builds of JDK 27 beginning with build 6 already include JEP 527. Inside.java Setting up a test environment on the EA build now means you’ll have months of operational experience before GA ships, and you’ll catch any compatibility issues with your load balancers, API gateways, or third-party TLS libraries well in advance.

8. The Bigger Picture: Algorithm Agility as a First-Class Concern

One subtle but important shift in mindset that PQC migration requires is treating cryptographic agility as a design principle, not an afterthought. The PQC standards are still relatively new. The IETF specifications for hybrid key exchange in TLS 1.3 are still in the draft stage, and if the specifications change materially when they become RFCs, the JDK’s implementation will be adjusted accordingly. OpenJDK

This means even ML-KEM and ML-DSA, mature as they are today, may have parameter recommendations evolve over time. Systems that hardcode "ML-KEM-768" the same way they once hardcoded "RSA/2048" will face the same painful refactoring cycle all over again. The better pattern is to treat algorithm selection as configuration — something that can change without a code deployment.

9. What We’ve Learned

Looking across the full landscape of Java’s post-quantum journey, a clear picture emerges. Java has been laying groundwork since JDK 21 with the KEM API, shipped the first production-ready PQC algorithms (ML-KEM and ML-DSA) in JDK 24, and is on track to deliver native hybrid TLS 1.3 in JDK 27 by September 2026. Meanwhile, NIST has set firm 2030 and 2035 deadlines for deprecating and disallowing classical asymmetric algorithms like RSA and ECDSA.

Enterprise migration timelines for large organisations typically run 12–15 years, which means teams that haven’t already started their cryptographic inventory and agility work are already behind the curve. The most impactful action most Java teams can take today is not to wait for JDK 27 — but to begin the audit, adopt BouncyCastle 1.80+ or JDK 24 for algorithm exploration, build cryptographic agility into their security layer, and plan their JDK 27 upgrade path now. The Java platform has done its job. The next step belongs to the teams running it.

Eleftheria Drosopoulou

Eleftheria is an Experienced Business Analyst with a robust background in the computer software industry. Proficient in Computer Software Training, Digital Marketing, HTML Scripting, and Microsoft Office, they bring a wealth of technical skills to the table. Additionally, she has a love for writing articles on various tech subjects, showcasing a talent for translating complex concepts into accessible content.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Oldest
Newest Most Voted
Back to top button