¿El proceso de autenticación del certificado del cliente tratado como un usuario puede firmar digitalmente el contenido (y luego verificarse en el servidor)?

4

La autenticación fue activada por cierto evento (como el botón de aprobación) en el formulario. En el proceso de autenticación del certificado del cliente (en IIS), se solicitó al usuario que usara su PIN (clave privada) y, después de la autenticación, se puede acceder a la información del certificado (a través de x509). Si coloco una imagen de la firma del usuario en el formulario después de la autenticación, ¿se puede servir como una firma digital?

¿El proceso de autenticación puede tratarse como firma (en contenido vacío) y ser verificado por el servidor?

    
pregunta user1541389 04.09.2013 - 16:52
fuente

2 respuestas

6

La autenticación del cliente en SSL es solo eso: autenticación . Convence al servidor de que el cliente esperado está de hecho en el otro extremo de la línea. Sin embargo, el servidor no obtiene prueba de esa manera: no hay datos que el servidor pueda recopilar y mostrar a un tercero (un juez), lo que "obviamente" convencerá al juez de que el cliente era realmente involucrado en el proceso y envió la solicitud de que el servidor reclama que recibió.

El concepto relevante es no repudio . En última instancia, este es un concepto legal. Sin embargo, ese concepto, según la jurisdicción, intentará utilizar las propiedades técnicas de los protocolos de comunicación involucrados como una base sólida (o no). La autenticación del cliente en SSL utiliza internamente una firma digital (como parte de las herramientas CertificateVerify handshake message ) pero esa firma se calcula sobre datos de desafío aleatorios, pero no los datos de la aplicación (solicitudes y respuestas HTTP ) que se envía en el túnel SSL. De hecho, esta firma sucede antes de que los datos de la aplicación se envían en cualquier dirección. Por lo tanto, técnicamente, esa firma no proporciona el no repudio, ya que no cubre los datos reales.

En otras palabras, lo que el servidor puede mostrar a un juez puede ser una prueba convincente de que el cliente envió la supuesta solicitud solo si el juez asume que el servidor aplicó todas las verificaciones necesarias y está completamente honesto. Sin embargo, tal caso será llevado a la atención de un juez solo en el caso de algún litigio entre el cliente y el propietario del servidor; como tal, tendría poco sentido suponer arbitrariamente que el servidor es honesto (haría que el resultado de la prueba fuera bastante sesgado).

Resumen: si considera que la autenticación del cliente basada en el certificado SSL es una "firma", es probable que el valor legal resultante no se celebre en los tribunales, al menos no cuando el servidor en sí ( o su propietario) es una de las partes litigantes. puede funcionar si está en un contexto en el que se puede probar de alguna manera que el servidor es completamente honesto y no intenta enmarcar al usuario; ese no es el contexto habitual cuando se consideran las firmas digitales (por lo general, las firmas digitales son solicitadas por el servidor para permitir que el servidor pueda demandar al cliente posteriormente).

    
respondido por el Tom Leek 04.09.2013 - 17:16
fuente
1

La autenticación del certificado del cliente es útil para la autenticación (obviamente) y la posterior autorización al acceder a un servicio, pero no es muy útil para la auditoría. La firma digital de mensajes tiende a ser útil para la auditoría, es decir, más adelante, cuando el usuario ya no está conectado.

El certificado de cliente TLS se usa para autenticar al cliente para la conexión TLS, no necesariamente el contenido de los mensajes, especialmente porque la mayoría de las pilas entregarán el mensaje de la aplicación que está encima de TLS a la aplicación del servidor, descifrado y no - Forma autenticada. El propio protocolo de enlace (que es donde se realiza la firma basada en el certificado del cliente) se abstrae de esto, por lo que perdería esta información al pasar a la capa de aplicación.

Para demostrar que los mensajes intercambiados en la parte superior de una conexión TLS eran equivalentes a que se firmaron digitalmente, ciertamente necesitaría realizar un seguimiento de todo el protocolo de enlace y las claves de la sesión. Esto puede ser bastante complicado, tanto en términos de implementación como de explicación para quien necesite realizar la auditoría más adelante.

TLS se refiere a la seguridad a nivel de transporte, no a la seguridad a nivel de mensaje.

En cuanto a colocar una imagen de la firma del usuario en el formulario después de la autenticación (por lo que supongo que se refiere a la firma "manuscrita"), sí puede hacer eso, pero esas firmas nunca prueban nada. Estas ni siquiera son firmas digitales. Pueden ser replicados fácilmente por cualquier parte que haya tenido una copia de ellos. (Al igual que enviar una fotocopia del pasaporte de alguien: no prueba que quien lo envió era el titular de ese pasaporte, solo que pudo obtener una copia de su contenido).

    
respondido por el Bruno 04.09.2013 - 17:33
fuente

Lea otras preguntas en las etiquetas