Usando seu certificado de assinatura de código

Como usar seu certificado de assinatura de código OV ou EV com SignTool da Microsoft e SSL.com SSL Manager aplicação.
A partir de 1º de março de 2026, entrarão em vigor novos requisitos do setor. Fórum da CA / Navegador limitará o período máximo de validade dos certificados de assinatura de código publicamente confiáveis ​​a 458 dias. Em preparação, SSL.com A partir de 27 de fevereiro de 2026, a Autoridade Certificadora (ACG) começou a aplicar o limite de 458 dias para a emissão de certificados. Essa mudança não afeta o prazo total de validade do pedido do cliente, mas os certificados individuais emitidos dentro desse prazo podem precisar ser reemitidos com mais frequência. Os clientes ainda receberão o valor total da compra, mesmo que cada certificado tenha uma validade menor. Essa atualização é obrigatória para todas as ACGs publicamente confiáveis ​​e visa aprimorar a segurança, reduzindo a exposição a riscos e melhorando a agilidade criptográfica.

Esta página da Web fornece instruções sobre como usar um SSL.com OV or EV certificado de assinatura de código com SignTool da Microsoft e SSL.com SSL Manager.

Estas instruções pressupõem que seu certificado de assinatura de código foi instalado ou que você o possui em um token de hardware. Para assinatura de código baseada em nuvem usando a plataforma eSigner, consulte o página de visão geral e esta guia de inscrição.

Lembre-se de que, para certificados de assinatura de código OV e EV baseados em hardware, a chave privada existe apenas no token USB YubiKey FIPS que foi enviado a você e que o token deve ser anexado ao computador que está sendo usado para assinar o aplicativo. Os usuários do Windows com tokens YubiKey FIPS também devem baixar e instalar o Minidriver de cartão inteligente YubiKey antes de usar seu token.

OV e Os certificados de assinatura de código EV não devem ser instalados manualmente no computador, o que pode causar problemas de configuração. Os certificados enviados em YubiKeys de SSL.com podem ser usados ​​sem instalação adicional além de instalar o Minidriver de cartão inteligente YubiKey e conectar o token ao seu computador. Certificados solicitados via atestado remoto deve ser baixado e instalado no dispositivo que contém a chave privada (por exemplo, YubiKey FIPS ou outro hardware compatível), não no armazenamento de certificados do seu computador.
Se você está planejando assinar drivers do Windows 10 com um certificado de assinatura de código EV, você precisará cadastre-se com o Programa de Desenvolvedor de Hardware do Windows.
Para obter instruções sobre como usar seu certificado de assinatura de código OV / IV ou EV com Java, consulte nosso Guia de assinatura de código Java.

Assinando um executável com Yubikey

Instale Windows SDK e SignTool

O SignTool está incluído no SDK do Windows 10. Após a instalação, o SignTool estará localizado em:

C: \ Arquivos de programas (x86) \ Windows Kits \ 10 \ bin \ \ x64 \ signtool.exe

Acesse o SignTool via Powershell ou Prompt de Comando

O acesso ao SignTool é a primeira parte dos comandos em assinando seu arquivo e verificação a assinatura digital. Tanto o Powershell quanto o Command Prompt podem ser usados ​​para acessar o SignTool. 

Dependendo da versão do Windows OS e da versão do Windows SDK que você estiver usando, o acesso ao SignTool irá variar. Uma das seguintes opções será incluída como a primeira parte do comando: 

  1. .\signtool.exe
  2. .\ferramenta de assinatura
  3. ferramenta de sinalização
  4. signtool.exe
  5. “C:\Arquivos de Programas (x86)\Windows Kits\10\bin\10.0.26100.0\x86\signtool.exe”

Lembre-se de que a chave privada existe apenas no token USB enviado a você e que o token deve ser anexado para o computador que está sendo usado para assinar o aplicativo. 

Placa Executável

Você pode assinar um executável emitindo o seguinte comando na janela do Powershell. 

. \ signtool.exe sign / fd sha256 / a "C: \ path \ to \ MyExecutable.exe"
  • O processo de /fd opção seleciona o algoritmo de resumo a ser usado ao assinar. Versões do Windows 10 SDK, HLK, WDK e ADK 20236 e acima exigem que essa opção seja definida ao assinar. SHA256 é recomendado em vez de SHA1 para segurança.
  • O processo de /a A opção instrui o SignTool a encontrar automaticamente um certificado de assinatura de código apropriado para o seu executável.
  • Será solicitado o PIN do seu token USB. Se precisar de ajuda para encontrar seu PIN, consulte este tutorial.Entrar no pino
Observação: Se estiver assinando arquivos de código que serão incluídos em um instalador (como um arquivo MSI do Windows), você precisará assinar esses arquivos antes de criar o instalador e, em seguida, assinar o próprio arquivo do instalador.

Selecionando um Certificado de Assinatura

Especifique o nome do assunto

Se você tiver mais de um tokens ou certificados USB de assinatura de código instalados, poderá especifique o certificado você deseja usar incluindo sua Nome do assunto via /n opção.

Você pode encontrar o nome do assunto do seu certificado usando a ferramenta de gerenciamento de certificados da Microsoft certificado. Abra a ferramenta no menu Iniciar e procure o seu certificado na pasta “Pessoal”, em “Certificados”, conforme imagem abaixo. O nome do assunto é o campo “Emitido para” em certmgr.

Na imagem acima, o nome do assunto do certificado é example. Você pode especificar esse valor no SignTool com o seguinte comando.

. \ signtool.exe sign / fd sha256 / n "exemplo" "C: \ caminho \ para \ MeuExecutável.exe"

Especifique SHA1 Hash

Se você tiver vários certificados com o mesmo Nome de Assunto, você também pode usar o hash SHA1 (ou “impressão digital”) de um certificado para selecioná-lo para assinatura. Você pode encontrar esse valor seguindo estas instruções:

Abra o repositório de certificados do usuário digitando certmgr.msc na barra de pesquisa do Windows. Assim que a janela do Gerenciador de Certificados aparecer, navegue até o Pessoal pasta no painel esquerdo e selecione o Profissionais subpasta à direita para encontrar seu certificado de assinatura de código.

Clique duas vezes no certificado, vá para o Detalhes aba e role para baixo para localizar o Impressão digital. Copie a impressão digital e inclua-a no seu comando ao assinar o código. 

. \ signtool.exe sign / fd sha256 / sha1 THUMBPRINT "C: \ path \ to \ MyExecutable.exe"

Observação: pode haver casos em que vários certificados de assinatura de código com o mesmo nome aparecem na loja porque um usuário possui vários tokens USB. Se você não tiver certeza de qual escolher, escolha aquele com o número de série que corresponde ao que está indicado na sua página de detalhes do pedido SSL.com. Provavelmente, você vai querer escolher o certificado com a data de expiração mais recente. 

 Para verificar completamente o certificado que você deve usar, siga estas instruções:

  1. Faça login em sua conta SSL.com e clique no botão Pedidos aba. Localize seu pedido de certificado e clique no download link para exibir os detalhes do seu certificado. 

  2. Role para baixo e clique no botão CERTIFICADOS DA ENTIDADE FINAL seção. Debaixo de Certificado de assinatura de código subseção, você verá o número de série do seu certificado.

  3. Execute uma verificação cruzada. Clique duas vezes no certificado no Certificate Manager do seu computador. Clique Detalhes. Verifique se os números de série correspondem. 

Use um arquivo PKCS # 12 / PFX

Se você tiver um certificado de assinatura de código e uma chave privada em um arquivo PKCS # 12 (também conhecido como arquivo PFX ou P12), poderá especificar o arquivo e sua senha na linha de comando:

. \ signtool.exe sign / fd sha256 / f "C: \ path \ to \ MyCertificate.pfx" / p senha "C: \ path \ to \ MyExecutable.exe"

Registro de data e hora

O registro de data e hora em seu código permitirá que ele seja confiável após a expiração do certificado de assinatura de código. Se você quiser adicionar um timestamp no arquivo binário assinado, você pode fazer isso usando SignTool's /tr opção, que deve ser seguida pela definição do algoritmo de resumo do carimbo de data / hora com /td. O comando no snippet abaixo inclui um carimbo de data / hora de SSL.comserviço de carimbo de data / hora do ao assinar um executável.

. \ signtool.exe sign / fd sha256 / tr http://ts.ssl.com / td sha256 / a "C: \ path \ to \ MyExecutable.exe"
Observação: Certifique-se de usar SignTool's /tr opção (especifique o URL do servidor de carimbo de data / hora RFC 3161), não /t (URL do servidor de carimbo de hora), que é incompatível com o servidor de carimbo de data / hora SSL.com
Observação: O processo de /td opção devo a seguir /tr opção. Se o algoritmo de compilação de registro de data e hora for especificado antes do servidor de registro de data e hora, o algoritmo SHA-1 padrão será usado. Versões do Windows 10 SDK, HLK, WDK e ADK 20236 e acima requer o uso de /tr ao registrar o tempo. SHA256 é recomendado em vez de SHA1 para segurança.
Observação: Por padrão, SSL.com oferece suporte a registros de data e hora de chaves ECDSA.

Se você encontrar este erro: The timestamp certificate does not meet a minimum public key length requirement, você deve entrar em contato com o fornecedor do software para permitir registros de data e hora das chaves ECDSA.

Se não houver como seu fornecedor de software permitir o uso do endpoint normal, você poderá usar esse endpoint legado http://ts.ssl.com/legacy para obter um registro de data e hora de uma unidade de registro de data e hora RSA.

Outras opções

Outras opções importantes do SignTool são:

  • /d: Adicione uma descrição do código assinado. Por exemplo, /d "test code".
  • /du: Adicione um URL com uma descrição expandida do código assinado. Por exemplo, /du https://your_website.tld/project/description.

Usando todas as opções acima (mas omitindo /a, /sha1, ou /f porque estamos especificando o nome do assunto do certificado com /n, nossa linha de comando se parece com:

signtool.exe sign / n "exemplo" / fd sha256 / tr http://ts.ssl.com / td sha256 / d "código de teste" / du https: //your_website.tld/project/description "C: \ path \ to \ MyExecutable.exe "

Verificar assinatura

Use este comando para verificar o seu código assinado (observe que o /pa opção deve estar presente no comando):

. \ signtool.exe verificar / pa "C: \ caminho \ para \ MeuExecutável.exe"

Se o seu arquivo foi assinado com sucesso, você verá uma saída como esta:

Arquivo: C: \ path \ to \ MyExecutable.exe Index Algorithm Timestamp ======================================= ===== 0 sha256 RFC3161 Verificado com sucesso: C: \ path \ to \ MyExecutable.exe

Você também pode verificar se um arquivo foi assinado clicando com o botão direito em seu ícone e selecionando Propriedades no menu, selecionando o Assinaturas digitais aba. Visualize os detalhes sobre uma assinatura selecionando-a e clicando no Detalhes botão.

Assinaturas digitais

Aqui podemos ver que o arquivo contém uma assinatura digital válida, criada pela SSL Corp em 28 de junho de 2020.

Detalhes de assinatura digital

Assinando um executável com SSL Manager

Se você preferir uma abordagem mais baseada em gráficos, poderá usar SSL.como software interno da empresa, SSL Manager, para assinar seus arquivos. Muitos clientes preferem usar SSL Manager porque oferece o benefício adicional de ter acesso fácil a todos os seus certificados em uma interface unificada. Para obter instruções sobre como baixar e instalar SSL Manager, consulte a nossa Guia de instalação.

Para assinar um executável, comece selecionando Assinatura de código> Pacote de código de assinatura e registro de data e hora da SSL Managermenu de.

Pacote de código de assinatura e data e hora

No formulário de assinatura de código, você pode selecionar o executável e o certificado de assinatura de código (de um arquivo ou de um armazenamento de certificados) e um dos servidores de carimbo de data / hora disponíveis. Quando terminar, clique no ícone Placa botão para assinar seu código. Será solicitado o PIN do seu token USB.

Além da assinatura de código, SSL Manager oferece muitos recursos poderosos. Para obter mais detalhes, consulte SSL Managerdocumentação de, especialmente o Menu Assinatura de código.

Assinatura de código com um token USB Thales SafeNet (Gemalto)

Observação: SSL.com envia tokens Thales SafeNet pré-instalados com certificados de assinatura de código. Não exclua nenhum material do token.

Esta seção demonstra como assinar código usando o certificado de assinatura de código SSL.com, o token USB Thales SafeNet (Gemalto) e o Safenet Authentication Client. 

O token Thales SafeNet pode armazenar todos os tipos de certificados de assinatura de código SSL.com e suas chaves privadas. Isso inclui certificados de assinatura de código de identidade pessoal, certificados de assinatura de código de validação da organização e certificados de assinatura de código de validação estendida.

SafeNet Authentication Client é uma solução de middleware que lida com o abrangente portfólio SafeNet de autenticadores baseados em certificados da Thales. Isso inclui eTokens, cartões inteligentes SafeNet IDPrime, SafeNet IDPrime Virtual e cartões combinados PKI/Dispositivos FIDO.

Para obter instruções sobre como alterar sua senha de assinatura de código para tokens Thales SafeNet (Gemalto) ou recuperar o acesso a um token bloqueado, consulte este artigo do SSL.com: Como alterar sua senha do Thales SafeNet/Gemalto Token

Requisitos

  1. Kit de desenvolvimento do Windows instalado no seu computador
  2. SafeNet Authentication Client instalado no seu computador. Para instruções, consulte este guia SSL.com: Download do cliente de autenticação SafeNet para certificados de assinatura de código
  3. Um token Thales SafeNet contendo um certificado de assinatura de código SSL.com pré-instalado. O token Thales SafeNet deve ser ativado seguindo estas etapas: 
    1. Localize o número de série do seu token Thales. Esta é uma série de letras e números impressas na superfície do seu token. 
    2. Faça login em sua conta SSL.com.
    3. Clique na Pedidos guia, seguido pelo download link do seu pedido de certificado para exibir seus detalhes. No tokens físicos seção, ative seu token Thales colocando seu número de série no campo atribuído. Após a ativação do seu token Thales, o tokens físicos seção exibirá seu PIN de ativação e PIN de administrador. O PIN de ativação também é conhecido como o Senha do token e você será solicitado a inserir isso ao assinar seu arquivo. O PIN de administrador também é conhecido como o PUK – isso é necessário ao definir uma nova senha de token em um token bloqueado. 

Etapas para assinar código com um token Thales SafeNet

  1. Ligue o seu Token Thales SafeNet para o seu computador. 
  2. Abra Cliente de autenticação Safenet.
  3. Configure o comando para assinar seu código:
    signtool assinar /tr http://ts.ssl.com /td sha256 /fd sha256 /a "PATH_OF_FILE_TO_BE_SIGNED"
    Legenda:
    /fd sha256 seleciona o algoritmo de resumo a ser usado ao assinar.
    / tr http://ts.ssl.com especifica o endereço do servidor de carimbo de data/hora
    /td sha256 especifica o algoritmo de resumo do carimbo de data/hora
    /a instrui o SignTool a encontrar automaticamente um certificado de assinatura de código apropriado para o seu arquivo.

    caminho de arquivo assinável: O caminho do seu arquivo deve estar entre aspas duplas.
    Tome nota para incluir o nome do seu arquivo assinável no caminho. Exemplo: /arquivo de teste.dll

    Observação: Alguns usuários podem enfrentar este erro com o comando sign: 'Signtool' não é reconhecido como um comando interno ou externo, programa operável ou arquivo em lote. A solução para este erro é remover o texto ferramenta de sinalização do comando e substitua-o pelo caminho para signtool.exe. O caminho deve ser colocado entre aspas duplas.
    “C:\Arquivos de programas (x86)\Windows Kits\10\folder\folder\x86\signtool.exe” sinal /tr http://ts.ssl.com/ /td sha256 /fd sha256 /a "C:\ Usuários\Admin\Documentos\arquivos de teste\arquivo de teste.dll"
  4. Execute Prompt de comando como administrador e coloque o comando assinar. Depois, pressione Entrar.

  5. Você verá a mensagem Concluído a adição de loja adicional. Um pouco depois, você será solicitado a colocar seu Senha do token. Como afirmado no Requisitos seção acima, a senha do token é igual à PIN de ativação e isso pode ser visualizado na página de pedido de certificado SSL.com. Clique no OK botão para finalizar a assinatura do código.

  6. Sucesso! Seu arquivo agora está assinado. O prompt de comando irá notificá-lo sobre a assinatura bem-sucedida. 

Opções para assinar código

1. Especifique o nome do assunto do certificado

Se você possuir vários tokens ou certificados USB de assinatura de código, poderá selecionar qual certificado específico usar incorporando seu nome de assunto por meio da opção /n.

Você pode visualizar o nome do assunto do seu certificado clicando no ícone de engrenagem no SafeNet Authentication Client para permitir uma visualização avançada. Em seguida, clique na seta para Certificados de usuário para exibir todos os certificados instalados no token. Copie o nome do certificado que você deseja usar.

O comando de sinal usando o /n opção se parece com o seguinte. O Nome do Assunto do seu certificado deve ser colocado entre aspas duplas. 

Sinal “PATH OF SIGNTOOL.EXE” /tr http://ts.ssl.com/ /td sha256 /fd sha256 /n "NOME DO ASSUNTO DO CERTIFICADO" “PATH_OF_FILE_TO_BE_SIGNED”

2. Especifique a impressão digital do certificado

Se você possuir vários certificados com nomes de entidades idênticos, poderá distinguir e selecionar um para assinatura usando seu hash SHA1, comumente chamado de “impressão digital”. Para fazer isso, substitua IMPRESSÃO DIGITAL no comando a seguir com o hash SHA1 real do seu certificado.

Você pode visualizar o valor da impressão digital do seu certificado clicando no ícone de engrenagem no SafeNet Authentication Client para permitir uma visualização avançada. Em seguida, clique na seta para Certificados de usuário. Clique duas vezes no certificado que deseja usar. Clique no Detalhes aba. Por fim, role para baixo até o Impressão digital campo. 


No comando de sinal, substitua o texto IMPRESSÃO DIGITAL com o valor real da impressão digital do seu certificado. 

Sinal “PATH OF SIGNTOOL.EXE” /tr http://ts.ssl.com/ /td sha256 /fd sha256 /SHA1 THUMBPRINT “PATH_OF_FILE_TO_BE_SIGNED”

Verifique a assinatura

Você pode verificar a assinatura digital aplicada clicando com o botão direito no arquivo assinado para ver suas propriedades. 

  1. Clique na Assinaturas digitais aba. Passe o mouse até o Lista de assinaturas caixa e clique no nome exibido do seu certificado para destacá-lo. Clique no Detalhes caixa para prosseguir. 

  2. Você poderá ver o nome do certificado usado para assinar o arquivo, bem como a data e hora em que foi assinado e o carimbo de data/hora.

NOTAChaves privadas para certificados de assinatura de código SSL não pode ser exportado, e certificados não podem ser disponibilizados como arquivos .pfx para downloadOs certificados devem ser gerados e armazenados usando uma opção segura aprovada, como um Token USB YubiKey validado pela FIPS 140-2, SSL's Serviço de assinatura em nuvem eSigner HSM em nuvem compatível.

Obrigado por escolher SSL.com! Se você tiver alguma dúvida, entre em contato conosco por e-mail em Support@SSL.com, ligar 1-877-SSL-SECUREou clique no link de bate-papo no canto inferior direito desta página.

Mantenha-se informado e seguro

SSL.com é líder global em segurança cibernética, PKI e certificados digitais. Inscreva-se para receber as últimas notícias do setor, dicas e anúncios de produtos da SSL.com.

SSL.com

Adoraríamos receber seu feedback

Responda à nossa pesquisa e deixe-nos saber sua opinião sobre sua compra recente.

Visão geral de privacidade
SSL.com

Este site usa cookies para que possamos oferecer a melhor experiência possível ao usuário. As informações sobre cookies são armazenadas no seu navegador e desempenham funções como reconhecê-lo quando você retornar ao nosso site e ajudar nossa equipe a entender quais seções do site você acha mais interessantes e úteis.

Para mais informações, leia nossa Declaração de privacidade e cookies.

Cookies de terceiros

Este site usa Google Analytics & Contador de estatísticas para coletar informações anônimas, como o número de visitantes do site e as páginas mais populares.

Manter esses cookies habilitados nos ajuda a melhorar nosso site.

Mostrar detalhes