Newsgroup: it.comp.java
Titolo: Applet firmate: cerco di fare il punto...

Ciao a tutti.
mi sembra di capire che uno dei problemi piu' ricorrenti in questo
gruppo
sia quello di come firmare le applet per permettergli di scrivere e
leggere
files dal web.
Cerco di fare il punto della situazione:
le applet possono essere firmate fondamentalmente in due modi:
- usando il javakey incluso al jdk
- facendosi generare un certificato da una authority a pagamento
Il secondo metodo dovrebbe essere quello piu' efficace (non ho mai
provato)
e consente di eseguire le applet che leggono e scrivono dati anche non
in
locale.
Per dettagli maggiori leggete l'articolo postato da
mar...@dalia.cselt.it
recuperabile anche tramite dejanews (
www.dejanews.com
).
Mentre per quanto riguarda il primo metodo ecco quanto ho scoperto:
il tool genera delle chiavi doppie con cui si possono firmare le applet,
solo che i browser non riconoscono questo tipo di firma.
Per poter eseguire le applet dal browser bisogna scaricare un java
plugin
apposito scaricabile dal sito della sun all'indirizzo
java.sun.com/products/plugin
questo plugin dice al browser di non utilizzare la sua JVRM ma di usare
un
JRE incluso nel plugin che riconosce le applet firmate come detto in
precedenza.
Questo plugin ha pero' qualche difetto:
- io ho dovuto provare una settimana prima di riuscire a scaricarlo
(~5Mb)
- bisogna aggiungere qualche riga ai propri html per dire al browser di
non usare l
    la sua JVRM (ben spiegato nella documentazione del plugin)
- ultimo (e per me molto grave) non e' ancora disponibile per tutte le
macchine
    (esiste sicuramente per win9*, win NT, solaris, MAC, linux, ma io in
universita'
   ho una macchina HP.... quindi mi ciuccio il calzino)
Non dovrei aver detto delle bestialita' in caso contrario
postate le correzioni ed eventuali altre info.
Mailatemi se qualcuno e' interessato all'utilizzo del
javakey.
                                Ciao, Alessandro
P.S. perche' non si fanno le FAQ, o esistono gia'?
se si', dove?
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ "E' tempo ormai di agire,
~  e non soltanto dire...". (Kontrazione) -> 
www.educom.it/kontrazione
~ In real life : Valsecchi Alessandro - Graduating student at D.S.I. Milano
~ Office Phone Number : 39+02+55006+308 (never on Tue)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Il punto fondamentale da capire, secondo me, e' che si vuole che il
proprio
applet firmato sia usato davvero dagli utenti, bisogna PER FORZA avere
un certificato vero, rilasciato da una certification authority,
altrimenti
chiunque si potrebbe generare i propri certificati in casa, ma allora 
che cosa certificherebbero questi certificati? Nulla!
Se usi il plugin della Sun, e lo installi sul tuo browser, accetti di
default tutti i certificati generati col javakey? Se e' cosi', chi si
installa quel plug-in deve essere molto fiducioso, e fa male, se non
e' cosi' ci vuole comunque una CA di mezzo, e il plug-in serve solo
per riconoscere un certificato di un tipo diverso.
Se si intende semplicemente fare un test "in casa" con un applet che
esce dalla sandbox, non occorre firmarlo, ma basta semplicemente
aggiungere
(a browser chiuso) la seguente linea al file prefs.js o preferencies.js
che sia:
user_pref("signed.applets.codebase_principal_support", true)
Attenzione, perche' in questo modo tutti gli applet che vengono seguiti
sono considerati "sicuri", da qualunque posto provengano, e quindi
conviene
fare questa configurazione solo per un utente di "test", che non esca su
Internet.
Ciao,
  Marina

Scusate, ma nel caso che l'applet venga utilizzato soltanto all'interno di
una intranet aziendale, qual' e' alla fine il metodo piu' semplice per
firmare un'applet in modo che possa scrivere un file, al limite anche solo
in locale ?
Usando il jarsigner senza un certificato mi sono ritrovato con l'applet che
risultava firmato (controllato con lo stesso jarsigner), ma senza chiave
pubblica ... Dove ho sbagliato, o come e' l'uso corretto ???
Grazie mille.
Matteo

 in locale ?
Il modo piu' semplice e' comprare un certificato da una delle
CA gia' presenti di default nei browser, cosi' non devi
configurare niente sui client. Almeno, per il progetto in cui
ho lavorato io questa e' stata considerata la soluzione piu'
semplice.
Per un'azienda 100$ l'anno non sono niente. E poi anche se
non rinnovi il certificato, gli applet che ha gia' firmato
continuano a funzionare (cosi' mi sembra di ricordare, qualcuno
mi corregga se sbaglio!). Solo se devi fare delle modifiche alle
classi e poi ri-firmare il tutto ti occorre un certificato sempre
valido.
Ciao,
  Marina


| --
| Bruno Bossola
| Groupware/Intranet B.U.           Phone:  +39-11-2252211
| ATOS SpA v.Vaninetti 27           Fax:    +39-11-2203182
| I-10148 Torino ITALY              Change NOSPAM in atos to email me!

 tra quelle riconosciute come affidabili dal browser.
Pero', Bruno, non e' che questo sia il metodo piu' semplice,
perche' comunque occorre comprare e installare un Certificate
Server, per esempio Netscape Certificate Server o qualcosa di simile.
E' comunque il metodo piu' adeguato, io credo, ma non mi sembra il 
piu' semplice e veloce. 
Ciao,
  Marina


Si, effettivamente mi rendo conto che non e' il piu' semplice. Magari
e' possibile che esistano dei CA server free? O a basso costo? 
Mi sembrava che ne esistessero almeno un paio a meno di 200$... 
Secondo me tra poco Microsoft ne regalera' una, se non lo ha gia'
fatto, come con l'index server che adesso e' compreso free nell'option
pack! (attenzione pero': mio nonno diceva "la roba gratis vale quello
che la paghi!").
In un ottica piu' ampia, bisogna anche tenere conto del fatto che poi
con quello non ti limiti solo a generare certificati per object
signing, ma anche certificati per i singoli utenti utilizzabili, per
esempio, per gestire la sicurezza delle comunicazioni aziendali...
CMQ hai ragione, non e' affatto semplice.


che la paghi!").
Per l'amor di Linux e dell'Open Source!!! :) :P :) :P
Diciamo che la cosa vale solo per Microsoft (e qualche altra Software
House...) cosě possiamo anche andare d'accordo!!! :)
Linux vale *molto* di piů di quel che paghi (visto che, formalmente,
non paghi una lira ed hai un sistema robusto ed affidabile!).
Scusate l'OT ma non ho potuto resistere!!!
See You!
Matteo!!!