AZLinux

Certificados digitales en AZLinux 3

Por @jact_abcweb

En este artículo hablaremos de cómo hemos hecho funcionar los certificados digitales Ceres y DNIe en AZLinux 3.

La distribución base de esta nueva versión de nuestra distribución es openSUSE 11.4. La versión mínima de OpenSC para esta versión de openSUSE es la 0.12.0, la cual es incompatible con los paquetes opensc-ceres y opensc-dnie existentes, ya que no permite la carga dinámica de módulos criptográficos.

Primer intento

La primera tentativa consistió en instalar los paquetes que ya teníamos funcionando en nuestra distribución anterior (AZLinux 2, con openSUSE 11.2 como sistema base): opensc-0.11.7, opensc-ceres-2.1.1 y opensc-dnie-1.4.6.

Conseguimos instalar el pack sin problemas, pero, al ejecutar los comandos de OpenSC, observamos que no era posible acceder a los certificados de las tarjetas.

Segundo intento

Hacer funcionar el DNIe en openSUSE 11.4, gracias al proyecto OpenDNIe, no tiene ya mayor dificultad, pero para nosotros, en nuestro quehacer diario, sigue siendo prioritario trabajar con los certificados Ceres, aunque eso signifique perder la funcionalidad del DNIe. Por esa razón, la siguientes pruebas fueron encaminadas a hacer funcionar ese módulo criptográfico, a cualquier precio. Esto fue lo que hicimos.

Lo primero fue hacer un downgrade de OpenSC en la distribución base (openSUSE 11.4), para permitir la carga de módulos. Conseguimos hacer funcionar la versión 0.11.13 perteneciente a openSUSE 11.3, pero instalando las dependencias de openSUSE 11.4 (todas las que se podían).

Después, tuvimos que compilar el fuente de opensc-ceres, modificando la constante MODULE_VERSION referente a la versión de OpenSC, en el fichero src/libcard/base_card.h.

El invento es totalmente funcional y se consigue operar tanto con los comandos de OpenSC como con el módulo a través del navegador web Firefox.

A la tercera, va a la vencida

Ya teníamos soporte para Ceres y teníamos resuelta la papeleta de los certificados digitales en nuestra versión en desarrollo. Sin embargo, nos resistíamos a dejar fuera de juego al DNIe, pues cada vez se pueden hacer más gestiones con él y, pensando en el futuro cercano, nos podía venir bien para actualizar el sistema operativo en nuestros equipos de atención al público (a los que llamamos Zaragoza Accesible).

Para aprovechar el trabajo ya hecho, podríamos haber compilado el fuente del paquete opensc-dnie y utilizar el mismo truco de la constante de la versión de OpenSC. Pero hicimos otra cosa: empezamos de cero con otra perspectiva. Partimos de un OpenDNIe funcional para nuestra plataforma y volvimos a compilar opensc-ceres.

Optamos por esta opción por 2 razones: porque existía una versión de OpenSC que nos permitía la carga de módulos adicionales y porque así podíamos tener las ventajas de un código de OpenDNIe más actualizado. En el proyecto OpenDNIe, existe una primera versión de OpenSC que tiene ya integrado OpenDNIe. Esta versión corresponde a los inicios del proyecto y nos permitía probar nuestra teoría.

Compilamos el paquete y las pruebas de funcionamiento fueron positivas con la página de verificación de la DGP. Después, volvimos a compilar opensc-ceres y, modificando el fichero /etc/opensc.conf, conseguimos soporte para ambos módulos criptográficos.

Como último paso, paquetizamos los ficheros objeto de OpenSC y Ceres, automatizando el proceso de instalación de los certficados raíz y configuración de OpenSC. Un reto menos en nuestro camino hacia AZLinux 3.

31/10/2011 16:04 #.

Comentarios » Ir a formulario

gravatar.com
Autor: Liberar Samsung Galazy S2

Muchas gracias por los articulos, tan practicos y de tanta ayuda como siempre
gracias

Fecha: 02/12/2011 12:16.


Añadir un comentario




No será mostrado.




| Blog ciudadano realizado con Blogia 2.0 | Suscríbete: RSS | Administrar