Os amigos do forum conhecem alguma maneira eficas de proteger o codigo fonte , pra ser direto preciso proteger uma
Classe que eu passo o usuario e senha do banco de dados…alteraram certos dados de um banco usando esse recurso…
Grato pela ajuda!!
Os amigos do forum conhecem alguma maneira eficas de proteger o codigo fonte , pra ser direto preciso proteger uma
Classe que eu passo o usuario e senha do banco de dados…alteraram certos dados de um banco usando esse recurso…
Grato pela ajuda!!
Vc precisa proteger o código fonte ou o acesso à classe através de outras classes?
O codigo fonte!!
[quote=irmao_de_luta]Os amigos do forum conhecem alguma maneira eficas de proteger o codigo fonte , pra ser direto preciso proteger uma
Classe que eu passo o usuario e senha do banco de dados…alteraram certos dados de um banco usando esse recurso…
Grato pela ajuda!![/quote]
Uma forma é não usar usuário e senha. Se estiver usando o Oracle, por exemplo, pode-se usar o “Oracle Wallet”
Talvez esse artigo te ajude (nunca testei mas talvez te dê uma luz):
http://evandropaes.wordpress.com/2008/06/20/protegendo-o-seu-codigo-java-da-engenharia-reversa/
Não se esqueça que usuários e senhas não devem ser guardados em código.
Suponha que você, por algum motivo, tenha usado um método de criptografia que faça com que, em vez de você guardar a combinação “scott/tiger” no seu código, guarde “InNjb3R0IiANCg==” e “InRpZ2VyIiANCg==”.
Com um pouco de paciência, qualquer pessoa com um pouco mais de cabeça consegue rodar seu programa em um debugador e separar a classe Java que você escreveu e que descriptografa essas duas strings e as converte em “scott” / “tiger” - não adianta fazer obfuscação do código porque basta botar um breakpoint naquela rotina que abre uma conexão com o banco de dados e chama um determinado método do JDBC. Nesse ponto as strings devem estar “em claro”.
[quote=entanglement]Não se esqueça que usuários e senhas não devem ser guardados em código.
Suponha que você, por algum motivo, tenha usado um método de criptografia que faça com que, em vez de você guardar a combinação “scott/tiger” no seu código, guarde “InNjb3R0IiANCg==” e “InRpZ2VyIiANCg==”.
Com um pouco de paciência, qualquer pessoa com um pouco mais de cabeça consegue rodar seu programa em um debugador e separar a classe Java que você escreveu e que descriptografa essas duas strings e as converte em “scott” / “tiger” - não adianta fazer obfuscação do código porque basta botar um breakpoint naquela rotina que abre uma conexão com o banco de dados e chama um determinado método do JDBC. Nesse ponto as strings devem estar “em claro”.
[/quote]
Muito interessante esse post. Pode me dizer o nome dessa rotina? :lol:
Então, você pode pôr um breakpoint no código da classe do seu driver JDBC que implementa java.sql.DriverManager.getConnection() - lá, como você deve saber, deve ficar a string de conexão ao banco, e o objeto Properties que normalmente contém usuário e senha.
Ou seja, você não precisa ser um hacker russo ou chinês - basta conseguir debugar o código Java e botar um breakpoint no lugar certo.