Java 27 couples post-quantum TLS 1.3 to two newly flipped JVM defaults
JEP 527's hybrid key exchange landed as a stable feature on September 15, and the same JDK makes G1 the collector on small machines and cuts every object header to 64 bits. Serial is still one flag away.
The Engineer · Build desk

What happened
- Java 27 was released on September 15, 2026, on the six-month cadence, delivering nine JEPs of which four are final, four are previews and one stays in incubator.
- G1 becomes the default collector in all environments, replacing the Serial fallback that applied to machines with one CPU or less than 1,792 MB of RAM.
- Oracle added Jipher 20 to the Java Verified Portfolio, wrapping a FIPS 140-3 validated OpenSSL module with support for the ML-KEM and ML-DSA algorithms.
Why it matters
- Who has to decide decision A team that wants the TLS 1.3 hybrid exchange has to schedule a runtime performance test to get it, because the same JVM upgrade changes object header layout and the collector selection.
- What it limits constraint The deployments whose collector changed are the smallest ones, so anyone running under 1,792 MB has to decide per service whether to keep Serial explicitly or accept G1's profile.
- What doesn't add up contradiction Both publishers document the header and collector defaults precisely, while whether hybrid key exchange is on by default goes undocumented, so an operator cannot record the upgrade as post-quantum coverage without checking the handshake.
- What's now possible capability Shops bound to FIPS validation can now reach ML-KEM and ML-DSA through standard Java APIs instead of maintaining a native crypto path.
Next story · Security · Oct 6
Post-quantum-ready SSH runs on 6% of the hospital IoMT devices Forescout analyzedConfirmed2 publishers
The important word in JEP 527 is hybrid. The dev.to summary of Oracle's announcement says the release combines traditional algorithms with post-quantum methods to protect data against adversaries who capture encrypted traffic today and decrypt it once quantum hardware exists [3][1]. JetBrains lists the feature among Java 27's stable ones and gives the same threat model, "harvest now, decrypt later" [2]. That protection only reaches connections where the far end also selects a hybrid group. Upgrading the JDK changes what your Java process offers in a handshake; it does not change what a load balancer, an appliance, or a partner's TLS terminator accepts. Neither post says which hybrid groups JDK 27 supports, or whether they are offered by default.
JEP 534 makes compact object headers the default layout in HotSpot, cutting headers from 96 bits to 64 bits on 64-bit architectures, which JetBrains ties to smaller heaps, higher deployment density and better data locality [5]. That is four bytes back per object [16]. The path there was three releases: experimental in Java 24, opt-in in Java 25, default in Java 27 [10].
The G1 change is the one to test first. G1 has been the default collector since Java 9, with an exception: machines with one CPU or under 1,792 MB of RAM fell back to Serial, and Java 27 removes that fallback [6]. JetBrains credits earlier throughput work, including JEP 522 in Java 26, for making G1 good enough to replace Serial [12]. The escape hatch is one line: `-XX:+UseSerialGC` [18]. So the small containers in your fleet are the ones whose collector changed.
Source compatibility stays where it was. In IntelliJ IDEA the non-preview setting for this release is labelled "27 - No new language features", while the preview setting reads "27 (Preview) - Primitive types in patterns, instanceof, and switch (5th preview)" [19]. The dev.to piece presents JEP 532 as making the language more expressive for data-heavy code [7], and using it still requires the preview level, which the IDE highlights at every call site [20].
The rest of the security bundle is thinner than the headline feature. JEP 536 adds in-process redaction to Java Flight Recorder so regulated or personal data can be masked during diagnostics [13], and JEP 538 reaches a third preview for handling cryptographic objects in PEM encodings [14], so certificate-management code that wants it runs behind a preview flag. The Vector API enters its twelfth incubator round [9]. On the compliance side, Oracle Jipher 20 joined the Java Verified Portfolio wrapping a FIPS 140-3 validated OpenSSL module with ML-KEM and ML-DSA support [15], and the dev.to write-up says Oracle Cloud Infrastructure is the first provider to support JDK 27, with its management and security features at no extra cost [21].
What to watch
- Whether the JDK 27 security documentation names the hybrid groups and states whether a Java client offers them by default.
- G1 against Serial measurements on containers under 1,792 MB, since that is where the collector default actually changed.
- Whether JEP 538's PEM handling goes final in Java 28 or takes a fourth preview round.
Clarity's read
What the record supports and how the coverage leans. The claims behind it follow.
Reality
- Evidence74
- Adoption33
- Hype gap+50
- Incentives60
- Confidence72
Perspective Coverage
4 publishers- Builder
- Builder 51%
- Operator
- Operator 36%
- Investor
- Investor 13%
Claim ledger
Ranked by verification strength, evidence, and original report placement.
- [1]
JEP 527 introduces post-quantum hybrid key exchange for TLS 1.3.
- [2]
JetBrains lists hybrid key exchange for TLS 1.3 among Java 27's new stable features, describing it as helping guard against "harvest now, decrypt later" attacks, where an adversary records encrypted traffic today with the intention of decrypting it once quantum computers are powerful enough.
- [3]
The dev.to summary of Oracle's announcement says the mechanism protects sensitive data from threats where adversaries capture encrypted traffic today to decrypt it later, and that by combining traditional algorithms with post-quantum methods developers can secure communications between APIs, cloud platforms and distributed systems.
- [4]
Java 27 was released on September 15, 2026, in line with the six-month release cadence.
- [5]
JEP 534 makes compact object headers the default object header layout in the HotSpot JVM, reducing object headers from 96 bits to 64 bits on 64-bit architectures, which reduces heap size, improves deployment density and increases data locality.
- [6]
G1 has been the default garbage collector since Java 9 except on machines with only one CPU or less than 1,792 MB of RAM, which fell back to Serial GC; Java 27 makes G1 the default for HotSpot in all environments, replacing Serial.
- [7]
The dev.to summary says JEP 532 allows the use of primitive types in patterns, instanceof checks and switch statements, making the language more expressive and reducing the likelihood of coding errors in data-heavy applications.
- [8]
Java 27 delivers nine JEPs, four of which are final; four preview features continue to mature and one JEP continues as an incubator feature.
- [9]
JEP 537 brings the Vector API into its twelfth incubator stage, compiling vector computations at runtime to hardware instructions.
- [10]
Compact object headers were introduced as an experimental feature in Java 24, became opt-in in Java 25, and are the default in Java 27.
- [11]
JEP 531 introduces lazy constants in a third preview, and JEP 533 provides a seventh preview of structured concurrency.
- [12]
Improvements to G1, including JEP 522 (G1 GC: Improve Throughput by Reducing Synchronization) in Java 26, mean its performance is now sufficient to replace Serial.
- [13]
JEP 536 provides in-process data redaction for Java Flight Recorder, so the system can automatically mask regulated or personal data during diagnostics.
- [14]
JEP 538 enters its third preview and covers the handling of cryptographic objects using PEM encodings, improving interoperability with standard security tools.
- [15]
Oracle Jipher 20 is now part of the Java Verified Portfolio; it wraps a FIPS 140-3 validated OpenSSL module for Java applications and adds support for the ML-KEM and ML-DSA post-quantum algorithms.
- [16]
The header reduction is 32 bits, or four bytes, per object, a one-third cut.
- [17]
Neither the JetBrains post nor the dev.to summary names the hybrid named groups used by JEP 527, or states whether hybrid key exchange is offered by default in a TLS 1.3 handshake.
- [18]
For applications in constrained environments that perform better with Serial, Serial GC can be explicitly enabled with the option -XX:+UseSerialGC.
- [19]
In IntelliJ IDEA's Project Structure, the language level for this release is set as "27 - No new language features", and the preview level as "27 (Preview) - Primitive types in patterns, instanceof, and switch (5th preview)".
- [20]
IntelliJ IDEA supports Java 27 from day one; using preview features requires setting the language level to 27 (Preview), and the IDE highlights preview feature usage in the editor.
- [21]
The dev.to summary says Oracle Cloud Infrastructure is the first provider to support the new JDK 27 release, with users gaining access to advanced management services and security features without additional costs.
Sources
4 independent publishers whose own reporting we read for this story.
- blog.jetbrains.comJava 27 in IntelliJ IDEA
1 article · September 15, 2026
- dev.toOracle Java 27 Release Updates Post-Quantum Cryptography
3 articles · September 16, 2026
- infoq.comJava 27 Delivers Post-Quantum Cryptography, Future Language Innovation, Helidon 27, JavaFX 27
1 article · September 16, 2026
- phoronix.comJava 27 Reaches GA With The G1 Garbage Collector By Default Everywhere
1 article · September 15, 2026
Topics and entities
Topics
- JVM garbage collection
- JDK Release Cadence
- TLS
- Post-Quantum Cryptography
- JVM memory footprint
Entities
- JetBrains
- Project Valhalla
- OpenJDK
- TLS 1.3
- HotSpot
- Java
- Oracle
- IntelliJ IDEA
- JDK Flight Recorder
- G1 Garbage Collector
- Serial garbage collector
- Java Verified Portfolio