Partilhar via


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

A indústria 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 para serem baixados e executados no computador de um usuário. Esses arquivos executáveis podem ser arriscados para baixar e executar.

O software embalado 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 qualquer garantia sobre a identidade do criador do software. Também não pode garantir que qualquer software descarregado não foi alterado após a sua criação. Os navegadores podem exibir uma mensagem de aviso que explica os possíveis perigos do download de dados de qualquer tipo, mas os navegadores não podem verificar se o código é o que afirma ser. Deve ser adotada uma abordagem mais ativa para tornar a Internet um meio fiável de distribuição de 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 após a assinatura ter sido criada.

As assinaturas digitais podem ser criadas e verificadas usando as APIs de criptografia da Microsoft. Para obter informações básicas sobre criptografia e as funçõesCryptoAPI, consulte Cryptography Essentials.

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

Atualmente, o CryptoAPI Tools suporta a 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 Índice
.appx, .msix, .appxbundle, .msixbundle
Pacotes de aplicativos do Windows.
.cab
Arquivos autônomos usados para instalação e configuração de aplicativos. 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
Os ficheiros que contêm impressões digitais digitais de vários ficheiros. 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
Arquivos de shell do Windows para JScript ou Microsoft Visual Basic Scripting Edition (VBScript).
.msi
.msp
.mst
Arquivos do instalador do Windows.
.ocx
Arquivos que contêm controles Microsoft ActiveX.
.ps1
Arquivos que contêm scripts do PowerShell.
.stl
Arquivos que contêm uma lista de confiança de certificado (CTL).
.sys
Arquivos que contêm binários de driver.

 

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

  • CCITT, Recomendação X.509, The Directory-Authentication Framework, Comité de Consulta, International Telephone and Telegraph, União Internacional das Telecomunicações, Genebra, 1989.
  • RSA Laboratories, PKCS #7: Cryptographic Message Syntax Standard. Versão 1.5, novembro de 1993.
  • Schneier, Bruce, Applied Cryptography, 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 Microsoft SDK. Eles incluem os seguintes arquivos.

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