Usando repositórios de certificados

[CAPICOM é um componente somente de 32 bits que está disponível para uso nos seguintes sistemas operacionais: Windows Server 2008, Windows Vista e Windows XP. Em vez disso, use o .NET Framework para implementar recursos de segurança. Para obter mais informações, consulte Alternativas ao uso de CAPICOM.]

O CAPICOM usa certificados digitais para criar assinaturas, criptografar chaves de criptografia de sessão ao criar mensagens em envelope e descriptografar chaves de sessão criptografadas quando uma mensagem enveloped é recebida. Por padrão, CAPICOM usa certificados no Meu repositório que têm uma chave privada associada para criação de assinaturas digitais e descriptografia de chave de sessão. Na maioria dos casos, um aplicativo nunca precisaria abrir ou lidar diretamente com um repositório de certificados.

No entanto, os aplicativos que criam mensagens enveloped usam a chave pública de cada destinatário pretendido de uma mensagem enveloped. Essas chaves são recuperadas dos certificados dos destinatários pretendidos. Assim, para criar mensagens em envelope para um grupo de destinatários pretendidos, os certificados desses destinatários seriam coletados em um repositório de certificados.

A tabela a seguir lista os repositórios de certificados padrão normalmente persistidos em uma estação de usuário.

Repositório Descrição
Meu Contém certificados pessoais. Esses certificados geralmente terão uma chave privada associada.
Outras pessoas Contém os certificados daqueles para os quais o usuário normalmente envia mensagens envelopeadas ou recebe mensagens assinadas.
Ca e Root Contém os certificados das autoridades de certificação em que o usuário confia para emitir certificados para outras pessoas. Os certificados nesses repositórios normalmente são fornecidos com o sistema operacional ou pelo administrador de rede do usuário. Os certificados no repositório Raiz normalmente são autoassinados.

 

Repositórios de CAPICOM_CURRENT_USER adicionais podem ser criados, abertos e persistidos fornecendo um nome de repositório diferente como uma cadeia de caracteres. Se um repositório com esse nome não existir, um repositório vazio será criado e aberto. Se um repositório existir, ele será aberto e todos os certificados atualmente no repositório serão disponibilizados.

As seções a seguir mostram exemplos para tarefas do repositório de certificados: