Compartir a través de


Minidrivers de tarjeta inteligente

El minidriver de tarjeta inteligente proporciona una alternativa más sencilla para desarrollar un proveedor de servicios criptográficos (CSP) heredado encapsulando la mayoría de las operaciones criptográficas complejas del desarrollador de minidriver de tarjetas.

Para obtener información sobre la especificación de minidrivers de tarjeta inteligente, consulte Especificación de minidriver de tarjeta inteligente.

A partir de Windows Vista, las aplicaciones pueden usar microsoft Cryptography API: Next Generation (CNG) para servicios criptográficos basados en tarjetas inteligentes. Como parte del esfuerzo de criptografía de curva elíptica (ECC) que se introdujo en Windows Vista, las tarjetas inteligentes ECC se admiten en el nuevo marco criptográfico. Las aplicaciones e interfaces que interactúan con los minicontroladores de tarjetas Rivest-Shamir-Adleman (RSA) existentes a través del subsistema CAPI heredado siguen funcionando sin modificaciones.

Los minidrivers de tarjeta inteligente RSA también se pueden registrar con el proveedor de almacenamiento de claves de tarjeta inteligente (KSP) para que se puedan llamar a través de la interfaz CNG. Las solicitudes ECC/RSA + SOLO ECC de modo dual se enrutan al KSP y, a través de ella, a los minicontroladores de tarjeta adecuados. En el caso de los clientes basados en Windows Vista, las tarjetas de modo dual ECC/RSA y ECC/RSA son compatibles con el marco de la tarjeta inteligente de Windows. También se puede acceder a las tarjetas de modo dual a través de CAPI principalmente para exponer características solo rsa.

Las aplicaciones usan CAPI para servicios criptográficos basados en tarjetas inteligentes. CAPI, a su vez, enruta estas solicitudes al CSP adecuado para controlar los requisitos criptográficos.

Microsoft Smart Card Base CSP y KSP es un refinamiento de la arquitectura que separa la funcionalidad de CSP basada en CAPI y KSP basada en CNG, respectivamente, de los detalles de implementación que deben cambiar para cada proveedor de tarjetas.

Aunque CSP base puede usar las funcionalidades RSA de una tarjeta inteligente solo mediante el minidriver, el KSP basado en CNG admite solo ECC, así como tarjetas inteligentes de modo dual ECC/RSA en Windows Vista y versiones posteriores de Windows.

En última instancia, la intención es que la nueva arquitectura admita todas las nuevas tarjetas inteligentes: RSA, ECC y lo que sigue. Divide la implementación del CSP en dos partes:

  • El CSP/KSP base (la parte común), que incluye funcionalidad para las operaciones criptográficas de hash, simétricas y de clave pública, además de la entrada y el almacenamiento en caché del número de identificación personal (PIN).
  • Una serie de complementos, conocidos como "minidrivers de tarjetas", que traducen las características de tarjetas inteligentes concretas en una interfaz uniforme que es la misma para todas las tarjetas inteligentes. A continuación, los minidrivers de tarjetas se comunican con sus tarjetas mediante los servicios del administrador de recursos de tarjeta inteligente (SCRM) que abstrae de forma similar las características de una variedad de lectores de tarjetas inteligentes.

La parte restante para los proveedores de tarjetas inteligentes es implementar un minidriver de tarjeta, una capa de interfaz razonablemente limitada que proporciona una abstracción de la tarjeta al CSP/KSP base y que se organiza como un sistema de archivos y un conjunto de funcionalidades primitivas. La funcionalidad de orden superior, como el almacenamiento en caché (asegurarse de que los diferentes archivos de la tarjeta tienen contenido coherente) o controlar las colisiones de nomenclatura, se controla en un nivel superior, fuera del minidriver de tarjeta.

En la ilustración siguiente se muestran las interfaces entre minidrivers de tarjeta y aplicaciones basadas en CAPI.

interfaces entre minidrivers de tarjeta y aplicaciones basadas en capi.

En la ilustración siguiente se muestran las interfaces entre minidrivers de tarjeta y aplicaciones basadas en CAPI2.

interfaces entre minidrivers de tarjeta y aplicaciones basadas en capi2.

Se recomienda que los desarrolladores aprovechen el amplio conjunto de bibliotecas que Microsoft proporciona para las operaciones criptográficas que realiza el minidriver. Esto permite a los desarrolladores beneficiarse de la infraestructura de Microsoft Windows Update para la distribución de actualizaciones de seguridad críticas.