Está en la página 1de 3

m o nillo 007.blo gspo t .

co m

http://mo nillo 007.blo gspo t.co m/2009/03/co mo -y-po r-que-firmar-lo s-applets-java.html

Cmo y por qu firmar los Applets (Java)


Qu es un applet?
Un applet es una aplicacin java enf ocada a correr principalmente en un navegador
web, segn la Wikipedia, un Java applet es un cdigo JAVA que carece de un mtodo
main, por eso se utiliza principalmente para el trabajo de pginas web, ya que es un
pequeo programa que es utilizado en una pgina HT ML y representado por una
pequea pantalla grf ica dentro de sta.
Un applet por def ecto tiene permisos un tanto ms restrictivos que una aplicacin normal, la razn de esto
es para evitar que un usuario malintencionado escriba applets con cdigo malicioso (alguno que borre el
disco duro sin autorizacin del usuario por ejemplo), los publique en internet y posteriormente cualquier
persona que ejecute dicho applet se vea af ectada.
En algunas ocasiones es necesario que un applet acceda a ciertos recursos del locales con el f in de
realizar su f uncin cabalmente, solo que debido a las restricciones anteriormente mencionadas, no va a
ser posible a menos que sea firmado digitalmente.

Qu sucede si ejecuto un applet no firmado en el navegador?


Si tratamos de ejecutar en el navegador un applet que accese a los recursos locales y que no est
f irmado no se podr ejecutar, en la consola de la JVM aparecer un mensaje de error parecido al siguiente:
java.security.AccessControlException: access denied

Qu se necesita para firmar el applet y poderlo ejecutar?


Para f irmar digitalmente un applet es necesario de un certif icado (un archivo que contenga la f irma),
af ortunadamente, el mismo jdk nos provee de las herramientas necesarias para crearlo y posteriormente
aplicarlo a nuestro archivo .jar.
Dentro de la carpeta bin que posee el jdk (en Windows se encuentra normalmente en C:\Archivos de
programa\jdkx.xx.xx) existen un par de aplicaciones que nos servirn, dichas aplicaciones son las
siguientes:
keytool: para generar los certif icados
jarsigner: para f irmar los archivos .jar

Cmo genero un certificado?


Para generar un certif icado que posteriormente te servir para f irmar los applets solo basta ejecutar el
siguiente comando desde la lnea de comandos (en Windows puedes abrir la lnea de comandos desde
Inicio > Ejecutar > escribes cmd y presionas Enter):
keytool genkey alias Monillo validity 365 v

Donde:
Monillo es el alias que voy a utilizar (debes sustituirlo por el que t deseas).
365 son los das de validez del certif icado.
Despus de ejecutar el comando se te harn algunas preguntas (como se muestra en la imagen siguiente),
debes contestarlas a tu pref erencia (como te venga en gana pues).

Ya tengo mi certificado ahora, cmo lo utilizo para firmar los applets?


Una vez que tienes tu certif icado basta con ejecutar el siguiente comando para f irmarlo:
jarsigner.exe AppletFirmado.jar Monillo verbose

Despus de esto te pedir escribir la contrasea que def iniste anteriormente, si es correcta el applet
quedar f irmado y listo para ejecutarse en el navegador.
Es importante que tomes en cuenta que si utilizas varios archivos jar en tu aplicacin es necesario que
todos estn firmados ya que de lo contrario seguirs sin poder ejecutarla.
Cuando ejecutes tu aplicacin te aparecer un mensaje parecido al siguiente:

Una vez que des clic en Ejecutar podrs trabajar con ella sin problemas.

Eso es todo. Alguna duda o algo qu decir? Deja tu comentario. Saludox.

También podría gustarte