Pular para o conteúdo principal

Como Ofuscar o Seu Código Java?

Para ofuscar e proteger seu código Java, você pode usar uma ferramenta de ofuscação. A ofuscação torna o código-fonte mais difícil de entender e reverso-engenharia, mas ainda funcionando da mesma maneira.

Ppara ofuscar seu código Java usando a ferramenta popular ProGuard, siga os passos a seguir:

  1. Baixe o ProGuard: Faça o download do ProGuard no site oficial: https://www.guardsquare.com/en/products/proguard.
  2. Descompacte o arquivo: Depois de baixar o ProGuard, descompacte o arquivo em uma pasta de sua escolha.
  3. Configure o ProGuard: Crie um arquivo de configuração chamado proguard.conf. Nele, você deve especificar os detalhes do projeto, como arquivos JAR de entrada e saída, bibliotecas e opções de ofuscação. Por exemplo:


    -injars       input.jar
    -outjars      output.jar
    -libraryjars  /caminho/para/jdk/jre/lib/rt.jar
    -printmapping mapping.txt
    -dontoptimize
    -dontshrink
    -dontusemixedcaseclassnames
    -dontskipnonpubliclibraryclasses
    -dontskipnonpubliclibraryclassmembers
    -dontpreverify
    -verbose
    -keep public class seuPacote.Principal {
        public static void main(java.lang.String[]);
    }

    Neste exemplo, você deve substituir input.jar, output.jar, /caminho/para/jdk/jre/lib/rt.jar e seu Pacote.Principal pelos valores correspondentes ao seu projeto.

  4. Execute o ProGuard: Navegue até a pasta onde você descompactou o ProGuard e execute o seguinte comando:

    java -jar proguard.jar @proguard.conf

  5. Isso ofuscará o código Java no arquivo input.jar e criará um novo arquivo JAR ofuscado chamado output.jar.

  6. Teste o arquivo JAR ofuscado: Depois de ofuscar o código Java, teste o novo arquivo JAR ofuscado para garantir que ele ainda funcione conforme o esperado. Se houver problemas, ajuste as configurações do ProGuard e tente novamente. 

Lembre-se de que a ofuscação não garante proteção absoluta contra a engenharia reversa, mas pode dificultar significativamente o processo e desencorajar tentativas de análise do seu código.

Refrência:

GUARDSQUARE. ProGuard. Disponível em: https://www.guardsquare.com/en/products/proguard. Acesso em: 25 mar. 2023.

Comentários

Postagens mais visitadas deste blog

O que é Transpilação ?

A transpilação é, essencialmente, uma tradução especializada do processo de compilação. O procedimento é realizado de forma semelhante ao que um compilador faz, porém com uma diferença notável: enquanto um compilador tradicional tem como alvo um código de baixo nível, como Assembly ou código de máquina, o transpilador tem como objetivo um código-fonte em uma linguagem diferente ou a mesma linguagem escrita de outra maneira. Linguagens como CoffeeScript, TypeScript e o próprio JavaScript usam a transpilação para garantir compatibilidade entre versões. Há também outras linguagens que geram código-fonte em C em vez de código de baixo nível. Dessa forma, é possível programar em ES6 sem preocupações, mesmo que você queira oferecer suporte a navegadores antigos com versões mais antigas da especificação EcmaScript. Basta realizar a transpilação do ES6 para uma versão anterior e o código poderá ser executado em qualquer lugar. Isso se torna ainda mais fácil, já que muitas das novidades do Java...
EAAS – TUDO COMO SERVIÇO:  MUDANÇAS E TENDENCIAS DO TIC NAS EMPRESAS   Por Thiago Neri e  Italo Schramm Resumo   Este   artigo aborda os conceitos de   Cloud   Computing , especificamente a tipologia   EaaS , voltado para empresas que a utilizam, para aquelas   que   querem e   estão em processos de mudança de plataforma. Foram pesquisados os dados de migração das empresas para essa plataforma, bem como temas de segurança e disponibilidade dela no nosso país, com o objetivo de entender o porquê das empresas buscarem   esse serviço e as suas tendências.    Palavras-chave :   Cloud   Computing .   EaaS .   Plataforma.      Introdução   Apesar dos conceitos serem antigos,   o   Cloud   Computing   ainda é muito recente, podemos dizer que estamos no início de tudo   e sua história ainda está sendo escrita. O que eram ideias e ...