Skip to content

Explicitly include RSA key exchange AES cipher suites in TLS client config#41

Merged
riccardo-perotti merged 2 commits into
masterfrom
rp.ROP-9188.explicitly-include-rsa-cipher-suites-in-the-tls-config
Apr 17, 2026
Merged

Explicitly include RSA key exchange AES cipher suites in TLS client config#41
riccardo-perotti merged 2 commits into
masterfrom
rp.ROP-9188.explicitly-include-rsa-cipher-suites-in-the-tls-config

Conversation

@riccardo-perotti

Copy link
Copy Markdown
Contributor

Summary

  • Go 1.22+ removed RSA key exchange cipher suites from the default TLS client cipher suite list (GODEBUG tlsrsakey=0)
  • Internal Go services built with older toolchains (e.g. gt-auth-service) only offer RSA key exchange suites, causing an immediate EOF when a Go 1.22+ client connects
  • Fix: append the four RSA+AES suites to the modern defaults in DialConnection
  • RC4 and 3DES are intentionally excluded to avoid introducing CVEs

Cipher suites added:

  • TLS_RSA_WITH_AES_128_GCM_SHA256
  • TLS_RSA_WITH_AES_256_GCM_SHA384
  • TLS_RSA_WITH_AES_128_CBC_SHA
  • TLS_RSA_WITH_AES_256_CBC_SHA

These lack forward secrecy but are not cryptographically broken. They are appropriate given InsecureSkipVerify is already set on these internal SCAMP connections.

Long-term: gt-auth-service should be upgraded to a modern Go version so it offers ECDHE cipher suites.

Jira Tickets

https://gudtech.atlassian.net/browse/ROP-9188

🤖 Generated with Claude Code

…onfig

Go 1.22+ removed RSA key exchange cipher suites from the default client
cipher suite list (GODEBUG tlsrsakey=0). This breaks connections to
internal Go services built with older toolchains (e.g. gt-auth-service)
that only offer RSA key exchange suites, resulting in an immediate EOF.

Fix by appending the four RSA+AES suites to the modern defaults.
RC4 and 3DES are intentionally excluded. This is appropriate given
InsecureSkipVerify is already set on these internal SCAMP connections.

JiraID: ROP-9188
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Comment thread scamp/connection.go
…commit

JiraID: ROP-9188
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@riccardo-perotti riccardo-perotti merged commit beac6fd into master Apr 17, 2026
1 check passed
@riccardo-perotti riccardo-perotti deleted the rp.ROP-9188.explicitly-include-rsa-cipher-suites-in-the-tls-config branch April 17, 2026 16:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants