Archivos del sitio firma digital

Avances en Agosto

Posteado por Benito Galán en Agosto 13th, 2010

En Viafirma no cerramos por vacaciones, y en estos días no sólo los termómetros echaban humo, también lo hacía nuestra xnoccio factory.

Mejoras en el soporte para MacOS
Estamos en fase beta de un nuevo cliente para Viafirma que mejora notablemente el uso del almacén de claves en MacOs, evitando un famoso bug reconocido por Apple que hasta ahora impide su perfecto funcionamiento en estos entornos.

Importantes mejoras en nuestro servicio Cloud Computing
Estamos preparando grandes sorpresas que esperamos publicar en Septiembre.

Sede Electrónica
Sedes Electrónicas representadas por certificados de Firmaprofesional ya pueden hacer uso de Viafirma gracias al nuevo soporte de Viafirma para este tipo de certificados emitidos por la 1a. CA privada en España.

Sello Electrónico
En la Fundación Tripartita ya están haciendo uso de la firma automatizada de documentos gracias al soporte de Viafirma para los Certificados de Sello Electrónico de la FNMT.

Viafirma Mobile
En estos días, los clientes de Viafirma para los dispositivos móviles Android, iPhone y iPad, han registrado 544 instalaciones desde Google Market y 173 desde Apple Store.

Banca por Internet
También en estos días de verano se han completado con éxito las pruebas de implantación en el internet banking de Bancrédito, en Costa Rica, el primer banco costaricense en ofrecer el uso de la firma electrónica a sus clientes finales.

Soporte para HSM de la marca NCipher
La nueva versión incorpora soporte a NCipher.

Nuevo API
Estamos preparando y esperamos publicar nuevos APIs de integración, más ligeros y sencillos para Java/.Net/PHP.

Framework de desarrollo
De cara a los futuros desarrollos estamos terminando nuestro nuevo marco de desarrollo que será utilizado en todos los proyectos del grupo Viavansi.

Firma digital en iPad/iPhone

Posteado por Felix G. Borrego en Julio 13th, 2010

Primera plataforma de firma electrónica para dispositivos móviles iPhone y  iPad.

Gracias al nuevo cliente de Viafirma para iPhone y iPad  permitimos interactuar con sistemas que requieran de autenticación o firma con certificado digital desde nuestro dispositivo (iPad/iPhone/Android).

En el siguiente vídeo mostramos el acceso a una Oficina Virtual para la gestión de trámites y solicitudes de Ciudadanos. Nos autenticamos con un certificado reconocido instalado en nuestro dispositivo móvil, y tras cumplimentar el trámite seleccionado, procedemos a la presentación firmando la solicitud con nuestro certificado digital.

La aplicación necesita que le añadamos los certificados que deseemos utilizar. Para ello implementa el servicio de transferir ficheros a través de iTunes, permitiendo añadir un certificado digital en formato software (extensión .p12, .pfx):

Adjuntar certificados desde iTunes

Cómo adjuntar los certificados desde iTunes

¿Qué implica esto?

Las entidades que opten por utilizar Viafirma podrán ofrecer de forma universal sus servicios y trámites que requieran del uso de un certificado digital. Permitiendo su uso desde cualquier dispositivo, sistema operativo o navegador. ¿Os imagináis poder presentar la declaración de la renta desde un iPad? o utilizar la firma digital de una forma tan sencilla como esta.

¿Cuándo estará disponible?

Estamos a la espera de que la aplicación sea publicada en la Apple Store, por lo que probablemente esté disponible la próxima semana (fecha estimada 22 de Julio 2010).

También disponible en Inglés y Francés
We will demonstrate now how to digitally sign using VIAFIRMA on mobile device (ipad/iphone)!

Tambien podéis ver un ejemplo sobre Android: http://www.xnoccio.com/1201-android-y-mi-certificado-digital/

O realizar la prueba accediendo a la demo de Viafirma desde cualquier sistema operativo o dispositivo!

Una vez más, nos esforzamos en ampliar nuestra Matriz de Compatibilidad, garantizando el principio de Neutralidad Tecnológica citada en la Ley 11/2007 de Acceso Electrónico de los Ciudadanos a los Servicios Públicos.

Android y mi certificado digital

Posteado por Felix G. Borrego en Junio 30th, 2010

La nueva versión de Viafirma 3.0, proporciona como principal novedad el soporte para autenticación y firma digital desde dispositivos móviles como Android, iPhone o iPad.
De esta forma Viafirma se convierte en la primera plataforma de autenticación y firma digital con soporte completo para Android, iPhone o iPad.
A continuación vamos a mostraros un ejemplo de autenticación digital utilizando Viafirma desde Android.

En los próximos días iremos ofreciendo ejemplos de autenticación y firma desde los diferentes dispositivos móviles ya soportados.

¿Qué implica esto?

Pues que las entidades que opten por utilizar Viafirma podrán ofrecer servicios de autenticación y firma digital a sus usuarios móviles. Imagina por ejemplo acceder a tu banco mediante autenticación digital desde tu Android!

¿Cuándo estará disponible?

Ya está disponible para clientes corporativos y en unos días estará disponible en el Google Market de forma gratuita.

13-07-10

Disponibles ya los clientes para iPad y iPhone.

http://www.xnoccio.com/1247-firma-digital-movil-en-ipad_iphone_firma_electronica/

Viafirma en Twitter

Posteado por Javier Echeverría Usúa en Junio 7th, 2010

Hace algunos días que Viafirma tiene su canal twitter. Invitamos a todos los interesados en la plataforma a seguirnos por esa vía, donde intentaremos dar primicias, anunciar liberaciones de versiones, etc.

Resumen Viafirma 2009

Posteado por Benito Galán en Diciembre 29th, 2009

A punto de finalizar este 2009, queremos hacer un repaso de los logros obtenidos por VIAFIRMA en las implantaciones de este año que estamos a punto de terminar.

Sector Público

Como no podía ser de otra forma, nuestro repaso empezará por la implantación con mayor número de operaciones realizadas, es decir, la implantación de Viafirma en la Fundación Tripartita para la Formación en el Empleo.

Fundación Tripartita

En apenas 10 meses desde su paso a producción, han superado los 2,6 millones de transacciones, entre autenticaciones y firmas, tal y como se resumen en las siguientes gráficas.

Transacciones totales en Tripartita

Las operaciones fueron realizadas con certificados digitales de varias Autoridades Reconocidas por la plataforma, entre ellas, FNMT, DNIe, Camerfirma, Izempe, Ancert o ANFAC, pero sin duda, el grueso de operaciones fueron realizadas por los certificados de empresa de la FNMT, tal y como se muestra en la siguiente gráfica.

Reparto de CA

Ratios de Efectividad

Las siguientes gráficas muestran el ratio de efectividad de las autenticaciones y firmas completadas. Si tenemos en cuenta que para estas métricas se tomaron valores de cierre de sesión sin finalizar el proceso de firma o autenticación (por ejemplo, un usuario se autentica en el sistema, y por cualquier motivo ajeno al sistema, decide cerrar sin firmar el documento solicitado), estos resultados demuestran un excelente comportamiento.

Ratio de Efectividad en las Firmas

Ratio de Efectividad en las Autenticaciones
Ratio de Efectividad en Autenticaciones

Junta de Andalucía

La Junta de Andalucía está estudiando la utilización de Viafirma como cliente de autenticación y firma digital. Gracias a ese uso la Junta de Andalucía se beneficiaría de la usabilidad y neutralidad tecnológica que caracteriza a Viafirma, tal y como se recoge en nuestra Matriz de Compatibilidad, probablemente una de las más completas del mercado.

Estas implantaciones se sumarían a otras implantaciones en el sector público realizadas en República Dominicana, donde organismos como la Direcc. Gral. de Impuestos Internos (DGII – el equivalente a la Agencia Tributaria), o el Ministerio de Educación Superior, Ciencia y Tecnología (SEESCyT) ya hacen uso de Viafirma para completar transacciones de autenticación y firma mediante el uso de Certificados Digitales reconocidos por el INDOTEL, órgano regulador.

Sector Educativo

A la implantación de Viafirma el año anterior en la Universidad Iberoamericana (UNIBE), en este 2009 se le suman las implantaciones de Viafirma en la Universidad de Extremadura y la Universidad de Cádiz, que dispondrá de un escritorio centralizado de firmas.

Sector Productivo

Toyota España integró su ERP con Viafirma para gestionar la firma electrónica de todas sus facturas, haciendo uso del formato facturae 3.1 que ofrece Viafirma, siendo reconocida por la propia Agencia Tributaria como solución compatible con el formato homologado.

En las Islas Baleares, su Colegio de Farmacéuticos (COFIB), completó la integración con Viafirma de su sistema de gestión para la Receta Electrónica.

Alianzas

En este 2009 afianzamos colaboraciones comerciales y técnicas con la Autoridad de Certificación Firmaprofesional. También extendimos nuestra relación comercial en el mercado latinoamericano, con colaboraciones en Chile, Panamá, Costa Rica y República Dominicana.

Roadmap

En 2010 Viafirma continuará con la incorporación de nuevas funcionalidades, nuevos formatos de firma, nuevas Autoridades de Certificación reconocidas. Las mejoras introducidas durante este año que terminamos, y las que incluiremos en el próximo, sólo son posibles con el apoyo mostrado en todas nuestras implantaciones, también reflejado en los numerosos correos de apoyo y felicitaciones recibidos y, como no, gracias al excelente equipo que hay detrás de Viafirma.

Por todos ellos, gracias y feliz entrada de año 2010 !!

Java / JEE : Firma digital y autenticación con Viafirma (I)

Posteado por Felix G. Borrego en Abril 29th, 2009

Este artículo pretende ser una guía rápida qué explique cómo realizar una operación de autenticación con Viafirma, de cara a obtener los datos del certificado digital del usuario.

Aunque Viafirma ofrece todos sus servicios mediante métodos estándar (Servicios Web y OpenID), también disponemos  de un cliente para Java que permite de una forma muy sencilla integrar aplicaciones desarrolladas en esta tecnología con los servicios que ofrece Viafirma.

En este artículo mostraremos cómo añadir las dependencias necesarias a un proyecto web Java para hacer uso de los diferentes servicios de firma digital (XAdES, Facturae, PDF sign, etc… ), autenticación (FNMT, Camerfirma, Firma profesional, Ancert, ACA, Izempe,  DNIe, etc…),  custodia (integridad, etc…)  y verificación (CRLS, OCSP, etc…).

El procedimiento sería el siguiente:

1.- Añadir las dependencias

Viafirma está preparado para trabajar con Maven; en este tipo de proyectos sólo será necesario añadir la dependencia a viafirma-client de la siguiente manera:


<!--  Dependencias para el cliente viafirma con soporte de OpenID -->
<dependency>
 <groupId>org.viafirma</groupId>
 <artifactId>viafirma-client</artifactId>
 <version>[2.2.3,2.3.0)</version>
</dependency>

Y poner el repositorio de librerías de VIAVANSI para poder recuperar esta librería:

http://repositorio.viavansi.com/repo

Si el proyecto no está basado en Maven, necesitaremos añadir manualmente los .jar que se incluyen en el directorio dependency dentro del distribuible de viafirma-client.

2.- Crear la página de acceso a la autenticación

A modo de ejemplo básico vamos a crear una jsp que inicialice el cliente de Viafirma y permite al usuario iniciar el proceso de autenticación pulsando en un enlace. Este cliente utilizará el servidor público de pruebas de Viafirma desplegado en las instalaciones de Viavansi.

<%@page import="org.viafirma.cliente.ViafirmaClientFactory"%>
<%@page import="org.viafirma.cliente.ViafirmaClient"%>
<body>
<%
if (!ViafirmaClientFactory.isInit()) {
 // Configuración básica del cliente.
 ViafirmaClientFactory.init("http://viafirma.viavansi.com/viafirma","http://viafirma.viavansi.com/viafirma");
}

if(request.getParameter("autenticar")!= null){ ViafirmaClient viafirmaClient = ViafirmaClientFactory.getInstance(); // Iniciamos la autenticación indicando la uri de retorno. viafirmaClient.solicitarAutenticacion(request, response,"/viafirmaClientResponseServlet"); } %> <p><a href="?autenticar=true">Solicitar autenticación</a></p> </body>

Cuando el usuario pulse sobre el enlace “Solicitar autenticación” el usuario será redirigido a Viafirma, donde se le solicitará su certificado digital. Viafirma validará y tratará el certificado del cliente y retornará el resultado de la autenticación a la aplicación cliente que estamos desarrollando. En la jsp de ejemplo le indicamos a Viafirma que la url de retorno (donde Viafirma debe mandarnos el resultado de la autenticación) es /viafirmaClientResponseServlet .

3.- Procesar la respuesta

Una vez que Viafirma obtenga la información contenida en el certificado digital, retornará los datos a la url que la aplicación cliente le indicó, por lo que el siguiente paso será definir un servlet (cuya URL en este ejemplo es /viafirmaClientResponseServlet) que se encargue de gestionar la respuesta. Para ello crearemos un servlet que extiende de org.viafirma.client.ViafirmaClientServlet, e implementaremos los métodos error(…), cancel(…) y authenticateOK(…):


public class ViafirmaClientResponseServlet extends ViafirmaClientServlet{

@Override public void authenticateOK(UsuarioGenericoViafirma usuario,HttpServletRequest request, HttpServletResponse response) { // Lógica específica de la aplicación para gestionar el resultado de la autenticación request.setAttribute("usuarioAutenticado", usuario); request.getRequestDispatcher("/resultadoAutenticacion.jsp").forward(request, response); }

@Override public void cancel(HttpServletRequest request, HttpServletResponse response) { // Gestiónn de cancelaciónn del usuario al autenticar o firmar request.setAttribute("error", "El usuario ha cancelado la autenticación"); request.getRequestDispatcher("/resultadoAutenticacion.jsp").forward(request, response); }

@Override public void error(CodigoError codError, HttpServletRequest request, HttpServletResponse response) { // Gestión de error al autenticar o firmar request.setAttribute("codError", codError); request.getRequestDispatcher("/resultadoAutenticacion.jsp").forward(request, response); }

}

En este ejemplo vemos un ejemplo de implementación, en el que la aplicación simplemente guarda en request el objeto UsuarioGenericoViafirma que contiene todos los datos que aparecen en el certificado digital. Obviamente cada aplicación, en función de su lógica de negocio, deberá realizar la implementación específica que requiera.

4.- Adaptar la plataforma al skin de la aplicación cliente.

La página donde se solicita el certificado digital reside en Viafirma. Sin embargo, a través de CSS podremos conseguir que el usuario no aprecie un cambio de interfaz, de forma que el salto de la aplicación a Viafirma parezca transparente a nivel estético.

Para hacer que Viafirma se adapte fácilmente al estilo visual de nuestra aplicación cliente, sólo tendremos que colocar el fichero viafirmaStyle.css en el raíz de nuestra aplicación y redefinir el aspecto visual de la interfaz  de Viafirma.

5.- Descarga el cliente y pruébalo tu mismo

Descargar ejemplo de autenticación utilizando el cliente Java para obtener los datos del certificado digital.

Próximamente: Java / JEE : Firma digital XADES y facturae con Viafirma (II)

Viafirma entra en producción en la Fundación Tripartita

Posteado por Javier Echeverría Usúa en Marzo 17th, 2009

En VIAVANSI estamos de enhorabuena, ayer lunes 16/03/2009 entró en producción la Aplicación de gestión de las Acciones formativas de las empresas, de la Fundación Tripartita para la Formación en el Empleo (antiguo FORCEM). En esta institución han escogido Viafirma para introducir las funcionalidades de autenticación con certificados digitales con multitud de CA’s como DNI electrónico, FNMT, IZENPE, Camerfirma, ANCERT, Firma Profesional, etc.

viafirma_loading.png

(más…)

Firmando digitalmente en Windows 7

Posteado por Felix G. Borrego en Enero 8th, 2009

Estos últimos días hemos estado realizando pruebas para comprobar el comportamiento de Viafirma en el nuevo sistema operativo de Microsoft, y los resultados no han podido ser mejores, el sistema se comporta perfectamente en Internet Explorer 8 sobre el nuevo Windows 7!!!.

Os dejo algunas capturas de pantalla:

  • En caso de que el usuario no tenga instalado Java en su sistema, la detección de componentes inicial corrige esta situación e instala automáticamente la JRE.

Detección de componentes para firma Digital con Viafirma en Windows 7

  • El componente de firma busca los certificados instalados en el sistema, detecta  los certificados presentes (en este caso un certificado de la FNMT) y nos permite realizar sin problemas la firma digital del documento.

Buscando certificados digitales instalados en el sistemaCertificado digital de la fnmt encontrado con Viafirma y firmando

Implementando un flujo de firmas en nuestro workflow

Posteado por Benito Galán en Noviembre 3rd, 2008

A continuación vamos a explicar cómo aprovechar las bondades de tres componentes habituales en nuestros desarrollos para implementar un sencillo flujo de firma de formularios.

Los jugadores son:

  1. Jbpm 3.2 como motor de workflow.
  2. Formula 2 como motor de formularios.
  3. Viafirma 1.3.5 como motor de firma digital.

La aplicación que los implementa está desarrollada con Seam + JSF + JPA.

La Descripción

Básicamente el requisito era el siguiente: un formulario completado por un usuario entraba en un flujo de transiciones en el que distintos departamentos y/o personas tenían que ir aprobándolo con su firma digital.

La solución tradicional con la que contábamos se basaba en recuperar los datos del primer formulario, y en la transición adecuada los mostrábamos para que el firmante pudiera comprobar los datos (tareas).

Esto implicaba un esfuerzo en la redendirización nuevamente de los datos facilitados por el usuario, por lo que decidimos aprovechar las características de los componentes usados para simplicarlo todo.

Solución

Formula2 permite la identificación de los campos creados en el formulario. De esta manera nuestra solución consisitirá en identificar un mismo nombre de campo dentro de un mismo ProcessId.

Una vez asegurado en nuestro proceso esta identificación de campos, ahora toca el turno de Formula2; duplicaremos el formulario original, y modificaremos todos sus campos al tipo ReadOnly, de manera que el firmante no pueda modificar los datos mostrados en el formulario inicial.


Copiar un formulario en Formula2

Opcionalmente, a esta copia del formulario se le podrán añadir campos adicionales, como por ejemplo, un campo de observaciones o bien otros campos para informar valores necesarios en la siguiente transición.

Esta tarea de modificar cada campo de un formulario podría resultar algo engorrosa, pero solo habrá que hacerlo una vez, ya que la primera copia con todos sus campos “ReadOnly” nos serviría  de base para las sucesivas copias que necesitemos, y para estas copias ya no será necesario modificar la propiedad de sus campos.

Modificar propiedad campo

Resultado

A medida que el diseño del flujo (process-definition) va ejecutando las tareas e invocando los distintos formularios, los actores propietarios de dichas tareas van firmando con su certificado digital los formularios.

El proceso de firma es delegado a nuestro al motor de firma VIAFIRMA. Cuando éste completa la transacción de firma, devuelve todos los datos necesarios a nuestro sistema. En este caso, Jbpm interpreta estos datos de firma como variables del proceso, añadiéndolos como un dato más de la transición.

Como valor agregado, estos datos de firma y los contenidos en el formulario son indexados mediante Lucene (implementando openSearch), y de esta forma ofrecemos al usuario la posibilidad de buscar su proceso por el código de firma que se le informó.

Histórico del Proceso

Tras el proceso de firma, se le muestra al usuario una pantalla de recibo, donde se le accede a toda la información del proceso con las distintas opciones:

  • Descarga del formulario que fue firmado.
  • Descarga del comprobante de firma, con los datos del firmante y de la transacción (fecha, hora y certificado usado).
  • Id. de las tarea y proceso.
  • Link permanente a su proceso.
  • Todo ello apoyado con imágenes bidimensionales como el Qr-Code con el resumen de la firma y el BarCode con el código de la firma.

Justificante de Firma

Posibles Conflictos

Seguro que a alguno ya se le ha pasado por la cabeza un posible conflicto:

¿Qué ocurre si para un mismo ProcessId se ven involucrados 2 formularios que no son copias el uno del otro, pero el identificador que le pusimos al campo es el mismo, por ejemplo ID_PROFESOR?

  • si el segundo formulario NO es una copia del primero, pero tiene un campo con el mismo Id., efectivamente nuestro proceso hará que este segundo formulario se renderice con el valor introducido para ese campo en el primer formulario. Pero, al no tratarse de una copia, el campo no será del tipo ReadOnly (o no debiera), por lo que el valor podría ser modificado por el usuario.
  • La solución a este tipo de conflictos en nuestro caso: anteponer un identificador del formulario a modo de prefijo en el identificador del campo. Por ejemplo: FRM_9_ID_PROFESOR.

Resumen

Gracias a la funcionalidad de Formula2 para identificar los campos y duplicar formularios conseguiremos una sencilla implementación de un ESCRITORIO DE FIRMA.

  • Nos ahorramos construir N formularios.
  • Nos ahorramos la lógica para recuperar y renderizar los datos asociados al formulario original y que necesitamos ir mostrando a cada firmante.

Servidores de Correo y su Integridad

Posteado por Benito Galán en Septiembre 11th, 2008

No es noticia que te fastidien una aplicación que estaba corriendo bien porque otro servicio anda por ahí haciendo de las suyas y tú eres el último en enterarte.

Este caso es el que nos pasó recientemente, y lo peor de todo es que era en un entorno de producción.

El ejemplo en cuestión se trataba de un sistema que hacía uso de VIAFIRMA (nuestra plataforma de autenticación y firma digital). Cuando ésta enviaba los correos firmados digitalmente con el certificado instalado en producción, el “maravilloso” Exchange empezó a aplicar una regla para los correos cuyo destinatario fuese un correo externo.

Esta regla no era otra que interceptar el correo e inyectarle un disclaimer en el pie, del tipo “…este mensaje contiene información confidencial….”.

El catastrófico resultado en los correos que recibían los usuarios:


La firma no es válida
El mensaje incluye una firma digital, pero la firma no es válida.
La firma no coincide correctamente con el contenido del mensaje. El mensaje parece que ha sido manipulado después de que el remitente lo firmara. Usted no debería confiar en la validez de este mensaje hasta que verifique su contenido con el remitente.
Firmado por: "la empresa en cuestión"

Para hacer más difícil aún la detección del problema, y sin saber aún por qué, Exchange no siempre estaba aplicando esta regla y se escapaban correos sin el disclaimer.

Por tanto, en sistemas de información donde apuesten por la automatización del formato de los correos salientes desde el lado servidor siempre tendrán que tener en cuenta qué REGLAS de INTEGRIDAD podrían estar rompiendo.