jueves, junio 04, 2015

Integrar biometría de firma manuscrita en aplicaciones

Una de las tecnologías que tenemos en Eleven Paths es SealSign, una plataforma de firma digital de documentos que permite, entre otras muchas cosas, firmar un documento manualmente y recoger la biometría tu firma manuscrita en entornos de movilidad. Es decir, como ya hicimos en el pasado Mobile World Congress, se puede reconocer a una persona o a otra por medio de la firma manuscrita que realiza en un dispositivo móvil, como un tablet, para saber si es él o no el que ha firmado el documento. 

Figura 1: Integrar biometría de firma manuscrita en aplicaciones Web, Java y .NET

Lo bueno de la tecnología SealSign es que se puede integrar en muchas aplicaciones, y es por ello que cualquier desarrollador de aplicaciones que quiera integrar esa tecnología en sus procesos puede hacerlo. En el siguiente vídeo yo os mostraba cómo se puede integrar en aplicaciones web.


Figura 2: Ejemplo de aplicación web con reconocimiento de firma manuscrita

Pero no solo eso, también está pensado para aplicaciones móviles. El siguiente vídeo es de una herramienta de Vodafone, llamada VodaGest, donde se puede ver la integración de la firma manuscrita biométrica en un entorno 100% de movilidad para la firma de contratos. Este es un buen ejemplo para entender la flexibilidad que ofrecen tecnologías com SealSign para la mejora de los procesos.


Figura 3: Vodagest 3.0 integra biometría de firma manuscrita en entornos de movilidad

Para que nuestros partners puedan integrar SealSign BioSignature en sus plataformas y sistemas informáticos, los ingenieros de Eleven Paths han dado varias formaciones por Internet, y de ellas hemos sacado estos 5 vídeos que podéis ver para entender cómo funciona la plataforma, y cómo se pueden integrar en aplicaciones Web, Java y .NET.


Figura 4: Arquitectura y Consola de Administración de SealSign 


Figura 5: Integración de aplicaciones Java y Web con SealSign Engine 


Figura 6: Integración de aplicaciones Java y Web con SealSign BioSignature 


Figura 7: Integración de aplicaciones .NET con SealSign Engine 


Figura 8: Integración de aplicaciones .NET con SealSign BioSignature

La plataforma SealSign ofrece las mismas posibilidades para la firma digital con la biometría de tu huella dactilar, para la firma de documentos con certificados digitales, para hacerlo usando smartcards, DNIe o el nuevo DNIe 3.0.

Figura 9: Componentes de la arquitectura de SealSign

Además, permite centralizar la plataforma de firma digital, gestionar el archivo longevo de documentos y gestionar de forma segura los certificados de todos los empleados de una empresa en un Central Key Control. Si deseas integrar estas tecnologías en cualquier sistema informático que tú tengas, no dudes en ponerte en contacto con nosotros que te ayudaremos en todo lo que necesites.

Saludos Mallignos!

8 comentarios:

  1. El funcionamiento está claro y la parte de reconocimiento también, el problema que yo le veo a este tipo de tecnologías es el legal. Me explico. Imagina un escenario típico en el que un cliente firma un documento que le ofrece un vendedor. Lo lee y lo firma en la tablet del vendedor, ¿quién asegura que esa tablet no haya sufrido una modificación y se estén capturando los datos? ¿quién asegura que esos datos capturados no se pueden volver a reproducir (misma secuencia de presiones simulada mediante una manipulación de Android) sobre cualquier otro documento? Como no se puede asegurar eso, no se puede asegurar que una firma cualquiera sobre un documento haya sido realizada por una persona dada. Como perito en un juicio yo no podría verificar que una firma prácticamente igual a otra haya sido producida por la misma persona si esta ha sido realizada sobre un dispositivo electrónico como estos.

    Por eso la legislación prevé que se cumplan 3 factores para que la firma electrónica sea asimilable a la firma manuscrita: autentificación (que no se puede dar con la mera firma, habría que añadir un segundo factor), integridad (que necesitaría de algún mecanismo de encriptación que no estoy seguro que se use en este tipo de aplicaciones) y no-repudio (que obviamente no se cumple, pero creo que este factor no es imprescindible para asimilar las firmas digitalizadas con las manuscritas sobre papel).

    Imagino que si tu apoyas el uso de esta tecnología en tu empresa será porque consideras que las cosas no son así y que en caso de llegar a juicio lo ganarías y por eso me gustaría que me explicaras tus razonamientos para pensar eso. En mi empresa no hemos adoptado este sistema precisamente por esas dudas que tenemos, ya que no queremos comprometer a nuestros clientes en caso de que empiecen a aparecer sentencias judiciales que echen para atrás las firmas digitalizadas.

    Saludos

    ResponderEliminar
  2. Miguel R.D., tus razonamientos son completamente lógicos, muchos firmantes piensan cuando firman en dispositivo como los que tienen en Mercadona o El Corte Inglés que le pueden copiar la firma y plasmar esta en otro documentos. Tanto es así, que un amigo mio, algo paranoico, cada vez que firma un pago en el dispositivo siempre añade el importe escrito de su puño y letra para poder discriminar cada firma.

    En SealSign no es necesario hacer esto. Como bien intuyes, el sistema ha sido diseñado para hacer cada firma única, vinculada al contenido del documento firmado y poder aportar las garantías de autenticación e integridad. El no-repudio (o mejor consentimiento, la traducción de non-repudiation no me parece correcta) ya vemos más adelante como se consigue.

    SealSign BioSignature captura tanto el grafo como una serie de parámetros que permiten conformar un patrón califráfico del firmante. Estos datos se vinculan, una vez capturados, al contenido del documento (hash) y se cifran con una clave asimetrica para proteger su confidencialidad. En caso de conflicto judicial estos datos deben ser descifrados por el tercero que custoida la clave de descifrado (no la propia organización o entidad que recaba las firmas) y se los entrega al juez y este a su vez al perito caligrafo judicial para su cotejo, de forma similar a como se hace hoy con las firmas en papel.

    La vinculación entre los datos capturados y la identidad del firmante se puede realizar mediante un proceso de registro presencial donde se captura su patron en presencia de un empleado que verifica su identidad o bien en el momento de la firma siendo una firma verificada. De esta forma se consigue el no-repudio de forma similar al proceso de registro de un certificado digital.

    Desde el diseño y desarollo de SealSign hemos sometido el sistemaa varios dictamenes legales por parte de prestigiosos despachos legales que han expresado su opinión en informes favorables y hemos trabajado en maximizar su eficacia procesal trabajando estrechamente con las asociaciones de peritos caligrafos, validando que los datos recogidos son utiles para realizar un cotejo de firmas al menos con similares garantías a los que se hacen en papel. Todos los datos y sus tratamientos siguen estandares internacionales para garantizar su interoperabilidad e independencia del fabricante de la solución de firma.

    Se trata de tecnologías nuevas y son sin duda mejorables pero hoy en dia clientes de diversos sectores y tamaños confian en
    esta tecnología para obtener beneficios de mejora de eficiencia, reducción de costes y cumplimiento normativo y regulatorio. Para aquellos casos en los que el riesgo operativo del acto de firma es alto, recomendamos incorporar un tercero de confianza para aquellas transacciones. El tercero de confianza que se encarga de realizar una gestión mas exhaustiva de la prueba electronica, externalizan el riesgo del cliente y gestionan de forma eficiente los posibles conflictos judiciales.

    Mi nombre es Rames Sarwat y he participado en los ultimos años en el diseño y desarrollo de SealSign. Desde hace menos de un año pertenezco al equipo de ElevenPaths que dirige Chema Alonso.

    Espero haber aclarado alguna de tus dudas, pero si lo deseas puedes contactar con nosotros a traves de la página web de Eleven Paths y te ampliaremos la información y responderemos a las consultas que quieras hacernos.

    Un saludo
    Rames

    ResponderEliminar
  3. ¿esto es un blog corporativo?. Ahora casi todos los post hablan de ElevenPath

    ResponderEliminar
  4. Agradezco tu respuesta Ramses, pero sigo sin estar convencido :)
    Por dos razones principalmente:
    - Primero porque la ley no asimila directamente las firmas manuscritas con las digitales, es más exigente con estas segundas (y es lógico).
    - Segundo porque a pesar de lo que me comentas de "hacer cada firma única" no lo acabo de ver.

    El problema mayor lo veo en esta segunda parte y es por lo que opino que la ley impuso el primer punto. Si el dispositivo de firma ha sido comprometido, por ejemplo la tablet del comerciante ha sido hackeada por el propio comerciante o un tercero para obtener todas las acciones del usuario como si estuviera grabando una macro (hookeando el sistema de intercambio de eventos), luego desde otro dispositivo idéntico (o el mismo) solo tendría que reproducir "la macro" con otro documento diferente cargado para así reproducir la firma falsificada, identica a la anterior y de manera indetectable por el sistema (SealSign o cualquier otro), ya que no hay ninguna comprobación de que el usuario esté presente.

    La solución de tu amigo paranoico de poner el importe en cada firma para hacerla única sería una solución incompleta. Evitaría que alguien enviara la "macro" completa, pero podría enviar solo los primeros o los últimos trazos, los que corresponden a la firma.

    Supongo que por eso la ley dice algo así como que el firmante debe tener en su poder los instrumentos de firma (lo siento, no puedo recitar de memoria la ley, pero recuerdo que decía algo similar a eso, que viene a decir el firmante debe ser dueño de la tablet dónde firma precisamente para evitar una captura de la firma en una tablet comprometida).

    ResponderEliminar
  5. Nacho Alamillo5/6/15 5:14 p. m.

    Rames y Miguel,

    Me parece una interesante discusión, en especial desde la óptica legal. Como abogado especialista en firma electrónica (donde "especialista" significa "viejo", porque hacer 17 años que me dedico en exclusiva a esta disciplina), creo que puedo intentar aportar alguna opinión.

    La Ley 59/2003, de 19 de diciembre, regula la firma electrónica, en transposición de la Directiva 1999/93/CE, de 13 diciembre. Y lo hace forma tecnológicamente neutral, en el sentido de admitir que cualquier tecnología pueda actuar como equivalente electrónico de la firma manuscrita.

    En este sentido hay que entender el artículo 3.9, cuando establece que "no se negarán efectos jurídicos a una firma electrónica que no reúna los requisitos de firma electrónica reconocida en relación a los datos a los que esté asociada por el mero hecho de presentarse en forma electrónica".

    Este texto, que de nuevo sigue a la Directiva europea, permite que cualquier sistema técnico subsumible dentro de las definiciones de firma electrónica se pueda presentar en juicio en lugar de una firma escrita, y que tengas derecho a que produzca efectos.

    Si esto es así, ¿para qué sirve entonces la firma electrónica reconocida? ¿En qué se diferencia de las restantes firmas?

    Pues básicamente la respuesta se encuentra en el artículo 3.4 de la Ley 59/2003, que establece que "la firma electrónica reconocida tendrá respecto de los datos consignados en forma electrónica el mismo valor que la firma manuscrita en relación con los consignados en papel".

    Esto significa que la tecnología subsumible en este concepto, que ya no es tan neutral, dada la referencia explícita al uso de certificados electrónicos reconocidos, va a gozar de una presunción de idoneidad; es decir, una firma electrónica siempre se considera equivalente a una firma escrita.

    Pero es un error frecuente interpretar este artículo en sentido contrario; esto es, la frase "la firma electrónica no reconocida no tendrá respecto de los datos consignados en forma electrónica el mismo valor que la firma manuscrita en relación con los consignado en papel" es falsa.

    Lo que realmente sucede es que en presencia de una firma que no sea reconocida, se deberá analizar caso por caso si esta tecnología es idónea para actuar como equivalente de la firma escrita. Algunas tecnologías serán perfectamente apropiadas para sustituir a la firma escrita, y otras, no.

    La principal ventaja de la tecnología calificable como firma electrónica reconocida es que directamente se considera apropiada para sustituir a la firma escrita, y por tanto ofrece un cierto incentivo a su adopción.

    Por tanto, al menos legalmente, un sistema de firma manuscrita digitalizada, en especial con biometría, desde luego es perfectamente válido para sustituir a la firma escrita, y luego ya se verá en juicio su eficacia.

    Que es, por cierto, el mismo tratamiento que para la firma escrita.

    Por mi parte, creo que el sistema de firma manuscrita digitalizada, en especial con biometría, siempre que se emplee adecuadamente, dispone de todos los elementos que precisamos juristas y peritos para acudir a juicio sin soporte papel, y ganar.

    Respecto a las cuestiones de seguridad, me temo que hay que considerarlas en todos los casos, inclusive el de firma electrónica reconocida, porque no es particularmente difícil engañar a una persona para firmar documentos falsos con su DNI electrónico (algo que no se basa en la ausencia de fortaleza del DNI electrónico, sino de las incompletitudes de los estándares técnicos en que se basa dicho instrumento).

    Y esto es grave, porque el DNI, al generar una firma reconocida, genera una apariencia de falsa autenticidad que puede afectar al derecho fundamental a la defensa.

    Saludos,


    Nacho

    ResponderEliminar
  6. Excelente aporte Nacho, aunque mis dudas iban por otros derroteros quizás.

    La visión que aportas respecto a que tanto la firma manuscrita convencional y la firma manuscrita digitalizada serían ambas susceptibles de ser cuestionadas en un proceso legal, es muy interesante, pero ¿no sería en un caso la veracidad de la firma lo que se cuestionaría y en el otro, además de dicha veracidad, los medios para obtenerla? Me explico: un perito caligráfico en un juicio decidirá si una determinada firma fue o no estampada por una determinada persona, pero en el caso de firma digitalizada además deberá aparecer en escena un perito informático que certifique que los medios utilizados para estampar dicha firma fueron seguros... Y ahí es dónde tengo yo problemas, puesto que a diferencia del papel manuscrito, usando una tablet cualquiera como sistema de firma no concibo ningún sistema que no pudiera ser hackeado (con una técnica bastante simple como la que he explicado anteriormente de las "macros"). Quiero decir, que con las maquinitas de firma estas que tienen los bancos que cada una tiene su propio identificador único y su hardware está garantizado para que no haya violaciones del sistema (dentro de lo que cabe), entiendo que un perito informático en un juicio pueda dar por válido el sistema, pero con la firma en una tablet, dudo mucho que haya ningún ingeniero informático que fuera a validar el mecanismo ya que cualquier acción es reproducible y la toma de la firma no es un proceso que el firmante pueda controlar de ninguna manera (la tablet es del comerciante y podría haber sido comprometida). No se si me explico, lo que quiero decir es que el problema no está en la transmisión de datos que puede ir encriptada y no hay posibilidad de que un man-in-the-middle capture la firma, sino en el propio aparato que si ha sido modificado podría estar capturándolo todo (como un sniffer de pulsaciones) y por tanto podría reproducir la secuencia en cualquier momento generando tantas firmas válidas como fuera necesario sin el control del supuesto firmante.

    Respecto a la última parte, permiteme la broma, pero es imposible forzar a nadie a firmar utilizando su DNIe porque nadie recuerda su contraseña ;) En realidad, todo sería mucho más sencillo si el uso del DNIe estuviera extendido. En el sector en el que trabajo hubiera sido genial haber podido prescindir del papel sustituyendo la firma en un folio por una firma introduciendo el DNIe en un lector, pero el problema de que la gente no conozca su contraseña hace inviable este avance tecnológico. Y la firma manuscrita sería una buena alternativa, pero legalmente nos da miedo porque hasta dónde sabemos no ha habido todavía ningún juicio que cuestione la toma de datos en una tablet, ¿o me equivoco? En cualquier caso, es un debate interesantísimo.

    ResponderEliminar
  7. Hola Miguel, Nacho

    Coincido que es una interesante discusión. Gracias por vuestros comentarios.

    Miguel, creo que el problema de la inseguridad de los dispositivos de firma es un problema común a todos los tipos de firma. Si uso una firma con DNIe en un PC o en un móvil (por ejemplo con el nuevo DNIe 3.0) nada impide que el terminal este "hackeado" y que presente algo diferente por pantalla a lo que realmente firma el usuario con su certificado. El dispositivo de firma sería seguro pero no la aplicación y el terminal del usuario.

    Llevado al mundo físico donde nos movemos con más soltura, imagina que alguien te da un bolígrafo para firmar un documento importante en papel y ese bolígrafo es capaz de registrar todos los movimientos que realizas y la presión que ejerces (p.e. bolígrafos de la marca Anoto, www.anoto.com). ¿Eso cuestionaría la validez de la firma realizada sobre el papel del documento?.

    Creo que en la ley de firma electrónica (ley 59/2003) en su articulo 3.2 cuando indica que la firma electrónica avanzada es aquella que [...] "está vinculada al firmante de manera única y a los datos a que se refiere y que ha sido creada por medios que el firmante puede mantener bajo su exclusivo control" asumo que el legislador no se refiere a que el dispositivo móvil sea propiedad del firmante sino que en este caso, solo él puede realizar una firma auténtica al ser el único que puede reproducir la imagen y dinámica de su firma.

    En la mayoría de los casos donde se implementa SealSign, cuando se usan dispositivos móviles, los dispositivos pertenecen a la empresa y la empresa se preocupa de mantenerlos seguros y fortificados gestionando el dispositivo con un MDM, detectando si se realiza un jailbreak o rooteado sobre ellos y manteniendo el dispositivo y sus aplicaciones actualizados. De esta forma se reduce el riesgo de que el dispositivo se encuentre comprometido.

    En aquellos casos en los que se realizan firmas de documentos que puedan considerarse de alto riesgo para la empresa, recomendamos utilizar un tercero de confianza por interposición, que suministra los aplicativos y se encarga de la generación y custodia de la prueba durante todo el proceso. La mayoría de las disputas judiciales no se producen por la autenticidad de la firma sino por el contenido del documento. Es frecuente oir la frase "ese documento no es el que yo firmé".

    Espero haber contribuido un poco a la interesante discusión
    Rames

    ResponderEliminar
  8. Probablemente tengas razón Rames y el espíritu de los legisladores fuera el permitir el uso de las firmas digitalizadas desde cualquier tipo de dispositivo. Pero como siempre la letra de las leyes no tiene una interpretación única y puede ser interpretada.

    En todo caso, me gustaría ver qué pasaría en un juicio dónde se cuestionara el contenido del documento (como tu bien explicas) pero en un medio digital como el que estamos hablando. Sinceramente, si a mi me llama un juez para peritar un sistema de firma de este tipo y me pregunta "¿puede usted estar seguro de que esa firma la hizo esa persona en ese documento?" yo le tendría que responder "no", porque no puedo asegurar que el dispositivo con el que se tomó no estuviera comprometido. A eso es a lo que me refiero. ¿Qué pasaría en ese caso? Si habláramos de un dispositivo rollo los de Wacom y compañía entonces puede que sí pudiera asegurar el sistema no había sido comprometido, pero con una tablet... ni tan siquiera veo cómo con un "tercero de confianza" en medio puedo asegurar que no haya sido comprometido (por el tema de reproducir las pulsaciones, los Anoto sobre papel no pueden reproducir los trazos, solo los muestran digitalmente en una pantalla, quizás si se se construyera una máquina capaz de reproducir dichos trazos, entonces sí, la firma manuscrita también habría sido comprometida).

    Ah, ponía lo de "tercero de confianza" entre comillas, porque tengo entendido (no se si será cierto, igual Nacho como abogado especializado puede aportar más luz sobre esto) que en una relación entre una empresa A y otra B en la que A le ofrece a B firmar un documento, un tercero C con el que A tiene una relación contractual no puede ser "tercero de confianza" ya que existe un conflicto de intereses. PEro bueno, esto es solo una nota al margen :)

    En cualquier caso, creo que nuestros jueces y legisladores serán suficientemente sabios para no "liarla" invalidando todas las firmas manuscritas digitalizadas que ya han sido tomadas con dispositivos de este tipo. Imagino que lo que sí podría suceder es que se invalidaran aquellos sistemas de firma que no aseguren que la firma tomada para un determinado documento corresponde con una firma real realizada en ese momento (lo que comentabas del "ese no es el documento que yo firmé"), pero incluso esa parte la veo complicada de solucionar (soy un paranoico, lo se), ya que incluso usando claves PKI generadas por un tercero para cada documento es muy complicado asegurar que la firma haya sido tomada para ese documento y no para otro (p.e. no se como lo tenéis en SealSign, pero hace unas semanas vino un chico del seguro a mi casa a comprobar una reparación y al finalizar me pidió que le firmara la visita con mi firma manuscrita en una tablet con el dedo después de mostrarme el documento que firmaba, en otra pantalla... me negué y se extrañó, pero ¿quién me dice a mi que lo que estoy firmando es el documento que el me mostraba y no la cesión de todos mis bienes? :)

    ResponderEliminar