PDA

View Full Version : Vendere programma JAVA


MEMon
21-07-2006, 13:10
Mi chiedevo, è possibile vendere e quindi proteggere un programma scritto in java?
Per quanto ne so io per poter eseguire codice scritto in java c'è bisogno dei file class, ma questi file contengono, praticamente a chiere lettere, il codice vero e proprio.
Com'è possibile quindi venederlo se poi chiunque ne abbia intenzione può leggerne il codice e quindi volendo anche sfruttarlo?

andbin
21-07-2006, 13:33
Per quanto ne so io per poter eseguire codice scritto in java c'è bisogno dei file class, ma questi file contengono, praticamente a chiere lettere, il codice vero e proprio.Si possono usare degli appositi "offuscatori", che, nota bene, non impediscono di certo il reverse-engineering ma lo rendono decisamente meno facile.

Per Java vedi ad esempio: http://proguard.sourceforge.net.

MEMon
21-07-2006, 14:28
Ok, quindi chi vende programmi in java usa per forza di cose questi offuscatori.
Ma la difficoltà nelle'eseguire il reverse-engineering su codice java resta comunque minore che eseguirlo su codice scritto in altri linguaggi, tipo c++?
O si arriva grosso modo alle stesse difficoltà?

andbin
21-07-2006, 16:02
Ma la difficoltà nelle'eseguire il reverse-engineering su codice java resta comunque minore che eseguirlo su codice scritto in altri linguaggi, tipo c++?Esatto. Decompilando un .class Java riesci ad ottenere un sorgente tuttosommato in buona forma, anche se ovviamente non hai i commenti e, se offuscato, certi nomi sono a palla.

Da un qualunque eseguibile sviluppato in C/C++ non credo che si possa ottenere un sorgente valido e pulito. Quello che hai nell'eseguibile è solamente codice assembly della macchina puro e basta. Che oltretutto può cambiare anche notevolmente in base al compilatore usato e alle varie ottimizzazioni implementate.
Risalire ad un codice sorgente C/C++ valido e ricompilabile credo che sia utopia ...