Herramientas de criptografía

Las herramientas de criptografía proporcionan herramientas de línea de comandos para la firma de código, la verificación de firmas y otras tareas de criptografía.

Introducción a la firma de código

El sector de software debe proporcionar a los usuarios los medios para confiar en el código, incluido el código publicado en Internet. Muchas páginas web contienen solo información estática que se puede descargar con poco riesgo. Sin embargo, algunas páginas contienen controles y aplicaciones que se van a descargar y ejecutar en el equipo de un usuario. Estos archivos ejecutables pueden ser peligrosos para descargar y ejecutar.

El software empaquetado usa la personalización de marca y los puntos de venta de confianza para asegurar a los usuarios su integridad, pero estas garantías no están disponibles cuando el código se transmite en Internet. Además, Internet en sí no puede proporcionar ninguna garantía sobre la identidad del creador de software. Tampoco puede garantizar que cualquier software descargado no se alteró después de su creación. Los exploradores pueden mostrar un mensaje de advertencia que explica los posibles peligros de descargar datos de cualquier tipo, pero los exploradores no pueden comprobar que el código es lo que dice ser. Se debe adoptar un enfoque más activo para que Internet sea un medio confiable para distribuir software.

Un enfoque para proporcionar garantías de autenticidad e integridad de los archivos es adjuntar firmas digitales a esos archivos. Una firma digital adjunta a un archivo identifica positivamente el distribuidor de ese archivo y garantiza que el contenido del archivo no se cambió después de crear la firma.

Las firmas digitales se pueden crear y comprobar mediante las API de criptografía de Microsoft. Para obtener información general sobre la criptografía y las funciones CryptoAPI , consulte Cryptography Essentials.

Para obtener información detallada sobre firmas digitales, certificados y almacenes de certificados, consulte los temas siguientes:

Actualmente, CryptoAPI Tools admite la tecnología Microsoft Authenticode al permitir que los proveedores de software firmen los siguientes tipos de archivos para la comprobación de Authenticode.

Extensión de nombre de archivo Contenido
.appx, .msix, .appxbundle, .msixbundle
Aplicaciones de Windows empaquetadas.
.cab
Archivos independientes que se usan para la instalación y configuración de la aplicación. En un archivo de archivador, varios archivos se comprimen en un archivo. Normalmente se encuentran en discos de distribución de software de Microsoft.
.cat
Archivos que contienen huellas digitales de varios archivos. Se puede usar un archivo .cat para garantizar la integridad de los archivos cuyas huellas digitales incluye.
.dll
Archivos que contienen funciones ejecutables.
.exe
Archivos que contienen programas ejecutables.
.js
.vbs
.wsf
Archivos de shell de Windows para JScript o Microsoft Visual Basic Scripting Edition (VBScript).
.msi
.msp
.mst
Archivos de Windows Installer.
.ocx
Archivos que contienen controles Microsoft ActiveX.
.ps1
Archivos que contienen scripts de PowerShell.
.stl
Archivos que contienen una lista de confianza de certificados (CTL).
.sys
Archivos que contienen archivos binarios de controladores.

 

Para obtener información sobre la firma digital, consulte los siguientes documentos:

  • CCITT, Recomendación X.509, Marco Directory-Authentication, Comité de Consulta, Teléfono Internacional y Telégrafo, Unión Internacional de Telecomunicaciones, Ginebra, 1989.
  • Laboratorios RSA, PKCS #7: Estándar de sintaxis de mensajes criptográficos. Versión 1.5, noviembre de 1993.
  • Schneier, Bruce, Criptografía aplicada, 2d ed. Nueva York: John Wiley & Sons, 1996.
  • https://www.rsa.com

Nota

Es posible que estos recursos no estén disponibles en algunos idiomas y países o regiones.

 

Herramientas de criptografía de Microsoft

Las herramientas de publicación y el archivo DLL de firma se instalan en el directorio \Bin de la instalación del SDK de Microsoft. Incluyen los siguientes archivos.

Nombre de archivo Comentarios
Cert2SPC.exe Crea un certificado de publicador de software (SPC) solo con fines de prueba.
CertMgr.exe Administra certificados, CTL y listas de revocación de certificados (CRL).
MakeCat.exe Crea un archivo de catálogo sin firmar que contiene los hashes de un conjunto de archivos junto con los atributos asociados de cada archivo.
MakeCert.exe Crea un certificado X.509 solo con fines de prueba.
Pvk2pfx.exe Convierte un archivo de certificado del editor de software (.spc) o un archivo de clave privada (.pvk) en formato de archivo de Intercambio de información personal (PFX).
SetReg.exe Establece las claves del Registro que controlan la comprobación del certificado.
SignTool.exe Firma y marca de tiempo un archivo. Además, comprueba la firma de un archivo.