Partilhar via


Autenticação de assinatura de provedores de serviços criptográficos (CSPs) de terceiros

A assinatura do Authenticode de terceiros para CSPs (Provedores de Serviços Criptográficos) personalizados está disponível no Windows Vista e posterior.

Consequentemente, a Microsoft não assinará mais CSPs e o serviço de assinatura CSP manual foi desativado. Emails e CSPs enviados para cspsign@microsoft.com ou cecspsig@microsoft.com para serem assinados não serão mais processados pela Microsoft.

Em vez disso, todos os CSPs de terceiros agora podem ser autoassinados seguindo este procedimento:

  1. Compre um certificado de assinatura de código de uma AC (Autoridade de Certificação) para a qual a Microsoft também emite um certificado cruzado. O tópico Cross-Certificates for Kernel Mode Code Signing fornece uma lista de ACs para as quais a Microsoft também fornece certificados cruzados e os certificados cruzados correspondentes. Observe que esses são os únicos certificados cruzados que se encadeiam à "Raiz de Verificação de Código da Microsoft" emitida pela Microsoft, o que permitirá que o Windows execute CSPs de terceiros.
  2. Depois de ter um certificado da AC e do certificado cruzado correspondente, você pode usar SignTool para assinar todos os binários do CSP.
  3. O SignTool está incluído nas versões mais recentes do Visual Studio. Ele também está incluído no WDK versão 7.0 e versões mais recentes. Observe que o SignTool fornecido com versões anteriores do WDK não é compatível com certificados cruzados e não pode ser usado para assinar seus binários.

Observação

A partir do Windows 8, não é mais um requisito que os CSPs devem ser assinados.

Você pode assinar binários de uma linha de comando ou assinar como uma etapa de build integrada no Visual Studio 2012 e mais recente.

O comando para SignTool é:

signtool.exe sign /ac <cross-certificate_from_ms> /sha1 <sha1_hash> /t <timestamp_server> /d <”optional_description_in_double_quotes”> <binary_file.ext>
  • <cross-certificate_from_ca> é o arquivo de certificado cruzado que você baixou da Microsoft
  • < > sha1_hash é a impressão digital SHA1 que corresponde ao certificado de assinatura de código
  • < > timestamp_server é o servidor usado para carimbo de data/hora da operação de assinatura
  • <"optional_description_in_double_quotes"> é uma descrição opcional de nome amigável
  • <binary_file.ext> é o arquivo a ser assinado

Por exemplo:

signtool.exe sign /ac certificate.cer /sha1 553e39af9e0ea8c9edcd802abbf103166f81fa50 /t "http://timestamp.digicert.com" /d "My Cryptographic Service Provider" csp.dll

Observação

É desnecessário incluir a ID de recurso nº 666 na DLL do CSP ou a assinatura no registro, conforme necessário para assinaturas CSP mais antigas.

Ajuda e suporte adicionais

Você pode experimentar o fórum segurança do aplicativo para Área de Trabalho do Windows para obter assistência.