Archivos de catálogo y firmas digitales
Un archivo de catálogo firmado digitalmente (.cat) se puede usar como firma digital para una colección arbitraria de archivos. Un archivo de catálogo contiene una colección de hash criptográficos o huellas digitales. Cada huella digital corresponde a un archivo que se incluye en la colección.
La instalación de dispositivos Plug and Play (PnP) reconoce el archivo de catálogo firmado de un paquete de controladores como firma digital para el paquete de controladores. Cada huella digital del archivo de catálogo corresponde a un archivo que instala el paquete de controladores. Independientemente del sistema operativo previsto, la tecnología criptográfica se usa para firmar digitalmente el archivo de catálogo.
La instalación de dispositivos PnP considera que la firma digital de un paquete de controladores no es válida si se modifica algún archivo del paquete de controladores después de que se haya firmado el paquete del controlador. Estos archivos incluyen el archivo INF, el archivo de catálogo y todos los archivos que copian las directivas CopyFiles de INF. Por ejemplo, incluso un cambio de un solo byte para corregir una falta de ortográfico invalida la firma digital. Si la firma digital no es válida, debe volver a enviar el paquete de controladores al Centro de desarrollo de hardware de Windows para una nueva firma o generar una nueva firma Authenticode para el paquete de controladores.
Del mismo modo, los cambios en el hardware o firmware de un dispositivo requieren un valor de identificador de dispositivo revisado para que el sistema pueda detectar el dispositivo actualizado e instalar el controlador correcto. Dado que el valor de id. de dispositivo revisado debe aparecer en el archivo INF, debe volver a enviar el paquete a windows Centro de desarrollo de hardware para una nueva firma o generar una nueva firma Authenticode para el paquete de controladores. Debe obtener un nuevo identificador de dispositivo aunque los archivos binarios del controlador no cambien.
La directiva CatalogFile de la sección Versión INF del archivo INF del controlador especifica el nombre del archivo de catálogo para el paquete de controladores. Durante la instalación del controlador, el sistema operativo usa la directiva CatalogFile para identificar y validar el archivo de catálogo. El sistema instala el archivo de catálogo en el directorio CatRoot en el directorio del sistema devuelto por GetSystemDirectory, por ejemplo, %SystemRoot%\System32\CatRoot. Los archivos de catálogo no se deben agregar ni quitar manualmente de ese directorio. En el caso de los paquetes de controladores, el archivo de catálogo se instala automáticamente en CatRoot cuando el paquete de controladores se almacena provisionalmente en el Almacén de controladores. El archivo de catálogo se desinstala automáticamente de CatRoot cuando se quita el paquete de controladores del Almacén de controladores. Si necesita instalar un archivo de catálogo en CatRoot por motivos fuera de un paquete de controladores, consulte Instalación de un archivo de catálogo mediante SignTool e Instalación de un archivo de catálogo mediante CryptCATAdminAddCatalog.
Directrices para archivos de catálogo
A partir de Windows 2000, si el paquete de controladores instala los mismos archivos binarios en todas las versiones de Windows, el archivo INF puede contener una única directiva CatalogFile sin codificar. Sin embargo, si el paquete instala archivos binarios diferentes para distintas versiones de Windows, el archivo INF debe contener directivas CatalogFile decoradas. Para obtener más información sobre la directiva CatalogFile , consulte sección versión inf.
Si tiene más de un paquete de controladores, debe crear un archivo de catálogo independiente para cada paquete de controladores y asignar a cada archivo de catálogo un nombre de archivo único. Dos paquetes de controladores no relacionados no pueden compartir un único archivo de catálogo. Sin embargo, un único paquete de controladores que atiende varios dispositivos solo requiere un archivo de catálogo.