José Manuel Alarcón

geek, author, speaker, entrepreneur, web guy

MENÚ - Blog de José Manuel Alarcón

Las dificultades con la firma electrónica y la necesidad de un estándar

Últimamente he tenido que presentar telemáticamente diversos documentos en otras tantas Administraciones del Estado, tanto locales como nacionales.

En todos los casos era necesario firmar digitalmente ciertos documentos o el propio envío de información en sí. En cada una de ellas el método para conseguirlo era diferente: un control ActiveX, programa Java, una combinación de ambos… Lo único que tenían en común es que es un absoluto dolor conseguir llevar a buen término la operación :-(

FirmaDigitalY no digamos también si intentamos usar el DNIe (o “DNI digital”) en un banco o para hacer algún trámite on-line: otro terrible dolor. Es más: yo no he conseguido aún usar mi DNIe con ninguno de los bancos con los que trabajo.

En todos los casos tienes problemas con el software, debes lanzar el navegador como administrador, instalar componentes, reiniciar varias veces, bajar los niveles de seguridad para el dominio en cuestión y conocer todo tipo de terminología “esotérica” para entender lo que haces.

Es más, hoy mismo para poder solicitar la renovación de mi certificado digital a la FNMT he tenido que descargar un HotFix experimental de Microsoft que te pide mil aceptaciones y hasta una clave para poder instalarlo. Incluso, estos días, hemos tenido que instalar en un equipo de la empresa una versión antigua de Java porque es la única que funciona con la aplicación de firma de una administración y en su web no lo pone por ningún lado (tuvieron que decírnoslo por teléfono). Lamentable.

Y si me cuesta a mí que soy un usuario avanzado y entiendo bien el funcionamiento subyacente de todo eso y la terminología, qué no le ocurrirá a un usuario “normal”, con conocimientos básicos de informática. Hoy por hoy veo imposible que alguien como mi padre haga un trámite on-line él solo con la administración. 

La necesidad de un estándar transparente

Todo esto me ha hecho pensar en la necesidad de disponer de algún tipo de estándar de programación y metodología para todos los navegadores que permita simplificar el uso de la criptografía de clave pública basada en certificados. De este modo el desarrollo y, sobre todo, el uso de estas funcionalidades por parte de los usuarios sería muy sencillo y exento de problemas.

Dado que todos los sistemas operativos del mercado soportan el uso de certificados digitales y que todos los navegadores son capaces de sacarle partido ¿por qué no disponemos ya de algo así?

La primera cosa que se me ocurrió es “la gran esperanza blanca” del desarrollo Web: el futuro HTML5. La verdad es que no me sonaba haber leído en los borradores del estándar nada acerca de criptografía o seguridad de clave pública, pero por si acaso lo verifiqué. En el actual draft de HTML5  no aparece nada al respecto.

Una verdadera lástima.  HTML5 va a suponer una revolución si conseguimos que todos los navegadores lo soporten bien (y parece que hay voluntad de eso), e incluye algunas APIs muy interesantes demandadas por todos los programadores. Pero me parece una verdadera pena que se pierda una oportunidad como está de implicar a todos los fabricantes de navegadores en el soporte de la criptografía de clave pública con una API común promovida por la W3C.

Esto por si solo impulsaría de verdad la sociedad de la información, más que los millones de euros gastados en otras cosas :-(

El caso es que he intentado enterarme del motivo por el que HTML5 no contempla estas capacidades, y si realmente se “les ha olvidado” o no. Lo único que he encontrado es este documento de Anders Rundgren, un ex-ingeniero de RSA, en el que cita y muestra correo intercambiado con la gente del equipo de HTML5 que dicen que lo descartan intencionadamente porque HTML ya es muy grande y no hay mucha demanda para este asunto en particular.

¿Qué no hay mucha demanda? ¡Alucino!. Si no hay demanda de eso que baje Dios y lo vea.

En fin, insisto en creo que se está perdiendo una oportunidad de oro de incorporar un estándar para la implementación de firmas digitales en HTML5, en un momento en el que parece haber consenso en el sector en torno a esta nueva especificación y que ello perjudicará mucho al avance de la sociedad de la información en todo el mundo :-(

Y tú ¿qué opinas?

Jose M. Alarcon José Manuel Alarcón
Ingeniero industrial y empresario. Fundador de Krasis.com, especialistas en e-learning. Autor de varios libros y cientos de artículos. Gallego de Vigo, amante de la ciencia, la tecnología, la sociología, la música y la lectura.
Descarga GRATIS mi último libro: "Tres Monos, Diez Minutos".
Más sobre mi...

Comentarios (2) -

Spain eduardor2k

Hola José

Yo creo que si las empresas que usan firma electronica (gobiernos, bancos etc...) mostraran cierta tendencia hacia un estándar en concreto no habría ningún problema, pero lo que pasa en la realidad es que cada una de ellas implementa una distinta y todos sabemos que si tuvieran que cambiar ahora mismo, sería un proceso muy largo, ademas del eterno dilema de que unos diran que el sistema utilizado por el estándar sea mas o menos seguro.

Saludos

Responder

Spain José Manuel Alarcón

Hola Eduardo:

Gracias por el comentario.

En realidad en este caso es más un problema de cliente que de servidor. Los estándares de firma digital están bien cerrados (en Europa se suele utilizar XADES, con el que ya me he tenido que pelear duramente en ocasiones), pero el problema al que yo me refiero en mi post es en el lado cliente: el navegador.

Surge a la hora de acceder al certificado digital y luego a la hora de implementar la firma. Debería ser algo tan sencillo como una llamada JavaScript para realizar firma de datos en el navegador, indicándole los datos, el método de firma, la URL de destino, etc... que provoque siempre una confirmación e introducción de clave para acceder al certificado por parte del usuario. Algo así...

Al final una firma no es más que un Hash (que se calcula hasta en JavaScript) y una operación criptográfica de clave pública sobre ese hash. Debería ser algo sencillo de hacer, y no el dolor que tenemos ahora :-(

Saludos,

JM

Responder

Agregar comentario