In RFC 6101 (Of SSLv3), In page 22 ServerHello Certificate is marked with * which means optional or situation-dependent messages that are not always sent. It means that Certificate is optional in server hello message. What are the cases when the server certificate is not sent in SSLv3 Handshake?

2 Answers 2


The server will not send a Certificate message if client and server agree to use a cipher suite which does not require a server certificate. These are mostly:

  • the "DH_anon" cipher suites (which are weak against active attackers, precisely because the server is not really authenticated);
  • the "PSK" cipher suites, meaning pre-shared key (client and server already share some secret key and just want to expand on that);
  • the "SRP" cipher suites (a variant of PSK where the shared secret is a low-entropy password -- SRP is a PAKE algorithm which employs nifty mathematics to overcome the inherent weakness of passwords).

None of these is used in practice by Web browsers and servers; the DH_anon cipher suites are not supported because they are weak against server impersonation; the PSK and SRP cipher suites are not supported because they assume a shared secret, which does not exist in "normal" (customer/business) Web contexts.


If you are using anonymous ciphers (ADH etc) you don't exchange certificates. But in this case you need another way of identifying your peer, because identification is no longer done with the certificate. And without identification of the peer you are open to man-in-the-middle attacks.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .