Ferramentas de criptografia

As ferramentas de criptografia fornecem ferramentas de linha de comando para assinatura de código, verificação de assinatura e outras tarefas de criptografia.

Introdução à Assinatura de Código

O setor de software deve fornecer aos usuários os meios para confiar no código, incluindo o código publicado na Internet. Muitas páginas da Web contêm apenas informações estáticas que podem ser baixadas com pouco risco. Algumas páginas, no entanto, contêm controles e aplicativos a serem baixados e executados no computador de um usuário. Esses arquivos executáveis podem ser arriscados para baixar e executar.

O software empacotado usa marcas e pontos de venda confiáveis para garantir aos usuários sua integridade, mas essas garantias não estão disponíveis quando o código é transmitido na Internet. Além disso, a própria Internet não pode fornecer nenhuma garantia sobre a identidade do criador de software. Também não pode garantir que qualquer software baixado não tenha sido alterado após sua criação. Os navegadores podem exibir uma mensagem de aviso que explica os possíveis perigos de baixar dados de qualquer tipo, mas os navegadores não podem verificar se o código é o que ele afirma ser. Uma abordagem mais ativa deve ser tomada para tornar a Internet um meio confiável para distribuir software.

Uma abordagem para fornecer garantias de autenticidade e integridade dos arquivos é anexar assinaturas digitais a esses arquivos. Uma assinatura digital anexada a um arquivo identifica positivamente o distribuidor desse arquivo e garante que o conteúdo do arquivo não foi alterado depois que a assinatura foi criada.

As assinaturas digitais podem ser criadas e verificadas usando as APIs de criptografia da Microsoft. Para obter informações em segundo plano sobre criptografia e as funções CryptoAPI , consulte Cryptography Essentials.

Para obter informações detalhadas sobre assinaturas digitais, certificados e repositórios de certificados, consulte os seguintes tópicos:

Atualmente, as Ferramentas de CryptoAPI dão suporte à tecnologia Microsoft Authenticode, permitindo que os fornecedores de software assinem os seguintes tipos de arquivos para verificação do Authenticode.

Extensão de nome de arquivo Sumário
.appx, .msix, .appxbundle, .msixbundle
Aplicativos de Windows empacotados.
.cab
Arquivos independentes usados para instalação e instalação do aplicativo. Em um arquivo de gabinete, vários arquivos são compactados em um arquivo. Eles são comumente encontrados em discos de distribuição de software da Microsoft.
.cat
Arquivos que contêm impressões digitais de vários arquivos. Um arquivo .cat pode ser usado para garantir a integridade dos arquivos cujas impressões digitais ele inclui.
.dll
Arquivos que contêm funções executáveis.
.exe
Arquivos que contêm programas executáveis.
.js
.vbs
.wsf
Windows arquivos de shell para JScript ou VBScript (Microsoft Visual Basic Scripting Edition).
.msi
.msp
.mst
Windows arquivos do instalador.
.ocx
Arquivos que contêm controles do Microsoft ActiveX.
.ps1
Arquivos que contêm scripts do PowerShell.
.stl
Arquivos que contêm uma CTL ( lista de confiança de certificado ).
.sys
Arquivos que contêm binários de driver.

 

Para obter informações sobre a assinatura digital, consulte os seguintes documentos:

  • CCITT, Recomendação X.509, The Directory-Authentication Framework, Consultation Committee, International Phone and Telegraph, International Telecommunications Union, Geneva, 1989.
  • Laboratórios RSA, PKCS nº 7: Sintaxe de mensagem criptográfica Standard. Versão 1.5, novembro de 1993.
  • Schneier, Bruce, Criptografia Aplicada, 2d ed. Nova Iorque: John Wiley & Sons, 1996.
  • https://www.rsa.com

Observação

Esses recursos podem não estar disponíveis em alguns idiomas e países ou regiões.

 

Ferramentas de Criptografia da Microsoft

As ferramentas de publicação e a DLL de assinatura são instaladas no diretório \Bin da instalação do SDK da Microsoft. Eles incluem os arquivos a seguir.

Nome do arquivo Comentários
Cert2SPC.exe Cria um Certificado de Publisher de Software (SPC) somente para fins de teste.
CertMgr.exe Gerencia certificados, CTLs e CRLs ( listas de revogação de certificado ).
MakeCat.exe Cria um arquivo de catálogo sem sinal que contém os hashes de um conjunto de arquivos, juntamente com atributos associados de cada arquivo.
MakeCert.exe Cria um certificado X.509 somente para fins de teste.
Pvk2pfx.exe Converte um arquivo de certificado do editor de software (.spc) ou um arquivo de chave privada (.pvk) em formato de arquivo PFX (Personal Information Exchange).
SetReg.exe Define as chaves do Registro que controlam a verificação do certificado.
SignTool.exe Sinais e carimbos de data/hora de um arquivo. Além disso, verifica a assinatura de um arquivo.