lunes, 14 de junio de 2010

Firmar una aplicacion en Java

Cuando creamos una aplicación móvil (o aplet) para cualquier arquitectura, ésta posee permisologia restrictiva para evitar la propagación de códigos maliciosos (virus, aplicaciones no confiables).

En algunas ocasiones necesitamos que nuestra aplicación acceda a recursos que normalmente están restringidos debido al criterio antes mencionado, así que lo mas recomendable es que le hagamos una firma digital.

Existen dos ejecutables que se encuentran en el directorio bin de nuestra instalación de JAVA, llamados keytool, y jarsigner, los cuales podrán ser invocados desde sus respectivas rutas (en caso de windows c:\Program Files\JDK....\bin\).

Solo hacen falta dos pasos para firmar una aplicacion:

1. Generar el Certificado Digital; para eso ejecutamos:

>keytool -genkey -alias MIFIRMA -validity 365 -v

donde MIFIRMA puede ser el nombre de su grupo de claves, o incluso de su compañia. Durante la creación se le pedirá una contraseña para generar la firma, asi como sus datos personales y/o empresariales.

2. Aplicar el certificado digital a un ejecutable o clase:

>jarsigner MiPrograma.jar MIFIRMA -verbose

La aplicación de la firma solo pedirá la contraseña indicada en el paso 1.

Ya con esto tenemos a MiPrograma.jar listo para ser publicado en cualquier sitio o dispositivo!

No hay comentarios: