elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java (Moderadores: Debci, Leyer)
| | | |-+  cifrar ejecutable .jar????
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: cifrar ejecutable .jar????  (Leído 7,478 veces)
DonVidela


Conectado Conectado

Mensajes: 1.974



Ver Perfil WWW
cifrar ejecutable .jar????
« en: 31 Julio 2009, 23:24 »

Hola a todos , esa es mi duda , se puede cifrar el ejecutable hecho en java , un .jar? , esto es para que no me puedan leer mi codigo descompilando o algo parecido ,  y otra cosa , como puedo hacer para cifrar los string de conexion que conecta a  una base de datos?

cosa para que no puedan leer de ninguna forma mi programa , ni sniffeandolo  :-\


En línea

Aprendiendo: Java , C# , pl/sql, mysql , sql server, PHP , Access, JSF, Facelets, JSP, CakePHP, JQuery, Perl, Android

http://pablovidela.wordpress.com
kinos

Desconectado Desconectado

Mensajes: 104



Ver Perfil
Re: cifrar ejecutable .jar????
« Respuesta #1 en: 1 Agosto 2009, 02:07 »

Hay que hacer varias cosas. Todavía no he probado el tema que comentas pero tengo un librito mágico por aki. "Hackers de JAVA y J2EE".
Pone muchas cosillas.

1. Apagar la información de depuración al compilar: (para dar menos facilidades a la ingenieria inversa)

   -compilar asi--> javac -g:none Test.java

2. Ofuscación:

   -Consigue un ofuscador pa poner feo el codigo... to mu negro...

3. Modificar, codificar o cifrar los archivos de clase:

   -Escribir una herramienta para cifrar, codificar o modificar un archivo de clase normal de forma que sea incomprensible para cualquier JVM o descompilador.
   -Extender la clase URLClassLoader y sobreescribir el método findClass de forma que encuentre y descifre la clase que se cifró en el primer paso.
   -Escribir un programa de prueba que cargue una clase en particular con el cargador de clases propio.

4. Los peligros de las cadenas empotradas:

   -Ojo con lo que guardas en los strings (si esta el programa ejecutandose, digamos que puedes ver lo que hay en la ram, en los archivos de clase o algo asi... una clave de accesoo..)

Y nose que más... esque si encriptases el jar supongo que no se podría ejecutar. Así que habría que hacer alguna cosa de estas.

Suerte


En línea

DonVidela


Conectado Conectado

Mensajes: 1.974



Ver Perfil WWW
Re: cifrar ejecutable .jar????
« Respuesta #2 en: 1 Agosto 2009, 02:29 »

y si quiero compilar un proyecto de netbeans , no puedo compilar clase por clase que son como 50  :xD, y sobre la ofuscacion buscare sobre el tema , gracias por la orientacion , si tienes mas info te lo agradeceria
En línea

Aprendiendo: Java , C# , pl/sql, mysql , sql server, PHP , Access, JSF, Facelets, JSP, CakePHP, JQuery, Perl, Android

http://pablovidela.wordpress.com
egyware


Desconectado Desconectado

Mensajes: 518



Ver Perfil WWW
Re: cifrar ejecutable .jar????
« Respuesta #3 en: 14 Agosto 2009, 17:07 »

Yo antes tenia la misma duda, existe un programa en Java que ofusca se llama ProGuard. Buscalo es facil de usar y muy dificill de descompilar he incluso te achica el Jar
En línea

DonVidela


Conectado Conectado

Mensajes: 1.974



Ver Perfil WWW
Re: cifrar ejecutable .jar????
« Respuesta #4 en: 14 Agosto 2009, 18:53 »

Gracias por responder , ahora mismo buscare el programa  ;)
En línea

Aprendiendo: Java , C# , pl/sql, mysql , sql server, PHP , Access, JSF, Facelets, JSP, CakePHP, JQuery, Perl, Android

http://pablovidela.wordpress.com
Darhius


Desconectado Desconectado

Mensajes: 1.177


Ver Perfil
Re: cifrar ejecutable .jar????
« Respuesta #5 en: 14 Agosto 2009, 22:09 »

Protecting Java Code Via Code Obfuscation

http://www.cs.arizona.edu/~collberg/Research/Students/DouglasLow/obfuscation.html
« Última modificación: 14 Agosto 2009, 22:27 por Darhius » En línea

abc
Darhius


Desconectado Desconectado

Mensajes: 1.177


Ver Perfil
Re: cifrar ejecutable .jar????
« Respuesta #6 en: 14 Agosto 2009, 22:21 »

Aqui encontraran una amplia variedad de Decompiladores y Ofuscadores

http://www.plentyofcode.com/2007/08/java-decompilers-and-obfuscators.html

Yo utilizo proguard, aunque no lo se usar muy bien, trae muchas opciones, pero lo uso para cuando le voy a pasar algun programa (que vean como funciona) a mis cuates, para que no se roben mi código  :laugh: pero me imagino que ya hay programas para arreglar eso xD, es cuestion de investigar.

Asi te deja el codigo (repito no lo he usado a su maximo, asi que me imagino que usando otras opciones lo ha de dejar mas "oscuro" o feo  :rolleyes:)

Código:
private boolean b()
    {
        Object obj;
        ab ab1;
        if(b_javax_swing_JTextField_fld.getText().equals(""))
            break MISSING_BLOCK_LABEL_198;
        obj = new i(b_javax_swing_JTextField_fld.getText());
        obj = new D(((i) (obj)));
        ab1 = new ab();
        double d1;
        d1 = ab1.a(((D) (obj)).a());
        h_java_lang_String_fld = (new StringBuilder()).append("Exp Arit = ").append(String.valueOf(d1)).toString();
        new StringBuilder();
        this;
        JVM INSTR dup_x1 ;
        g_java_lang_String_fld;
        append();
        a_char_fld;
        append();
        b_javax_swing_JTextField_fld.getText();
        append();
        " = ";
        append();
        String.valueOf(d1);
        append();
        "\n";
        append();
        toString();
        g_java_lang_String_fld;
        b_javax_swing_JTextArea_fld.setText(g_java_lang_String_fld);
        g_boolean_fld = true;
        break MISSING_BLOCK_LABEL_238;
        JVM INSTR pop ;
        a_h_fld.a("Error");
        JOptionPane.showMessageDialog(this, "No se puede Evaluar", "Error", 0, new ImageIcon(getClass().getResource("/images/Error.png")));
        break MISSING_BLOCK_LABEL_238;
        a_h_fld.a("Error");
        JOptionPane.showMessageDialog(this, "Cadena vacia", "Error", 0, new ImageIcon(getClass().getResource("/images/Error.png")));
        g_boolean_fld = false;
        return g_boolean_fld;
    }


Saludos

PD. Volviendo al tema, ¿Se puede cifrar un jar para evitar que lean tu código??  :huh:
« Última modificación: 14 Agosto 2009, 22:24 por Darhius » En línea

abc
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
Powered by SMF 1.1.19 | SMF © 2006-2008, Simple Machines