L'argomento è già stato trattato ma al momento non ti so indicare il thread esatto,prova a fare una ricerca.Comunque esistono degli offuscatori che rendono difficile (o forse impossibile non so) la decompilazione del bytecode.Inoltre nel thread in cui l'argomento è stato già trattato qualcuno aveva parlato di programmi che sostituiscono tutti i nomi dei metodi e delle variabili originari con altri senza alcun valore autoesplicativo (cioè ad esempio la variabile numLines indicante evidentemente il numero di linee di qualcosa viene sostituita con a,o ancora peggio con hsksfy e roba del genere) rendendo la comprensione del codice decompilato a dir poco ardua e offrendo quindi una buona protezione.