> The enhancement implements the new RFC 9846-style support group selection on > the server side (first mutual group matters) and change the supported-groups > format. Specifically: > > 1. `SSLParameters.setNamedGroups` and the `jdk.tls.namedGroups` system > property now recognize a *-prefix on a group name. > 2. The prefix does not change the supported_groups extension. > 3. On a TLS 1.3 client, usable starred groups determine the initial key_share > entries. If no usable starred group remains, JSSE falls back to its existing > automatic key-share selection. > 4. SunJSSE’s default parameters contains 2 starred groups, which can be > observed by `getNamedGroups`. > 5. The server ignores the marker in its own configuration. > 6. Server group selection now follows RFC 9846: choose the first mutually > supported group according to the client’s supported_groups order, then sends > ServerHello if its key share is present or HelloRetryRequest if not. > > No new API or system property defined for the new format. The existing > methods and system property are already called a lot by both JSSE itself and > an application. The default value of the system property is empty which gives > each provider the chance to define it itself. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai).
Weijun Wang has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision: - Merge branch 'master' into 8388484 - an example and a more precise spec - a test - the change ------------- Changes: - all: https://git.openjdk.org/jdk/pull/32586/files - new: https://git.openjdk.org/jdk/pull/32586/files/97e5903d..bb5461ae Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=32586&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=32586&range=00-01 Stats: 256593 lines in 2892 files changed: 141260 ins; 98831 del; 16502 mod Patch: https://git.openjdk.org/jdk/pull/32586.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/32586/head:pull/32586 PR: https://git.openjdk.org/jdk/pull/32586
