Estou prestes a implementar minha própria Autoridade de Certificação (CA) apenas para uso interal.
Agora há um problema, que o CA privado nunca deve ser explorado. Então, neste momento, a chave privada está criptografada.
O que mais poderia ser feito para aumentar a segurança da chave privada?
Respostas:
Eu trabalhei em uma empresa onde a segurança da chave da CA era crítica para o sucesso contínuo dos negócios. Para esse fim, a chave foi criptografada usando um protocolo personalizado que exigia que pelo menos 2 pessoas estivessem presentes com tokens físicos conectados aos terminais para descriptografá-la (havia pelo menos 5 desses tokens, quaisquer 2 combinados funcionariam). Os terminais foram fisicamente separados da máquina real com a chave CA. A interface que os usuários tinham que descriptografaram foi um terminal VT220 que permitiu a entrada dos tokens de descriptografia e, em seguida, selecionou o que eles queriam 'assinar' com a chave (nunca dando a eles acesso à chave descriptografada). Esse sistema significava que pelo menos quatro pessoas teriam que trabalhar juntas para comprometer a chave, dois detentores de tokens, o cara que tinha acesso ao data center,
Se você estiver interessado em mais detalhes sobre esse tipo de configuração, Bruce Schneier possui um ótimo site que cobre o design e a implementação da segurança do computador:
http://www.schneier.com/
Ele também publicou um livro realmente bom que foi encontrado para me ajudar a entender os fundamentos de sistemas como esse e como arquitetar infraestruturas mais seguras (legíveis por pessoas que não usam protetores de bolso):
http://www.schneier.com/book-applied.html
fonte
Um grande ganho é manter a chave CA privada em um computador dedicado completamente isolado da rede. Você assinaria e possivelmente também geraria novos certificados nesta máquina e usaria uma mídia física para transferir os novos certificados da máquina CA.
Como a configuração, é claro, também incluiria considerações sobre a disponibilidade física da máquina, bem como restrições às mídias permitidas. Um pen drive bem-viajado provavelmente não é a melhor opção ...
(Este é, a propósito, um exemplo muito claro da troca entre segurança e conveniência.)
fonte
Votou as outras duas respostas e comentei sobre ela, porque acho que as duas são excelentes. Se você decidir optar por ambos, e isso pode ser apropriado, aconselho vivamente o cuidado na geração inicial da chave, pois o melhor momento para comprometer uma chave não está em uso (onde muitas precauções padrão e repetíveis podem ser aplicada), mas no tempo de geração, que é muito mais fácil subverter.
Este excelente guia para a realização de uma cerimônia de geração de chaves descreve alguns dos protocolos padrão que podem ajudar a proteger a geração de chaves, embora na maioria se resumam a (a) ter tudo testemunhado por vários auditores qualificados, que estão (b) fazendo registros contemporâneos de tudo o que é feito (c) de acordo com um protocolo pré-determinado, escrito por alguém que não seja o executor.
fonte
Dependendo de sua seriedade, considere usar o hardware FIPS 140-2 ( http://en.wikipedia.org/wiki/FIPS_140#Security_levels ) para armazenar chaves CA e backups dessas chaves. Você deve ter uma CA raiz e uma CA intermediária para manter sua CA raiz offline e protegida fisicamente. A raiz é necessária apenas para renovar ou assinar novas CAs intermediárias, enquanto as CAs intermediárias permanecem on-line para operações diárias. Como outros sugeriram, a geração segura de chaves e o gerenciamento de chaves com controle n de m são importantes.
O CPS da VeriSign (agora Symantec) é uma boa referência de como uma CA comercial gera e protege suas chaves. Veja os capítulos 5 e 6, especificamente: http://www.verisign.com/repository/cps/ . (Trabalhei na VeriSign por vários anos)
Além disso, o NIST tem várias boas publicações sobre gerenciamento de chaves ( http://csrc.nist.gov/publications/drafts/800-57/Draft_SP800-57-Part1-Rev3_May2011.pdf ) e geração, e sua empresa também deve ter um CPS que especifica as políticas e práticas usadas para gerenciar sua CA. O IETF fornece um bom modelo: http://www.ietf.org/rfc/rfc2527.txt
fonte
Ótima pergunta e ótimas respostas também.
Lembre-se de que você está 90% à frente da maioria das outras pessoas simplesmente considerando esse problema em vez de cobrar cegamente.
Tendo isso em mente e adotado os outros conselhos aqui, eu simplesmente acrescentaria: não descanse em seus louros; fique de olho nas notícias de segurança e criptografia para os problemas gerais relacionados à emissão, revogação, quebra de certificados etc., e mais especificamente sobre vulnerabilidades e problemas com os produtos específicos que você usa para gerar e gerenciar suas chaves.
Por fim: segurança física. Fazer algo "à prova de hackers" não ajuda em nada se eu conseguir um emprego como faxineiro em seu prédio e colocar o disco que contém seu certificado raiz no meu bolso um dia. Você ficaria surpreso com quantas pessoas sentem falta dessa.
fonte