I want to test my server application (TLS 1.3) using s_client program from the openssl library and I need to get from the s_client a keyshare in the 1st ClientHello for secp256r1 (it proposes x25519 now).
Could you tell me, which command line options in s_client should I use ?


1 Answer 1


Use -curves or (synonym) -groups to specify all 'supported' groups, with the one you want offered in key_share FIRST, e.g. -curves secp256r1:secp384r1:X25519.

  • $\begingroup$ @dave_thomson_085, thank you very much - it helped! By the way, could you tell me - is server certificate sending a mandatory step in TLS 1.3 handshaking ? Or it can be skipped ? $\endgroup$
    – LUN
    Commented Jun 8, 2023 at 18:52
  • $\begingroup$ LUN: that's a different question, and not really crypto, but yes server cert is mandatory in 1.3 except when using PSK which in practice means except for 'resumption'; see 2nd para of rfc8446 4.4.2 $\endgroup$ Commented Jun 9, 2023 at 7:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.