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 a identidade visual e os 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 da 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 tenha sido alterado após a criação da assinatura.
As assinaturas digitais podem ser criadas e verificadas usando as APIs de criptografia da Microsoft. Para obter informações 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:
- Hashes e assinaturas digitais
- Certificados Digitais
- Gerenciando certificados com repositórios de certificados
- Verificação de confiança do certificado
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 windows empacotados. |
.cab |
Arquivos autocontidos usados para instalação e instalação do aplicativo. Em um arquivo de gabinete, vários arquivos são compactados em um arquivo. Normalmente, eles são 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 |
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 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 assinatura digital, consulte os seguintes documentos:
- CCITT, Recomendação X.509, The Directory-Authentication Framework, Consultation Committee, International Telephone 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. 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 do Publicador de Software (SPC) somente para fins de teste. |
CertMgr.exe | Gerencia certificados, CTLs e CRLs ( listas de revogação de certificados ). |
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 (Troca de Informações Pessoais). |
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. |