Em um artigo li que o Openssl 1.0.2 permite selecionar o certificado, dependendo da configuração do cliente. Por exemplo, o Windows XP SP2 anterior não oferece suporte ao certificado ECC. para este servidor retornará um certificado e outro certificado para sistema operacional moderno.
Não consigo encontrar uma descrição desta tecnologia. Algum servidor web suporta isso?
Responder1
Você está se referindo a esta parte no artigo vinculado (aqui, traduzido para o inglês):
OpenSSL versão 1.0.2 permite selecionar o certificado do servidor com base nos parâmetros do cliente. Infelizmente, o Nginx pronto para uso não permite o uso de vários certificados para um único arquivo
server
.
Isso parece estar se referindo ao seguinte recurso OpenSSL,adicionado em 1.0.2:
*) Adicionar retorno de chamada de certificado. Se definido, será chamado sempre que um certificado for exigido pelo cliente ou servidor. Um aplicativo pode decidir qual cadeia de certificados apresentar com base em critérios arbitrários: por exemplo, algoritmos de assinatura suportados. Adicione um exemplo muito simples ao s_server. Isto corrige muitos dos problemas e restrições do retorno de chamada do certificado de cliente existente: por exemplo, agora você pode limpar um certificado existente e especificar toda a cadeia. [Steve Henson]
Até agora não encontrei nenhuma evidência de que o nginx suporte essa funcionalidade, nem de quaisquer patches não oficiais. Nem, olhando rapidamente, encontrei nada relevante para o Apache ou qualquer outro servidor web. Tenho certeza de que será adicionado eventualmente, mas se você realmente precisar disso em breve, sugiro perguntar na lista de discussão do nginx.