Java 27 arrives with native post-quantum cryptography in TLS 1.3
Second non-LTS release after JDK 25 brings nine JEPs, a focus on long-term security, and the debut of the Java Verified Portfolio with Helidon 27 and JavaFX 27.

Oracle released Java 27, the second non-LTS release since JDK 25. The final set brings nine JEPs, five of them still in preview or incubator stage. The release's focus is clear: long-term security, with post-quantum cryptography gaining direct space in TLS as the highlight.
For those maintaining enterprise Java applications, the practical takeaway is that protection against the "harvest now, decrypt later" scenario starts coming out of the box, without relying on an external library or custom security provider.
Post-quantum cryptography in the handshake
The highlight is JEP 527, Post-Quantum Hybrid Key Exchange for TLS 1.3. It enhances the implementation of RFC 8446 (TLS 1.3) using the hybrid key exchange specification the IETF is still drafting, together with JEP 496 (Module-Lattice-Based Key Encapsulation Mechanism), delivered back in JDK 24.
The term hybrid matters: the handshake combines a classical algorithm with one resistant to quantum computers. That way, even if one of the two is broken in the future, the session remains protected by the other. It's a conservative approach, designed precisely for those who cannot risk the compatibility of TLS connections in production.
This move is not isolated. Since JDK 24, Oracle has been stacking PQC pieces. According to Oracle's blog, the strategy is to bring standardized algorithms and post-quantum-enabled TLS to LTS releases as well, reducing adoption friction for companies that don't track every six-month version. The pieces already delivered or in progress include:
- JEP 496: lattice-based Key Encapsulation Mechanism (JDK 24)
- JEP 497: quantum-resistant digital signature algorithm
- JEP 510: Key Derivation Function API
- JEP 527: hybrid key exchange in TLS 1.3 (JDK 27)
- JEP 542: PEM Encodings, expected to finalize in JDK 28
PEM comes out of the drawer
JEP 538, PEM Encodings of Cryptographic Objects, enters its third preview, after two rounds in JDK 25 and JDK 26. The API handles encoding and decoding keys, certificates, and revocation lists into PEM format, that Base64 text delimited by -----BEGIN...----- that anyone who has worked with OpenSSL knows. The conversion covers the binary PKCS #8 and X.509 formats.
Two changes in this round deserve attention from anyone touching the API: the PEMRecord class stopped being a record and became a regular class, to offer constructors that accept Base64 content in byte arrays; and the DEREncodable interface was renamed to BinaryEncodable, better describing the binary data stored in PEM text. It's not a cosmetic detail: anyone already using the preview will need to adjust imports and calls.
Beyond security: performance and language
The release touches points that affect any application, even those not going near cryptography anytime soon:
- JEP 523: makes G1 the default garbage collector in all environments
- JEP 534: Compact Object Headers by default, reducing per-object memory overhead (relevant for large heaps with many small objects)
- JEP 536: in-process data redaction in JFR (JDK Flight Recorder), useful to avoid leaking sensitive information in diagnostic recordings
On the language front, JEP 531 (Lazy Constants, third preview), JEP 532 (Primitive Types in Patterns, instanceof, and switch, fifth preview), and JEP 533 (Structured Concurrency, seventh preview) remain in preview. Structured Concurrency, in particular, is already far along in iterations and aims to simplify concurrent task control by treating a group of subtasks as a single unit. JEP 537 (Vector API) reaches its twelfth incubator round, with no substantial implementation changes since JDK 25.
Java Verified Portfolio: Helidon 27 and JavaFX 27
Presented at JavaOne 2026, the Java Verified Portfolio (JVP) is an ecosystem of Oracle-supported technologies. With Java 27, Helidon 27, JavaFX 27, Jipher 20, and a JVP extension for VS Code debut in the portfolio.
Helidon 27 now follows OpenJDK's versioning and is the first release under Oracle's Tip & Tail model: Helidon 27 is the Tip (the leading edge, with new features), while Helidon 4.5.5, still under semantic versioning, works as the Tail, serving as a longer-lived production baseline for teams who don't want to chase every new version. It's a decision that changes the planning of anyone already running Helidon in production: it's possible to stay on the Tail with more predictability.
JavaFX 27 brings a Metal rendering pipeline on macOS, for better performance on recent Apple hardware, along with improved text editing controls and accessibility advances. Jipher 20, a FIPS 140-3-compliant Java cryptographic provider, expands support for JDK 17, 21, 25, and 27 and incorporates the new security features.
What's coming in JDK 28
JDK 28's formal release date is expected for March 2027, with feature freeze planned for early December 2026. Six JEPs are already targeting this release, including long-awaited pieces from Project Valhalla:
- JEP 539, Strict Field Initialization (Preview): fields that must be initialized before being read, so that default values like
0ornullare never observed - JEP 401, Value Classes and Objects (Preview): value objects, which only have
finalfields, have no identity, and are distinguished solely by the values of their fields
The integration of these two features into the mainline is described as a significant milestone for Valhalla, and is what should finally allow the Vector API to move from incubator to preview.
What changes for those building here
For Brazilian teams maintaining long-lived Java systems (banking, government, healthcare, anything with data that needs to stay secret for a decade), the arrival of native PQC in TLS lowers the entry barrier: it's now possible to start mapping where the hybrid handshake fits in without relying on a third-party vendor. Java 27 is not LTS, so the safest path to production remains waiting for these features to reach an extended-support release, but testing now, in a staging environment, is the way to avoid being caught off guard when the LTS arrives.
JDK 27 is already available for download from Oracle, with binaries from other vendors expected in the following days.
Translated from the Brazilian Portuguese original · Read the original
Perplexity swaps DynamoDB for in-house database and cuts latency by 5x
The company behind the AI-powered search engine migrated its serving layer to CobbleDB, an internal database written in Rust, and cut batch read latency by up to 5x while saving at least 20% on storage.