Newsgroup: it.comp.java
Titolo: APPLET - Mi rubano il codice !!!!

Salve a tutto l'NG,
una volta messo un applet in rete
è possibile evitare che venga scaricato il .class ???
Perchè ho fatto un'applet per una ditta
e un mio amico mi ha sputtanato scaricando il class,
decompilandolo e facendomi vedere il codice.
(che figura)
Anche gli offuscatori qui non servono quindi.
come si può fare???
gianni.

 come si può fare???
metti una riga "grazie per avere usato la mia applet".
Davide

 ha scritto nel messaggio
news:9hs47c$f9pnq$5...@ID-18487.news.dfncis.de...


Non credo che puoi nascondere il codice di un applet, adto che lo stesso
deve essere inviato al client per essere eseguito...
in JBuilder c'e' una funzione di compilazione che "nasconde" rinominando
tutte le variabili con nomi e numeri di modo che, chi decompila ci mette un
pochino piu' di tempo per capire il sorgente, pero' lo decompila lo
stesso.....
Ciao Paolo

 
offuscare il codice e` il massimo che puoi fare.
Se il problema e` che hai codificato nell'applet dei "dati sensibili",
la soluzione consiste nello spostare questi dati fuori dall'applet (un
file sul server, ad esempio), da recuperare magari attraverso una
comunicazione sicura o qualcosa di questo tipo. Per quanto riguarda "il
codice" non puoi farci nulla. Java e` "intrinsecamente OpenSource". Puoi
far cambiare di nome ai metodi e alle variabili da un offuscatore, ma
non puoi impedire che qualcuno ci vada a dare un'occhiata, cosi` come
non puoi impedire a qualcuno di dare un'occhiata al codice macchina
generato, ad esempio, da un tuo programma scritto in C. E` la stessa
cosa, solo che il bytecode e` piu` comprensibile!
-- 
Ciao,  |     Gott weiss ich will kein Engel sein
Matteo |                     -- Rammstein, Engel

 Capisci perchè mi interessa che nessuno la possa decompilare???
Si, io l'ho decompilata, pure i file threadDisegna e Server, ma non credo
che ciò possa pregiudicare la sicurezza del sistema.
Le immagini non sono neanche criptate!
Comuqnue come ho già detto usa rmi per nascondere tutta la logica del
sistema.

 writes:
G> L'applet che ho sviluppato è per una ditta (con i contro-cazzi)
Buono a sapersi, non sapevo nemmeno esistesse...
G> di telesorveglianza (vai su 
http://test.hypernetic.it
)
La prima cosa che mi ha dato è un bell'errore di esecuzione degli
script. Notevole...
G> Capisci perchè mi interessa che nessuno la possa decompilare???
E quale problema gli da ? Il  loro sistema è meno sicuro ?  Passare ad
un integrazione real  audio ? Usare un programma  client in linguaggio
nativo (mai letti certi disclaimer di Sun ?) ?
--
Gian Uberto| main(){printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}
Lauri      |                        David Korn, 1987 ioccc best one liner 
(aka saint)|-------------------------------------------------------------------
em@ail: 
sa...@eng.it
 ( vedere X-nospam nello header - see X-nospam in header )

> (che figura)
d> Perche' era scritto male?
ROTFL


 Capisci perchè mi interessa che nessuno la possa decompilare???
       _
 __// MicrosoftNetwork is prohibited from redistributing this work in
 \X/ any form, in whole or in part.

Giao Gianni,
    come gia' ti hanno detto circa tutti, l'unica soluzione che hai consiste nello
spostare del codice dall'applet al server. Per fare questo se vuoi puoi usare un
meccanismo che ho realizzato io e che ti consente di mettere oggetti sul server che poi
vengono invocati dall'applet in modo trasparente mediante chiamate HTTP. Si chiam GMI, per
il dettaglio punta a 
http://digilander.iol.it/bbossola/gmi.html
 
HTH,
    Bruno
[posted and mailed]


|
| Bruno Bossola
| A Java Software Engineer :-)
| 
http://bbruno.fasturl.it
|
| 
http://members.xoom.it/bbruno
| 
http://digilander.iol.it/bbossola
|