Deepseek, como outros clientes, verifica o nome comum (CN) em um certificado SSL como parte do processo de handshake SSL/TLS. Aqui está uma explicação detalhada de como essa verificação normalmente ocorre:
1. Recebimento de certificado: Quando um cliente (como o Deepseek) inicia uma conexão com um servidor, o servidor responde enviando seu certificado SSL/TLS. Este certificado contém vários campos, incluindo o nome comum (CN) e o nome alternativo do sujeito (SAN).
2. Validação do certificado: o cliente verifica o certificado para garantir que seja válido e não expirou. Ele verifica a assinatura digital do certificado usando a chave pública da Autoridade de Certificação (CA) que a emitiu. O cliente também verifica se o certificado foi revogado consultando uma lista de revogação de certificados (CRL) ou usando o respondedor de protocolo de status de certificado on -line (OCSP) [4].
3. Verificação comum de nome: o cliente verifica se o nome de domínio no certificado corresponde ao nome de domínio do site que está sendo acessado. Isso é crucial para garantir que o certificado seja emitido para o domínio correto. Se os nomes de domínio não corresponderem, o cliente normalmente exibirá uma mensagem de aviso para o usuário [1] [4].
4. Verificação de San: Embora o campo de nome comum seja frequentemente considerado legado, os processos modernos de verificação dependem mais do campo de San. A SAN permite que vários nomes de domínio sejam especificados, incluindo domínios curinga. O cliente verifica os campos CN e SAN para garantir que o nome de domínio do servidor esteja listado [1] [3].
5. Verificação da loja de confiança: O cliente verifica se a CA emitindo o certificado é confiável, verificando se estiver incluído em sua loja de confiança. Se a CA não for confiável, o certificado será considerado não confiável [4].
6. Negociação de criptografia: Se todas as etapas de verificação passarem, o cliente continuará a negociar um algoritmo de criptografia com o servidor e estabelecer uma conexão segura usando protocolos como a segurança da camada de transporte (TLS) [4].
No contexto de aplicativos Deepseek ou similares, essas etapas garantem que a conexão com o servidor seja segura e que o servidor seja quem ele afirma ser, impedindo possíveis ataques de homem no meio. No entanto, detalhes específicos da implementação podem variar dependendo de como o DeepSeek é configurado para lidar com as conexões SSL/TLS.
Citações:
[1] https://support.dnsimple.com/articles/what-is-common-name/
[2] https://www.certauri.com/understanding-sl-certificate-common-name-secure-your-site/
[3] https://opensearch.org/docs/latest/troubleshoot/tls/
[4] https://apidog.com/blog/sssc-certificate-verification/
[5] https://www.sssl.com/faqs/common-name/
[6] https://opensearch.org/docs/latest/security/configuration/tls/
[7] https://www.digitalocean.com/community/questions/how-to-get-sl-certificate-details-for-a-specific-domain-via-the-command-line
[8] https://stackoverflow.com/questions/35374491/how-does-the-client-verify-servers-certificate-in-ssl