L'estensione JSSE
JSSE è l'estensione alla JCA che fornisce il supporto dei protocolli SSL (definendo anche il concetto di Socket SSL) e HTTPS (HTTP + cifratura e autenticazione SSL, cosiddetto "sito Web protetto").
Attenzione: come tutte le tecnologie crittografiche, anche JSSE è soggetta a restrizioni di esportazione. Per questo è disponibile in doppia versione: full per USA e Canada, ridotta in versione internazionale.
URL di riferimento: java.sun.com/products/jsse
JSSE 1.0.1
| Download e installazione | ||
| Esempio 1 | Lettura e visualizzazione di un certificato X509 | |
| Esempio 2 | Client HTTPS | |
| Esempio 3 | Client HTTPS realizzato tramite socket SSL | |
| Esempio 4 | Applicazione client/server via socket SSL | |
La libreria JSSE in versione internazionale si compone di due file: la libreria vera e propria e gli esempi aggiuntivi. Entrambe vanno scompattate nella medesima cartella (per default, C:\jsse1.0.1), dove si troveranno:
Successivamente, occorre copiare manualmente tali file JAR nella cartella lib\ext della propria installazione del JDK e/o JRE. Più esattamente:
Attenzione: se su un computer sono installati entrambi questi pacchetti, il compilatore javac userà la versione in C:\jdk1.2\jre\lib\ext, mentre l'interprete tenderà a usare, con ogni probabilità, quella in C:\Programmi\JavaSoft\JRE\1.2\lib\ext. Per questo è importante copiare i file JAR in entrambe le cartelle lib\ext citate.
Non occorre settare alcun CLASSPATH né indicare alcuna opzione -classpath né al compilatore né all'interprete, in quanto la directory lib\ext fa automaticamente parte nel percorso di ricerca delle classi.
Esempio 1: visualizzazione di un certificato X509
Questo esempio consente, nell'ipotesi di disporre su file di un certificato in formato X509, di leggerlo e visualizzarne a video le caratteristiche.
L'installazione della JSSE estende automaticamente il tipo di URL gestibile dalla classe standard URL, consentendo di specificare indirizzi della forma https://....
Questo esempio mostra come connettersi a un Web
server sicuro (nell'esempio: https://www.sun.com) e scaricare la pagina di default.
Come previsto da HTTPS, viene svolta automaticamente, e in modo
trasparente all'utente, tutta la fase di autenticazione
del server e successiva negoziazione. Non
viene svolta autenticazione del client.
Esempio 3: client HTTPS realizzato tramite socket SSL
In alternativa alla gestione automatica della classe standard URL, è possibile creare da sé una socket SSL e poi operare sopra di essa mediante HTTP standard.
Questo esempio mostra come connettersi a un Web server sicuro (nell'esempio: https://www.sun.com) e scaricare la pagina di default in questo secondo modo.
Esempio 4: applicazione client/server via SSL
Questo esempio (client e server), tratto direttamente dai samples di SUN, illustra come costruire un client e un server che usino estensivamente SSL.