Obfuscar arquivo jar, e, manter a capacidade executável do mesmo.[resolvido]  XML
Índice dos Fóruns » Assuntos gerais (Off-topic)
Autor Mensagem
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Online

Bom dia pessoal.

Estou com uma dúvida, em um projeto que estou desenvolvendo. O software está concluído, e eu o obfusquei usando o proguard, para que não se consiga fazer engenharia reversa. Após a obfuscação, o jar perde a capacidade executável.

Existe uma maneira, de que, ao executar o jar, ele se de-obfusque?

This message was edited 1 time. Last update was at 01/10/2009 10:16:52


www.citrox.com.br
entanglement
GUJ Hacker

Membro desde: 26/09/2009 09:18:56
Mensagens: 5750
Online

juliocbq wrote: Após a obfuscação, o jar perde a capacidade executável.


Algo foi feito na obfuscação que fez com que o JAR não conseguisse ser mais executável (por exemplo, porque algumas bibliotecas não foram mais carregadas, ou porque alguma classe ou método que deveria ser carregado por reflection agora mudou de nome e não consegue mais ser invocada).
Você precisa checar alguns parâmetros do obfuscador para que ele não trabalhe tão agressivamente assim.
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Online

entanglement wrote:
juliocbq wrote: Após a obfuscação, o jar perde a capacidade executável.


Algo foi feito na obfuscação que fez com que o JAR não conseguisse ser mais executável (por exemplo, porque algumas bibliotecas não foram mais carregadas, ou porque alguma classe ou método que deveria ser carregado por reflection agora mudou de nome e não consegue mais ser invocada).
Você precisa checar alguns parâmetros do obfuscador para que ele não trabalhe tão agressivamente assim.


Ok, vou checar a documentação. Obrigado pela luz.

www.citrox.com.br
fabiofalci
GUJ Master
[Avatar]

Membro desde: 11/04/2006 09:23:14
Mensagens: 1057
Localização: Porto Alegre - RS
Offline

Veja se ele não mudou o nome da classe que contém o main, e se esta mudança
está refletida no Manifest.
[WWW] [MSN] [ICQ]
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Online

fabiofalci wrote:Veja se ele não mudou o nome da classe que contém o main, e se esta mudança
está refletida no Manifest.


Verifiquei aqui, e não mudou. Agora ele executa, mas a funcionalidade do hibernate ficou comprometida. Vou continuar lendo aqui.

www.citrox.com.br
Marky.Vasconcelos
Moderador
[Avatar]

Membro desde: 11/04/2007 18:18:20
Mensagens: 5932
Localização: São Paulo/SP
Online

Veja se em algum lugar voce não fez um Class.forName e o obfuscador mudou o nome da classe.
Veja também se o projeto não usa Reflection e o obfuscador mudou o nome dos atributos da classe.

Facebook @MarkyHitchhiker +Mark WP: MarkyTech's

Projects:
Android Roadmap - Aprenda Android do inicio (Java é o unico pre-requisito)
Towel ( ObjectTableModel & Swing & Utils )
Tower Defense Game - Java2D [Open-Source] [How-to-play]
EVGD: Programação de jogos (links) Ponto V! - Desenvolvimento de jogos para indies, curiosos e profissionais

DefaultTableModel?! PARE! Não faça isso! Faça melhor!

Dicas: Faça perguntas inteligentes! ; MigLayout ; GridBagLayout (Joke)

Develop games is fantastic, with words you can make worlds!!!

DON'T PANIC!
MarkyHitchhiker's Blog!
[WWW] [MSN]
fabiofalci
GUJ Master
[Avatar]

Membro desde: 11/04/2006 09:23:14
Mensagens: 1057
Localização: Porto Alegre - RS
Offline

Cuidado com arquivos XMLs e .properties com classes/atributos. Como por exemplo os
XMLs do Spring. Se não me engano o proguard tem um modo onde ele procura por 'referências'
em arquivos não java e acerta.
[WWW] [MSN] [ICQ]
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Online

O problema era que as annotations do hibernate estavam sendo obfuscadas. Criei uma regra para excluí-las, e deu tudo certo. Muito Obrigado, a quem postou idéias, e contribuiu com a solução.

www.citrox.com.br
jacksonemmerich
HelloWorld
[Avatar]

Membro desde: 29/05/2006 00:56:39
Mensagens: 13
Offline

Caros amigos, precisaria obfuscar meu arquivo hibernate.properties junto com "MeuJar.jar" com esse programa não teria problemas ? se tiver como, qual seria a solução para isso?
[MSN]
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Online

jacksonemmerich wrote:Caros amigos, precisaria obfuscar meu arquivo hibernate.properties junto com "MeuJar.jar" com esse programa não teria problemas ? se tiver como, qual seria a solução para isso?

você não pode obfuscar nada do hibernate, principalmente as annotations, senão seu soft para de funcionar.

www.citrox.com.br
 
Índice dos Fóruns » Assuntos gerais (Off-topic)
Ir para:   
Powered by JForum 2.1.8 © JForum Team