Conversation
10bf50f to
123d3a9
Compare
...-client/src/main/java/software/amazon/awssdk/http/crt/internal/AwsCrtConfigurationUtils.java
Show resolved
Hide resolved
Java CRT 0.39.3 enables and prefers PQ by default, so `TLS_CIPHER_SYSTEM_DEFAULT` now uses PQ cipher suites. The `postQuantumTlsEnabled` builder option in aws-sdk-java-v2 now becomes an opt-out mechanism; setting it to false explicitly disables PQ by using policy `TLS_CIPHER_PREF_TLSv1_0_2023`.
ffa362d to
2c652cc
Compare
zoewangg
left a comment
There was a problem hiding this comment.
Can we update the javadoc for postQuantumTlsEnabled? https://github.com/aws/aws-sdk-java-v2/blob/master/http-clients/aws-crt-client/src/main/java/software/amazon/awssdk/http/crt/AwsCrtAsyncHttpClient.java#L239
| // below if the caller explicitly disables PQ by passing in false. | ||
| if (Boolean.FALSE.equals(postQuantumTlsEnabled) | ||
| && TlsCipherPreference.TLS_CIPHER_PREF_TLSv1_0_2023.isSupported()) { | ||
| return TlsCipherPreference.TLS_CIPHER_PREF_TLSv1_0_2023; |
There was a problem hiding this comment.
It seems this policy may get outdated in the future. Can we create a non-PQTLS default TLS policy that always uses the latest TLS versions?
There was a problem hiding this comment.
Unfortunately we can't enforce a minimum TLS version higher than this due to some SDKs (IoT, some others) requiring TLS 1.0 support for the foreseeable future.
There was a problem hiding this comment.
That's totally fine. I'm proposing creating a new TlsCipherPreference that always links to the recommended non-PQTLS preference, for now, it's TLS_CIPHER_PREF_TLSv1_0_2023, which may change in the future and when we change it, we just need to change CRT code and don't have to update the code in the SDK
There was a problem hiding this comment.
understood, and i agree that's a useful abstraction. does this concern block the current PR? i'd be happy to take this up as a follow-on. it would require an upstream CRT change + release.
Notes
Java CRT 0.39.3 enables and prefers PQ by default, so
TLS_CIPHER_SYSTEM_DEFAULTnow uses PQ cipher suites. ThepostQuantumTlsEnabledbuilder option in aws-sdk-java-v2 now becomes an opt-out mechanism; setting it to false explicitly disables PQ by using policyTLS_CIPHER_PREF_TLSv1_0_2023.Testing
Types of changes
Checklist
mvn installsucceedsscripts/new-changescript and following the instructions. Commit the new file created by the script in.changes/next-releasewith your changes.License