None.
| Issue |
Description |
| JDK-8347938 |
Add Support for the Latest ML-KEM and ML-DSA Private Key Encodings
The JDK now encodes ML-KEM and ML-DSA private keys in PKCS #8 format using the DER-encoded ASN.1 CHOICE formats defined in Section 6 of RFC 9935 and Section 6 of RFC 9881. Two new security properties (jdk.mlkem.pkcs8.encoding and jdk.mldsa.pkcs8.encoding) control the encoding used when generating new keys with a KeyPairGenerator or when translating keys with a KeyFactory. Valid values are "seed", "expandedKey", and "both" (case-insensitive). If a system property of the same name is also specified, it supersedes the security property value. All three formats are supported when decoding previously encoded private keys with a KeyFactory.
When these algorithms were introduced in JDK 24, the encoding format was equivalent to the "expandedKey" choice. This release changes the default to "seed". As a result, ML-KEM and ML-DSA private keys generated by this JDK release will not be accepted by older releases by default, although keys generated by older releases are still readable by this release. To make a new private key acceptable by older releases, set the relevant property to "expandedKey" and use KeyFactory.translateKey to convert it to the older format.
|
|
Add Support for the Latest ML-KEM and ML-DSA Private Key Encodings
The JDK now encodes ML-KEM and ML-DSA private keys in PKCS #8 format using the DER-encoded ASN.1 CHOICE formats defined in Section 6 of RFC 9935 and Section 6 of RFC 9881. Two new security properties (jdk.mlkem.pkcs8.encoding and jdk.mldsa.pkcs8.encoding) control the encoding used when generating new keys with a KeyPairGenerator or when translating keys with a KeyFactory. Valid values are "seed", "expandedKey", and "both" (case-insensitive). If a system property of the same name is also specified, it supersedes the security property value. All three formats are supported when decoding previously encoded private keys with a KeyFactory.
When these algorithms were introduced in JDK 24, the encoding format was equivalent to the "expandedKey" choice. This release changes the default to "seed". As a result, ML-KEM and ML-DSA private keys generated by this JDK release will not be accepted by older releases by default, although keys generated by older releases are still readable by this release. To make a new private key acceptable by older releases, set the relevant property to "expandedKey" and use KeyFactory.translateKey to convert it to the older format.
This change is planned to be backported to Oracle's JDK update releases that support ML-KEM and ML-DSA, so the interoperability impact is expected to be temporary.
|
| Priority |
Bug |
Summary |
| P3 |
JDK-8298823 |
[macos] java/awt/Mouse/EnterExitEvents/DragWindowTest.java continues to fail with "No MouseReleased event on label!" |
| P3 |
JDK-8378727 |
[macOS] Missing dispatch_release for semaphores in CDesktopPeer |
| P3 |
JDK-8376233 |
Clean up code in Desktop native peer |
| P3 |
JDK-8015444 |
java/awt/Focus/KeyStrokeTest.java sometimes fails |
| P3 |
JDK-8225787 |
java/awt/Window/GetScreenLocation/GetScreenLocationTest.java fails on Ubuntu |
| P4 |
JDK-8379499 |
[AIX] headless-only build of libjawt.so fails |
| P4 |
JDK-8365424 |
[macos26] java/awt/Frame/DisposeTest.java fails on macOS 26 |
| P4 |
JDK-8365423 |
[macos26] java/awt/MenuBar/8007006/bug8007006.java fails on macOS 26 |
| P4 |
JDK-8361606 |
ConsumeNextMnemonicKeyTypedTest.java fails on Windows: character typed with VK_A: a |
| P4 |
JDK-8321303 |
Intermittent open/test/jdk/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeNextMnemonicKeyTypedTest.java failure on Linux |
| P4 |
JDK-8366852 |
java/awt/Choice/ChoiceMouseWheelTest/ChoiceMouseWheelTest.java test is failing |
| P4 |
JDK-8374304 |
MultiResolutionSplashTest.java fails in CI: "Image with wrong resolution is used for splash screen!" |
| P4 |
JDK-8369251 |
Opensource few tests |
| P4 |
JDK-8213530 |
Test java/awt/Modal/ToFront/DialogToFrontModeless1Test.java fails on Linux |
| P4 |
JDK-8373239 |
Test java/awt/print/PrinterJob/PageRanges.java fails with incorrect selection of printed pages |
| P4 |
JDK-8203004 |
UnixMultiResolutionSplashTest.java fails on Ubuntu16.04 |
| Priority |
Bug |
Summary |
| P3 |
JDK-8365625 |
Can't change accelerator colors in Windows L&F |
| P3 |
JDK-8377727 |
Ghost caret and focus appear in non‑editable text fields |
| P3 |
JDK-8374506 |
Incorrect positioning of arrow icon in parent JMenu in Windows L&F |
| P3 |
JDK-8373650 |
Test "javax/swing/JMenuItem/6458123/ManualBug6458123.java" fails because the check icons are not aligned properly as expected |
| P3 |
JDK-8359433 |
The final modifier on Windows L&F internal UI classes prevents extending them in apps |
| P4 |
JDK-8064922 |
[macos] Test javax/swing/JTabbedPane/4624207/bug4624207.java fails |
| P4 |
JDK-8068293 |
[TEST_BUG] Test closed/com/sun/java/swing/plaf/motif/InternalFrame/4150591/bug4150591.java fails with GTKLookAndFeel |
| P4 |
JDK-8068310 |
[TEST_BUG] Test javax/swing/JColorChooser/Test4234761.java fails with GTKL&F |
| P4 |
JDK-8365379 |
SU3.applyInsets may produce wrong results |
| P4 |
JDK-8376151 |
Test javax/swing/JFileChooser/4966171/bug4966171.java is failing with OOME |
| P4 |
JDK-8373847 |
Test javax/swing/JMenuItem/MenuItemTest/bug6197830.java failed because The test case automatically fails when clicking any items in the “Nothing” menu in all four windows (Left-to-right)-Menu Item Test and (Right-to-left)-Menu Item Test |
| P5 |
JDK-8144124 |
[macosx] The tabs can't be aligned when we pressing the key of 'R','B','L','C' or 'T'. |
| Priority |
Bug |
Summary |
| P3 |
JDK-8376031 |
HttpsURLConnection.getServerCertificates() throws "java.lang.IllegalStateException: connection not yet open" for the HEAD method |
| P4 |
JDK-8359223 |
HttpClient: Remove leftovers from the SecurityManager cleanup |
| P4 |
JDK-8340182 |
Java HttpClient does not follow default retry limit of 3 retries |
| P4 |
JDK-8373515 |
Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods |
| P4 |
JDK-8347167 |
Reduce allocation in com.sun.net.httpserver.Headers::normalize |
| P4 |
JDK-8373796 |
Refactor java/net/httpclient/ThrowingPublishers*.java tests to use JUnit5 |
| P4 |
JDK-8373866 |
Refactor java/net/httpclient/ThrowingSubscribers*.java tests to use JUnit5 |
| P4 |
JDK-8373893 |
Refactor networking http server tests to use JUnit |
| P4 |
JDK-8373676 |
Test javax/net/ssl/HttpsURLConnection/SubjectAltNameIP.java fails on a machine without IPV6 |
| P4 |
JDK-8369950 |
TLS connection to IPv6 address fails with BCJSSE due to IllegalArgumentException |
| Priority |
Bug |
Summary |
| P3 |
JDK-8363943 |
ARM32: Represent Registers as values |
| P3 |
JDK-8376104 |
C2 crashes in PhiNode::Ideal(PhaseGVN*, bool) accessing NULL pointer |
| P3 |
JDK-8361699 |
C2: assert(can_reduce_phi(n->as_Phi())) failed: Sanity: previous reducible Phi is no longer reducible before SUT |
| P3 |
JDK-8370502 |
C2: segfault while adding node to IGVN worklist |
| P3 |
JDK-8370939 |
C2: SIGSEGV in SafePointNode::verify_input when processing MH call from Compile::process_late_inline_calls_no_inline() |
| P3 |
JDK-8339526 |
C2: store incorrectly removed for clone() transformed to series of loads/stores |
| P4 |
JDK-8383161 |
[PPC64] MachCallDynamicJavaNode::ret_addr_offset() needs adaptation for COH |
| P4 |
JDK-8354650 |
[PPC64] Try to reduce register definitions |
| P4 |
JDK-8381315 |
compiler/vectorapi/TestVectorReallocation.java fails with -XX:UseAVX=1 after JDK-8380565 |
| P4 |
JDK-8374744 |
Enable dumping of APX EGPRs (R16–R31) in JVM fatal error logs |
| P4 |
JDK-8371792 |
Refactor barrier loop tests out of TestIfMinMax |
| P4 |
JDK-8384223 |
RISC-V: entry_barrier_offset should consider UseZtso |
| P4 |
JDK-8382878 |
RISC-V: Missing InlineSkippedInstructionsCounter in ZGC barriers stubs |
| P4 |
JDK-8367531 |
Template Framework: use scopes and tokens instead of misbehaving immediate-return-queries |
| P4 |
JDK-8359412 |
Template-Framework Library: Operations and Expressions |
| P4 |
JDK-8358772 |
Template-Framework Library: Primitive Types |
| P4 |
JDK-8358600 |
Template-Framework Library: Template for TestFramework test class |
| P4 |
JDK-8325482 |
Test that distinct seeds produce distinct traces for compiler stress flags |
| P5 |
JDK-8382419 |
Add missed @key randomness after JDK-8370489 |
| P5 |
JDK-8378888 |
jdk/incubator/vector/Float16OperationsBenchmark.java uses wrong package name |
| P5 |
JDK-8370489 |
Some compiler tests miss the @key randomness |
| P5 |
JDK-8344345 |
test/hotspot/gtest/x86/x86-asmtest.py has trailing whitespaces |
| Priority |
Bug |
Summary |
| P3 |
JDK-8367709 |
GenShen: Dirty cards for objects that get promoted by safepoint that intervenes between allocation and stores |
| P3 |
JDK-8353115 |
GenShen: mixed evacuation candidate regions need accurate live_data |
| P3 |
JDK-8381382 |
Shenandoah: assert(capacity > 0) failed: free regions must have allocation capacity |
| P4 |
JDK-8367646 |
[GenShen] Control thread may overwrite gc cancellation cause set by mutator |
| P4 |
JDK-8367722 |
[GenShen] ShenandoahEvacuationStats is always empty |
| P4 |
JDK-8371381 |
[Shenandoah] Setting ergo flags should use FLAG_SET_ERGO |
| P4 |
JDK-8364927 |
Add @requires annotation to TestReclaimStringsLeaksMemory.java |
| P4 |
JDK-8376287 |
Crashes when using -XX:ObjArrayMarkingStride=0 |
| P4 |
JDK-8382395 |
Disable stringop-overflow in shenandoahGenerationalHeap.cpp |
| P4 |
JDK-8319326 |
GC: Make TestParallelRefProc use createTestJavaProcessBuilder |
| P4 |
JDK-8319540 |
GC: Make TestSelectDefaultGC use createTestJavaProcessBuilder |
| P4 |
JDK-8365792 |
GenShen: assertion "Generations aren't reconciled" |
| P4 |
JDK-8371284 |
GenShen: Avoid unnecessary card marking |
| P4 |
JDK-8368499 |
GenShen: Do not collect age census during evac when adaptive tenuring is disabled |
| P4 |
JDK-8372861 |
Genshen: Override parallel_region_stride of ShenandoahResetBitmapClosure to a reasonable value for better parallelism |
| P4 |
JDK-8367708 |
GenShen: Reduce total evacuation burden |
| P4 |
JDK-8380846 |
GenShen: Remove the experimental option to disable adaptive tenuring |
| P4 |
JDK-8367451 |
GenShen: Remove the option to compute age census during evacuation |
| P4 |
JDK-8370521 |
GenShen: Various code cleanup related to promotion |
| P4 |
JDK-8378561 |
Mark gc/shenandoah/compiler/TestLinkToNativeRBP.java as /native |
| P4 |
JDK-8378083 |
Mark shenandoah/generational/TestOldGrowthTriggers.java as flagless |
| P4 |
JDK-8373039 |
Remove Incorrect Asserts in shenandoahScanRemembered |
| P4 |
JDK-8383601 |
RISC-V: ShenandoahBarrierSetAssembler::load_reference_barrier calls "weak" on "phantom" path |
| P4 |
JDK-8366692 |
Several gc/shenandoah tests timed out |
| P4 |
JDK-8368681 |
Shenandoah: Add documentation comments for ShenandoahAllocationRate |
| P4 |
JDK-8352914 |
Shenandoah: Change definition of ShenandoahSharedValue to int32_t to leverage platform atomics |
| P4 |
JDK-8380431 |
Shenandoah: Concurrent modification of stack-chunk objects during evacuation |
| P4 |
JDK-8261743 |
Shenandoah: enable String deduplication with compact heuristics |
| P4 |
JDK-8368015 |
Shenandoah: fix error in computation of average allocation rate |
| P4 |
JDK-8241066 |
Shenandoah: fix or cleanup SH::do_full_collection |
| P4 |
JDK-8335355 |
Shenandoah: Fix race condition in gc/shenandoah/mxbeans/TestPauseNotifications.java |
| P4 |
JDK-8368501 |
Shenandoah: GC progress evaluation does not use generation |
| P4 |
JDK-8376969 |
Shenandoah: GC state getters should be inlineable |
| P4 |
JDK-8368307 |
Shenandoah: get_next_bit_impl should special case weak and strong mark bits |
| P4 |
JDK-8374449 |
Shenandoah: Leaf locks used by Shenandoah need lower ranks |
| P4 |
JDK-8367450 |
Shenandoah: Log the composition of the collection set |
| P4 |
JDK-8367473 |
Shenandoah: Make the detailed evacuation metrics a runtime diagnostic option |
| P4 |
JDK-8383183 |
Shenandoah: Mangle trashed regions up to top instead of end |
| P4 |
JDK-8361726 |
Shenandoah: More detailed evacuation instrumentation |
| P4 |
JDK-8373714 |
Shenandoah: Register heuristic penalties following a degenerated GC |
| P4 |
JDK-8264851 |
Shenandoah: Rework control loop mechanics to use timed waits |
| P4 |
JDK-8372513 |
Shenandoah: ShenandoahMaxRegionSize can produce an unaligned heap alignment |
| P4 |
JDK-8379021 |
Shenandoah: Speedup ShenandoahSimpleBitMapTest |
| P4 |
JDK-8376970 |
Shenandoah: Verifier should do basic verification before touching oops |
| P4 |
JDK-8382295 |
Shenandoah: wrong denominator in full gc summary |
| P4 |
JDK-8361339 |
Test gc/shenandoah/TestLargeObjectAlignment.java#generational fails on macOS aarch64 with OOM: Java heap space |
| P4 |
JDK-8345631 |
TestRegionSamplingLogging.java#generational-rotation intermittent fails |
| P4 |
JDK-8378746 |
ZGC: jdk/jfr/event/gc/detailed/TestZRelocationSetGroupEvent.java intermittent OOME |
| P5 |
JDK-8381871 |
GenShen: ShenandoahGCHeuristics flag not reset after ignoring non-adaptive value |
| Priority |
Bug |
Summary |
| P2 |
JDK-8380474 |
Crash SEGV in ThreadIdTable::lazy_initialize after JDK-8323792 |
| P3 |
JDK-8377512 |
AOT cache creation fails with invalid native pointer |
| P3 |
JDK-8380409 |
JVM crashes when -XX:AOTMode=create uses app.aotconf generated with JVMTI agent |
| P3 |
JDK-8380565 |
PPC64: deoptimization stub should save vector registers |
| P4 |
JDK-8382035 |
[ubsan] Under UBSAN builds, disable tests that rely on simulated JVM crashes |
| P4 |
JDK-8377932 |
AOT cache is not rejected when JAR file has changed |
| P4 |
JDK-8376402 |
Dependencies::print_statistics() and AbstractClassHierarchyWalker::print_statistics() are not called from PRODUCT code |
| P4 |
JDK-8382522 |
Disable stringop-overflow in safepointMechanism.cpp |
| P4 |
JDK-8369683 |
Exclude runtime/Monitor/MonitorWithDeadObjectTest.java#DumpThreadsBeforeDetach on Alpine Linux debug |
| P4 |
JDK-8374998 |
Failing os::write - remove bad file |
| P4 |
JDK-8374343 |
Fix SIGSEGV when lib/modules is unreadable |
| P4 |
JDK-8372272 |
Hotspot shared lib loading - add load attempts to Events::log |
| P4 |
JDK-8363949 |
Incorrect jtreg header in MonitorWithDeadObjectTest.java |
| P4 |
JDK-8372380 |
Make hs_err reporting more robust for unattached threads |
| P4 |
JDK-8367485 |
os::physical_memory is broken in 32-bit JVMs when running on 64-bit OSes |
| P4 |
JDK-8357086 |
os::xxx functions returning memory size should return size_t |
| P4 |
JDK-8374769 |
PPC: MASM::pop_cont_fastpath() should reset _cont_fastpath if SP == _cont_fastpath |
| P4 |
JDK-8379457 |
Test EATests.java#id0 ERROR: monitor list errors: error_cnt=1 |
| P4 |
JDK-8374322 |
TestMemoryWithSubgroups.java fails Permission denied |
| Priority |
Bug |
Summary |
| P2 |
JDK-8384158 |
GHA: Downgrade Windows GHA runners to windows-2022 temporarily |
| P4 |
JDK-8384540 |
[25u, 21u, 17u] Update GHA JDKs after Apr/26 updates |
| P4 |
JDK-8371893 |
[macOS] use dead_strip linker option to reduce binary size |
| P4 |
JDK-8379416 |
AIX build fails if system (not GNU) date tool is in PATH |
| P4 |
JDK-8376684 |
Compile OpenJDK in headless mode without required X11 libraries |
| P4 |
JDK-8378836 |
Enable linktime-gc by default on Linux ppc64le |
| P4 |
JDK-8381205 |
GHA: Upgrade Node.js 20 to 24 |
| P4 |
JDK-8382090 |
Remove .rej and .orig from .gitignore |
| P4 |
JDK-8341735 |
Rewrite the build/AbsPathsInImage.java test to not load the entire file at once |
| P4 |
JDK-8379202 |
Support linktime-gc on Linux with clang |
| P4 |
JDK-8379425 |
Windows and macOS should not allow unsupported headless-only build |