Este artigo descreve os requisitos que cada certificado em uma cadeia X.509 precisa atender para ser considerado confiável para uso com e-mails criptografados ou assinados com S/MIME.
Além de atender a esses requisitos, a cadeia precisa estar vinculada ao certificado de uma autoridade de certificação (CA) que o Google considere explicitamente confiável para esse objetivo. Você também pode aceitar certificados raiz de autoridades que considere confiáveis. Para mais informações, acesse as diretrizes do certificado raiz.
Observações:
- O Google fornece e mantém uma lista de certificados de CA confiáveis do Gmail para S/MIME. A lista apresenta CAs consideradas confiáveis exclusivamente pelos critérios do Google, O Google se reserva o direito de remover CAs raiz a qualquer momento sem aviso prévio.
- Confirme que as extensões instaladas não contradizem outras extensões no mesmo certificado. Por exemplo, se nsCertTypes forem definidos, eles precisarão cobrir os mesmos usuários da extensão de uso de chave, da extensão de uso estendido de chave e da extensão de restrições básicas.
Regras da cadeia de certificados
CA raiz
| Campo | Valor |
|---|---|
|
DN do emissor |
Precisa identificar a CA. Por exemplo, o DN não pode ser um valor genérico, como "Autoridade de certificação". |
|
DN do assunto |
O formulário codificado precisa ser idêntico (byte por byte) ao DN do emissor. |
|
Informações sobre a chave pública do requerente |
rsaEncryption com um módulo RSA de 2048, 3072 ou 4096. Ou ecPublicKey usando secp256r1 ou secp384r1. |
Certificados de CA intermediária que não seja a emissora
Use esta informação se houver mais de uma CA intermediária entre a entidade raiz e final, direta ou indiretamente.
A CA intermediária emissora é a CA intermediária que emite o certificado de entidade final. Esta seção é aplicável a todas as CAs intermediárias na cadeia que não sejam a CA intermediária emissora.
| Campo | Valor | ||
|---|---|---|---|
| Versão | Versão 3 | ||
| Número de série | Precisa ser maior que zero (0). Quando o DER estiver codificado como um NÚMERO INTEIRO, precisa ser menor que ou igual a 20 bytes. | ||
| Algoritmo de assinatura | RSA com SHA‐256, SHA‐384 ou SHA‐512. Ou ECDSA com SHA‐256, SHA‐384 ou SHA‐512 | ||
| DN do emissor |
Precisa ser idêntico (byte por byte) ao DN do titular da CA emissora. |
||
| Período de validade | Nenhuma estipulação | ||
| DN do assunto | Nenhuma estipulação | ||
| Informações sobre a chave pública do requerente |
rsaEncryption com um módulo RSA de 2048, 3072 ou 4096. Ou ecPublicKey usando secp256r1 ou secp384r1 |
||
| Extensão | Presença | Crítico | Valor |
| Uso da chave | Obrigatório | Sim |
Posições de bits precisam ser definidas para: keyCertSign |
| Restrições básicas | Obrigatório | Sim | O campo "cA" precisa ser definido como "true" O campo "pathLenConstraint" deve estar presente |
| Pontos de distribuição de CRL | Obrigatório | Não |
Pelo menos um HTTP |
| (observação) | Os servidores de revogação precisam obedecer às seguintes seções da Política de requisitos de base do fórum da CA/do navegador para a emissão e o gerenciamento de certificados emitidos publicamente,versão 1.3.2 ou mais recente:
|
||
| Qualquer outra extensão | Pode estar presente | ||
Certificado da CA intermediária que emite a entidade final
Importante: pelo menos um certificado de CA intermediário precisa estar presente na cadeia. ou seja, a raiz não pode emitir certificados de entidade final diretamente.
| Campo | Valor | ||
|---|---|---|---|
| Versão | Versão 3 | ||
| Número de série | Precisa ser maior que zero (0). Quando o DER estiver codificado como um NÚMERO INTEIRO, precisa ser menor que ou igual a 20 bytes. | ||
| Algoritmo de assinatura |
RSA com SHA‐256, SHA‐384 ou SHA‐512. Ou ECDSA com SHA‐256, SHA‐384 ou SHA‐512. |
||
| DN do emissor |
Precisa ser idêntico (byte por byte) ao DN do titular da CA emissora. |
||
| Período de validade |
Diferença entre "notBefore" e "notAfter" Não deve ser maior que 10 anos e não pode exceder 20 anos. |
||
| DN do assunto |
Deve indicar o uso da CA. |
||
| Informações sobre a chave pública do requerente |
rsaEncryption com um módulo RSA de 2048, 3072 ou 4096. Ou ecPublicKey usando secp256r1 ou secp384r1 |
||
| Extensão | Presença | Crítico | Valor |
| Uso da chave | Obrigatório | Sim |
Posições de bits precisam ser definidas para: Outras posições de bits não podem ser definidas |
| Uso estendido de chave | Obrigatório | Ambos | Precisa estar presente: emailProtection Não pode estar presente: serverAuth codeSigning timeStamping anyExtendedKeyUsage |
|
Restrições básicas |
Obrigatório | Sim |
O campo "cA" precisa ser definido como "true" |
| Políticas de certificado | Opcional | Não |
Um policyIdentifier que identifique a política com base na qual a CA opera DEVE ser fornecido, e NÃO DEVE ser anyPolicy. |
| Pontos de distribuição de CRL | Obrigatório | Não |
Pelo menos um HTTP |
| (observação) |
Os servidores de revogação precisam ser operados de acordo com as seguintes seções da Política de requisitos de base do fórum da CA/do navegador para a emissão e o gerenciamento de certificados emitidos publicamente, versão 1.3.2 ou mais recente:
|
||
| Qualquer outra extensão | Opcional | Não |
Pode estar presente. |
Certificado de entidade final
| Campo | Valor | ||
|---|---|---|---|
| Versão | Versão 3 | ||
| Número de série |
Precisa ser maior que zero (0) e conter pelo menos 64 bits imprevisíveis. Observação:será atualizado para refletir os requisitos de entropia do número de série da entidade final Política de requisitos de base do fórum da CA/do navegador. |
||
| Algoritmo de assinatura | RSA com SHA‐256, SHA‐384 ou SHA‐512. Ou ECDSA com SHA‐256, SHA‐384 ou SHA‐512. | ||
| DN do emissor |
Precisa ser idêntico (byte por byte) ao DN do titular da CA emissora. |
||
| Período de validade |
A diferença entre "notBefore" e "notAfter" não pode ser maior que 27 meses. A hora notBefore precisa representar a hora da assinatura mais ou menos 48 horas. |
||
| DN do assunto |
Todos os nomes distintos relacionados ao assunto, e não ao endereço de e-mail, precisam ser rigorosamente validados antes da emissão, usando um procedimento documentado e auditado publicamente. Consulte a seção 3.2.3 "Autenticação de identidade de indivíduo" da Política de requisitos de base do fórum da CA/do navegador para a emissão e o gerenciamento de certificados emitidos publicamente, versão 1.3.2 ou mais recente para ver um procedimento aceitável. Qualquer endereço de e-mail (por exemplo, nos campos "commonName" ou "emailAddress") também precisa estar presente na extensão de nome alternativo do titular como um rfc822Name. |
||
| Informações sobre a chave pública do requerente |
rsaEncryption com um módulo RSA de 2048, 3072 ou 4096. Ou ecPublicKey usando secp256r1 ou secp384r1 |
||
| Extensão | Presença | Crítico | Valor |
| Uso da chave (RSA) | Obrigatório | Sim |
Posições de bits precisam ser definidas para: Outras posições de bits não podem ser definidas. |
| Uso da chave (ECDH) | Obrigatório |
Posições de bits precisam ser definidas para: Outras posições de bits não podem ser definidas. |
|
| Uso estendido de chave | Obrigatório | Ambos |
Precisa estar presente: |
|
Restrições básicas |
Opcional | Ambos |
Se presente, o campo "cA" não pode ser definido como "true" |
| Políticas de certificado | Obrigatório | Não |
Precisa estar presente: é preciso informar um policyIdentifier que identifique a política de emissão do certificado e não seja anyPolicy. Pode estar presente: cps, se presente, precisa conter um link HTTP ou HTTPS válido para o CPS com base no qual o certificado foi emitido. |
|
Acesso às informações da autoridade |
Opcional | Não |
caIssuers e, se presente, ocsp precisam conter pelo menos um HTTP uniformResourceIdentifier acessível publicamente. AccessDescription não pode conter marcadores ou parâmetros que sejam específicos de um certificado individual. |
| Pontos de distribuição de CRL | Obrigatório | Não |
Pelo menos um |
|
(observação) |
Os servidores de revogação precisam ser operados de acordo com as seguintes seções da Política de requisitos de base do fórum da CA/do navegador para a emissão e o gerenciamento de certificados emitidos publicamente, versão 1.3.2 ou mais recente:
|
||
|
Nome alternativo do titular |
Obrigatório | Não |
Precisa conter pelo menos um item do tipo rfc822Name. |
|
Qualquer outra extensão |
Opcional | Não | Pode estar presente. |