The driver behind this proposal is the flurry of activity relating to post-quantum cryptography. NIST published its round 2 candidates, bringing the field down to a manageable size. Early adopters are implementing these promising candidates and even using them in production (typically in "hybrid mode" with a classical algorithm).
Allowing users to define their own TLS ciphersuites would help in this effort. Currently, forking crypto/tls would be required to register additional suites.
In terms of changes, I would propose making the keyAgreement interface public and offering a function to insert additional entries into the cipherSuites variable (as a bare minimum). I'd be happy to provide some more detailed design suggestions, if there's any appetite for this idea.
The driver behind this proposal is the flurry of activity relating to post-quantum cryptography. NIST published its round 2 candidates, bringing the field down to a manageable size. Early adopters are implementing these promising candidates and even using them in production (typically in "hybrid mode" with a classical algorithm).
Allowing users to define their own TLS ciphersuites would help in this effort. Currently, forking
crypto/tlswould be required to register additional suites.In terms of changes, I would propose making the
keyAgreementinterface public and offering a function to insert additional entries into thecipherSuitesvariable (as a bare minimum). I'd be happy to provide some more detailed design suggestions, if there's any appetite for this idea.