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:
- 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 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. |