Newsgroup: it.comp.java
Titolo: Java obfuscator

Ho sviluppato in Java con Eclipse un programma, dai file ".class"
e' possibile risalire al sorgente?
Conviene usare un "Java obfuscator" ?
Ne esistono di gratuiti anche per uso commerciale? (il programma
vorrei venderlo)
 
 

 vorrei venderlo)
 
Se hai intenzione di vendere il tuo applicativo, allora valutare di 
acquistare (oppure sostenere mediante donazione) un prodotto per te utile e` 
sempre una cosa buona e giusta, sia perche` ci guadagna l'autore, sia 
perche` ci guadagni tu
 
Enrico
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
 
iQEcBAEBAgAGBQJO6oktAAoJED3SMOGZLYdYIHUH/RjD4kCqpzYmJHpDIdLHOHGl
ZsMYNL6GN9I+RPa+z6VvhxLOxD6Y/NIxubgaVjs7tYSvEmMBkUX1pg+mGMXuSGPE
b5W1wZ8RbKTwSlAtcWIo/1oHTHvII37DCpxexOFGLWxXISlUGJbn5/6iKn4/4azA
1M1RZyiTy10X5JHlZNeuKpsPVXRIjTXCX4h7rOZt89/r5yFpfMGU/x9TOuWrqKSP
3ZlRC7dHvPOE9z03W+cX7yMOVLn4t9VinP3Fv2X8ohAKGQwu+Ni63VqzijzEAEOX
+JkPsoHEncLW8GAmpIxKwsxPzDR+FBX2xboRNrc6JkrGzdpBmDe1TPMhqVRK2LU=
=oJJi
-----END PGP SIGNATURE-----
 

 Conviene usare un "Java obfuscator" ?
 
a mio avviso il gioco non vale la candela.

 a mio avviso il gioco non vale la candela.
 
 
Perche' mi sconsigliate di usare un Java Obfuscator?
 
 


l'offuscatore agisce sul bytecode modificandolo sia nei nomi/simboli
che introducendo elementi di "confusione". questo comporta due cose:
 
- codice e algoritmi vengono modificati e non in senso di
ottimizzarli, questo in alcuni casi può avere un costo sensibile
- visto che i nomi di classi, metodi, variabili vengono modificati
diventa quasi impossibile (o comunque complesso) usare questa tecnica
per le librerie riusabili. inoltre ti devi scordare molte tecniche che
fanno uso introspezione, di configurazioni dichiarative, aop e altro
che al momento non mi sovviene.
 
il tutto per cosa? per evitare che qualcuno "carpisca" i segreti di
pulcinella che si nascondono nei sorgenti del mio programma, come se a
scrivere un programma java nascondesse chissà quali misteri.

 vorrei venderlo)
 
Ne esistono di gratuiti che però non sono molto aggiornati, di buono
c'era solo un prodotto commerciale ma che in questo momemto non ricordo
con precisione il nome.
In alternativa puoi orientarti su "Microsoft Visual J# 2005" che, se non
sbaglio, permetteva di creare codice .exe
 
 
-- 
 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it
 
 
 

 sbaglio, permetteva di creare codice .exe
 
 
Che dici di ProGuard?
Dovrebbe essere gratuito anche per uso commerciale.
Mi sembra un prodotto molto buono, aggiornato a Java 7.
 
 

 Mi sembra un prodotto molto buono, aggiornato a Java 7.
 
Se non ricordo male, l'anno scorso l'ho provato con risultati non
tanto strabilianti, cosě come tutta una serie di tools gratuiti.
Bene o male si riusciva ugualmente a ricavare i sorgenti.
 
Provalo e poi fai la verifica, magari č stato migliorato :)


 Provalo e poi fai la verifica, magari č stato migliorato :)
 
 
Puoi indicarmi il link da cui scaricare un buon de-compilatore?
Voglio provare a ricavare i sorgenti dai file offuscati con ProGuard.
 
 

 Voglio provare a ricavare i sorgenti dai file offuscati con ProGuard.
 
Ad esempio puoi utilizzare *DJ Java Decompiler*


 sbaglio, permetteva di creare codice .exe
 
JSmooth permette di creare eseguibili in ambiente windows, mentre GCJ 
permette di crearli in ambiente linux (in teoria quest'ultimo e` disponibile 
anche in ambiente windows, ma non so se ne esiste una versione gia` 
compilata)
 
Enrico

 JSmooth permette di creare eseguibili in ambiente windows,
 
Occhio che spesso questi programmi sono dei wrapper... jsmooth lo usava un 
mio collega che in questi giorni non c'e' e non posso chiedergli 
informazioni, ma io usavo launch4j e ti posso confermare che era solo un 
banale wrapper: bastava rinominare l'exe in .jar ed aprirlo con winrar per 
avere tutti i class e da li' risalire ai sorgenti. Quindi se il punto di 
partenza dell'OP era la protezione, probabilmente non e' la soluzione 
giusta.
Io poi ho risolto comprando una licenza per ExcelsiorJET.
 
Saluti
CarMas
 

 Occhio che spesso questi programmi sono dei wrapper...
 
Questo non lo so e non posso dirlo. Posso dire pero` che gcj e` molto piu` 
di un wrapper, visto che il file generato e` un eseguibile a tutti gli 
effetti (e no, rinominarlo non funziona)
 
Enrico