Hvorfor skulle det ikke være muligt at decompile ?
VB6 og .NET sprogene har samme problem.
Klassisk C/C++/Pascal/Fortran har ikke helt problemet, fordi ganske vist er det rimeligt nemt at deassemble en executable til assembler kode, men det er meget svært at generere C/C++/Pascal/Fortran kode.
Forskellen ligger bl.a. i hvor optimeringen ligger. En Java compiler er en ret simpel compiler - optimeringen foregår først i JVM'en. En C++ compiler er en meget avanceret compiler som laver optimeringen.
Det er jo åbenlyst nemmere a decompile noget der ikke er optimeret end noget der er optimeret.
Så obfuscating er noget man skal lære at bruge hvis man leverer Java software til andre og man er bekymret for decompilering.
tjaa obfuscering burde være nok. Det kunne bare være fedt hvis noget af optimeringen (det der er platformsudafhængigt) var op til compileren (det er det måske også ?)
Fordi class-filer kan jo køres på mange platforme. En gammel 200 MHz Pentium med Linux, en Athlon XP 2000+ med Windows 2000, en SUN 15000 med 64 CPU'er og Solaris 9 har nok ikke så meget til fælles me dhensyn til hvad der er en god optimering.
Og den genererer lidt anderledes kode når den obfuscater.
Men den er tilsyneladende ikke særligt god til det.
Jeg plejer at bruge jmangle til det og den kan man konfigurere til at være ret hård.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.