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

Download e installazione

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.


Esempio 2: client HTTPS

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.