Crie uma autoridade de certificação TLS restrita a um domínio?

3

Estou pensando em criar um CA raiz para usar com algo que estou criando.

Cada cliente registraria seu próprio servidor comigo e assinaria seu certificado como titular de (id) .example.com. Cada cliente baixaria com segurança meu certificado da CA e o configuraria como confiável apenas para o exemplo.com e subdomínios.

Como defino meu próprio certificado de CA como aplicável apenas para example.com? Meus clientes não vão querer confiar em mim para assinar (digamos) paypal.com, apenas o domínio e os subdomínios para os quais eu fiz. Eu também não quero estar em uma posição onde alguém poderia me forçar a assinar o seu certificado desonesto.

(Eu estou olhando para o openssl no momento, mas quaisquer alternativas estão bem. Se é apenas uma opção de linha de comando, está atualmente me esquecendo.)

    
por billpg 25.11.2010 / 20:23

2 respostas

5

A PKI não possui um método para restringir as autoridades de certificação a assinar certificados apenas em determinadas áreas. Depois de confiar em uma CA, você confia incondicionalmente em tudo que ela produz. Não há confiança condicional para CAs, apenas certificados. Isso significa que, se você confiar na CA da sua empresa, também confiará em um certificado assinado pela CA da empresa para mail.google.com. É por esse motivo que os certificados de Validação Estendida estão se tornando a maior parte da raiva.

Pedir que os clientes confiem em uma CA é uma solicitação importante. Se são apenas alguns servidores que precisam confiar, é uma coisa, mas pedir a toda sua infra-estrutura para confiar nele é algo que eu diria que a maioria das empresas rejeitará.

    
por 25.11.2010 / 20:47
1

O atributo estendido de restrição de nome pode ser usado para restringir a assinatura com um certificado a um domínio específico. Isso faz parte da infra-estrutura PKI (RFC 5280 - Seção 4.2.1.10). Quão bem é suportado nos navegadores é outra questão inteiramente.

    
por 30.11.2010 / 03:47