«Набор шифров» - это около поддержка : клиент и сервер пытаются выбрать набор алгоритмов, которые они оба умеют обрабатывать.Например, если клиент объявляет, что он может использовать TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
, то сервер знает, что клиент будет знать, что делать с подписью DSS (вычисленной по обмену ключами Диффи-Хеллмана), и, таким образом, сервер может использовать сертификатс открытым ключом DSS.Это имеет смысл, если предположить, что сервер имеет несколько сертификатов (с различными типами ключей): сервер хочет отправить клиенту "правильный" сертификат.
(Это несколько теоретически, потому чтона практике все поддерживают и используют RSA - или иногда эфемерный Диффи-Хеллман, подписанный RSA.)