signature – Uso de ePassport con Active/Chip Authentication para firmar documentos

Pregunta:

Soy un completo novato, así que disculpe mi ignorancia cuando se trata de aspectos básicos de criptografía.

Mi pregunta es si se puede usar un pasaporte biométrico con autenticación activa/chip (AA o CA) para generar firmas digitales para documentos (o más bien sus hashes). Si es así, ¿hay alguna API disponible para hacer eso?

¡Gracias de antemano por sus comentarios!

Respuesta:

La autenticación activa (AA en adelante) se basa en RSA o ECDSA y le permite firmar datos. Sin embargo, como nuestro no está destinado a firmar datos, no debe usarlo para ese propósito.

En primer lugar, la única PKI que verifica la clave pública es la que se usa para la autenticación pasiva del pasaporte, por lo que probablemente deba configurar una PKI separada para que sea útil. La autenticación pasiva simplemente incorpora la clave pública en un "grupo de datos" que luego se autentica mediante una firma establecida por el certificado de firma de un país. Sin embargo, la clave pública utilizada no está en un certificado en sí.

En segundo lugar, la firma se utiliza solo para la autenticación del pasaporte y, por lo tanto, no requiere confirmación/compromiso del usuario, como ingresar un PIN. Por lo tanto, cualquier lector con acceso al contenido del pasaporte puede acceder al procedimiento de firma, por lo que tener una firma no prueba el consentimiento del usuario de ninguna manera.

El antiguo algoritmo AA utiliza el esquema de firma 1 de ISO/IEC 9796-2 que brinda recuperación de mensajes. Nunca he podido averiguar por qué (y estuve directamente involucrado), probablemente fue copiado de algún estándar bancario. Los más nuevos también pueden usar PSS. Si se utiliza 9796, es posible que no pueda encontrar demasiadas partes que puedan verificar la firma generada. AA se realiza utilizando el comando INTERNAL AUTHENTICATE y se realiza sobre RND.IFD que se especifica solo para 8 bytes, lo que limita severamente los datos de entrada.

Si el pasaporte aún usa AA, es posible que también tenga un problema con el tamaño de las llaves. Si desea firmar algo para no repudio, es posible que desee tener un tamaño de clave RSA de 3072 bits o superior. No hay muchas tarjetas inteligentes que tengan el hardware para tamaños de clave tan grandes (al menos no si también desea incluir las otras decenas de páginas de especificaciones de protocolo).

En principio, AA puede usar ECDSA, pero tiene más sentido que el país use CA si ese es el caso. Finalmente, también puede haber pasaportes que utilicen PACE-CAM, donde la autenticación interna de la CA está integrada en el procedimiento de autenticación inicial.


Para Chip Authentication (CA) la generación de firmas se consideraba una amenaza a la privacidad del usuario. Un país podría, por ejemplo, usarlo para firmar el tiempo y las coordenadas para crear un seguimiento. Es por eso que CA se basa en el acuerdo de claves Diffie-Hellman en lugar de una función de generación de firmas. Desafortunadamente, eso también hace que no esté disponible para la generación de firmas.


Conclusión: es casi imposible usar AA y CA para firmas digitales utilizadas para no repudio; AA no fue diseñado para admitir tal caso de uso y CA fue diseñado deliberadamente para evitar el caso de uso. AA podría usarse para firmar 8 bytes sin el consentimiento del usuario, pero eso es todo.

Además de las barreras tecnológicas, ciertamente consideraría moralmente incorrecto usar AA o CA para cualquier otra cosa que no sea el control fronterizo (nacional). No debe usarse ni siquiera con consentimiento, ya que cualquier ventaja que se obtenga también puede usarse para presionar a las personas a usar un pasaporte para lo que no está diseñado.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım