Ahora que me he hecho con un DNIe 3.0 creía que todo iban a ser ventajas pero … lo primero que me he encontrado es que AutoFirma no me lo detectaba en mi Kubuntu 20.04 LTS. Por suerte ya había otra gente que se había peleado con ello antes que yo. Resumo aquí los pasos que he seguido.
En primer lugar hay que instalar Autofirma. Prueba a ejecutarla y, si te permite trabajar con tu DNIe, estás de enhorabuena, puedes olvidarte de este post ;)
A partir de aquí asumo que has descartado otros posibles problemas con drivers, certificados, etc. y que al ejecutar pcsc_scan
con el DNIe insertado en el lector te reconoce tu DNIe 3.0 pero, sin embargo, no te aparece al ejecutar AutoFirma.
Describo los pasos que he seguido para generar un fichero AutoFirmaFixed.jar con el que reemplazar (paso #9 para los impacientes) el fichero /usr/lib/AutoFirma/AutoFirma.jar
que se instala de serie:
- Creamos un directorio de trabajo:
1 2
$ mkdir ~/autofirma $ cd ~/autofirma
- Desempaquetamos el jar original:
1 2 3 4 5
$ mkdir AutoFirmaOrig $ cd AutoFirmaOrig $ cp /usr/lib/AutoFirma/AutoFirma.jar . $ jar xvf AutoFirma.jar $ rm AutoFirma.jar
- Borramos las clases de
jmulticard
, ya que las vamos a substituir por una nueva versión:1
$ rm -rf es/gob/jmulticard/
- Descargamos y compilamos la última versión de
jmulticard
, que soluciona el problema:1 2 3 4
$ cd ~/autofirma $ git clone https://github.com/ctt-gob-es/jmulticard.git $ cd jmulticard $ mvn install
- Instalamos las nuevas clases:
1 2
$ for jar in `find . | grep '\.jar$' | grep -v android`; do jar xvf $jar; done $ mv es/gob/jmulticard/ ../AutoFirmaOrig/es/gob
- Borramos las firmas y preparamos un nuevo manifiesto:
1 2 3
$ cd ~/autofirma/AutoFirmaOrig $ rm META-INF/*.SF META-INF/*.RSA $ head -n 13 META-INF/MANIFEST.MF > ../MANIFEST.MF
- Construimos el nuevo jar:
1 2
$ jar cfm ../AutoFirmaFixed.jar ../MANIFEST.MF * $ cd ..
- Comprobamos que funcione bien:
1
$ java -jar AutoFirmaFixed.jar
- Reemplazamos el original:
1
$ sudo cp AutoFirmaFixed.jar /usr/lib/AutoFirma/AutoFirma.jar
- Borramos el directorio de trabajo:
1 2
$ cd $ rm -rf ~/autofirma/
Comments powered by Disqus.