В одной статье я считал, что Openssl 1.0.2 позволяет Вам выбирать сертификат, в зависимости от клиентской конфигурации. Например, Windows XP ранний SP2 не поддерживает сертификат ECC. поскольку этот сервер возвратит один сертификат и другой сертификат для современной ОС.
Я не могу найти описание этой технологии. Какой-либо веб-сервер поддерживает его?
Вы ссылаясь на этот бит в связанной статье (здесь, переведен на английский):
OpenSSL версии 1.0.2 позволяет вам выбрать сертификат сервера на основе параметров клиента. К сожалению, Nginx из коробки не позволяет использовать несколько сертификатов для одного
сервера
.
Похоже, это относится к следующей функции OpenSSL, добавленной в 1.0.2 :
*) Добавить обратный вызов сертификата. Если установлено, это вызывается всякий раз, когда сертификат требуется клиентом или сервером. Приложение может решить, какой цепочка сертификатов для представления на основе произвольных критериев: например поддерживаемые алгоритмы подписи. Добавьте очень простой пример в s_server. Это устраняет многие проблемы и ограничения существующего клиента. обратный вызов сертификата: например, теперь вы можете очистить существующий сертификат и укажите всю цепочку. [Steve Henson]
Пока я не могу найти никаких доказательств того, что nginx поддерживает эту функцию, ни каких-либо неофициальных патчей. Я также не нашел ничего подходящего для Apache или любого другого веб-сервера. Я уверен, что он в конечном итоге будет добавлен, но если вам это действительно понадобится в ближайшее время, я бы посоветовал спросить в списке рассылки nginx.