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:
- Hashes y firmas digitales
- Certificados digitales
- Administración de certificados con almacenes de certificados
- Comprobación de confianza de certificados
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. |