Los ficheros JAR (ARchive of Java) contienen componentes de Java (como archivos de clase) y, opcionalmente, recursos de soporte (como imágenes o sonidos).
Como hemos visto antes, las políticas de seguridad se pueden especificar por su ubicación o por la persona que firma el fichero jar
. A continuación, vamos a aprender a crear un fichero jar
y firmarlo digitalmente para, más adelante, establecer correctamente sus políticas de acceso.
Los pasos que debemos realizar son:
- Descarga el siguiente código fuente o utiliza cualquier otro código que estimes conveniente.
- Compila el código fuente:
javac GetProps.java
- Crea el fichero jar ejecutando:
jar cvf GetProps.jar GetProps.class
- Genera las claves. A continuación vamos a crear un par de claves (una clave privada y una clave pública) para firmar el fichero. La clave privada la vamos a utilizar para firmar el fichero y la clave pública la van a utilizar los demás usuarios para comprobar que el fichero es correcto. En la siguiente unidad aprenderás muchos más conceptos relacionados con la criptografía en java.
Para generar las claves ejecutamos:
keytool –genkey –alias firmar –keypass hola00 –keystore DAM –storepass distancia
donde:
- -
alias firmar
. Indica el alias que se va a utilizar para referirnos al keystore, que es donde se van almacenar las llaves generadas. - -
keypass hola00
. Especifica la contraseña de la llave privada. - -
keystore DAM
. Indica el nombre delkeystore
que se esta creando o utilizando. - -
storepass distancia
. Indica el password delkeystore
.
A continuación, tal y como se puedes ver en la siguiente figura, hay que introducir los datos del certificado: nombre, organización, localidad, etc.
- -
- Finalmente, firmados el fichero jar utilizando el certificado creado
jarsigner –keystore DAM –signedjar sGetProps.jar GetProps.jar firmar
donde:
- -
keystore DAM
. Es el keystore creado anteriormente. - -
signedjar sGetPrrops.jar
. Indica el ficherojar
firmado. GetProps.jar
Es el ficherojar
a firmar.firmar
. Es el alias que se ha creado anteriormente.- Exportamos la llave pública del certificado ejecutando:
keytool –export –keystore DAM –alias firmar –file Javier.cert
Ahora ya tenemos todos los archivos necesarios para enviarlos a los diferentes clientes que quieran utilizar nuestra aplicación: el fichero jar firmado (sGetProps.jar
) y el certificado (Javier.cert
).