¿Cuál es la diferencia entre las tarjetas de CAC y una tarjeta inteligente 'genérico'?

StackOverflow https://stackoverflow.com/questions/3449153

Pregunta

Estamos tratando de permitir que nuestro rico cliente de aplicaciones C ++ de Windows para utilizar DoD CAC tarjetas.

Estamos utilizando una biblioteca de terceros para asegurar nuestra comunicación cliente / servidor utilizando SSL, y reconoce / manijas de las tarjetas inteligentes genéricos, pero sólo si el certificado fue creado por su propia cuenta, aplicación incluida.

¿Por qué? no es un certificado de un certificado? ¿Cómo varían?

En concreto, me puede punto de que cualquiera pueda condensada documentación técnica que explica lo que está ordenada por las normas pertinentes y lo que queda definida la implementación? He intentado buscar en el real especificaciones, pero que son demasiado detalladas, y he encontrado artículos muy vagas, que no responden a mis preguntas. Estoy buscando algo en el medio.

¿Fue útil?

Solución

No tengo suficientes puntos para hacer comentarios, pero yo quería estar de acuerdo con @Jay. Es probable que tenga que configurar esta biblioteca de terceros que confiar en los CERT de la raíz del Departamento de Defensa, de modo que cuando un usuario CAC presenta su certificado de clientes, su aplicación puede confiar en ella.

El Departamento de Defensa de los CERT de la raíz están disponibles al público: http://dodpki.c3pki.chamb.disa.mil/rootca.html

Además, si el comportamiento que se está observando es que el cliente no está consiguiendo incluso llevó a elegir un certificado de cliente, o no lo están observando un certificado de cliente que se envía en el rastro del paquete, entonces esto puede también deberse a que el servidor hace no confiar en el Departamento de Defensa de CA. Cuando cuando un servidor de buen comportamiento solicita un certificado de cliente, sino que también anuncia el nombre completo (DN) de la CA de que confía. Un cliente de buen comportamiento inspeccionará esa lista, y comparar esos nombres los de los emisores de los certs cleint los que dispone. Si no hay ninguna coincidencia, entonces el cliente enviará un CERT "nulo". Sé IIS / Apache y Firefox / IE / Chrome se comportan de esta manera. Opera, sin embargo, no parece discriminar en base a los emisores anunciados, y enviará ninguna cert que el cliente ha por ahí.

Otros consejos

  • Un certificado es un certificado. Los certificados son por lo general "creados" por una CA, no por el proveedor de software de personalización de tarjetas inteligentes. El acceso a las claves es lo que importa cuando se utilizan tarjetas inteligentes.
  • Think de las tarjetas inteligentes como CD-s. Todos ellos tienen el mismo aspecto, pero es necesario conocer el formato del disco. Sí, hay un formato de "genérico" que puede ser leído por la mayoría de las computadoras, pero algún tipo de software especial puede escribir cosas especiales en el disco, otros no pueden leer.

Por último, pero no menos importante, si sus marcas de software utilizar de PKCS # 11 a continuación, siempre y cuando tenga un archivo PKCS # 11 proveedor de la tarjeta (hay varios módulos de CAC y "genéricas" tarjetas de proveedores por lo general viene con uno también) que no es necesario preocuparse por la tarjeta real, porque PKCS # 11 abstrae los detalles de distancia.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top