TPSIT: crittografia –>SSL

Lucia Lorenzon

Il protocollo SSL (Secure sockets Layer) gestisce la crittografia dei messaggi in Internet e delle comunicazioni WEB.

Comunicazione cifrata con SSL

L’amministratore genera le chiavi private degli utenti:

openssl genrsa -out marcello.pem 2048

openssl genrsa -out francesco.pem 2048

i file con estensione .pem contengono una chiave provata secondo l’algoritmo RSA di lunghezza 2048 bit.

PEM sta per Privacy Enhanced Mail che è lo standard per i certificati di cifratura e non solo per i messaggi di posta elettronica.

Dalle chiavi private genero le chiavi pubbliche

openssl rsa -in marcello.pem -out marcello.pub -outform PEM -pubout

openssl rsa -in francesco.pem -out francesco.pub -outform PEM -pubout

A marcello e francesco vengono consegnate le chiavi la chiave privata e la chiave pubblica invece viene distribuita agli utenti.

Adesso marcello crea un semplice messaggio:

echo “ciao francesco come stai?” >messaggioM

Adesso marcello cifra il messaggio con la chiave pubblica di francesco e produce in output il file cifrato B che viene inviato a Bob.

openssl rsautl -encrypt -inkey francesco.pub -pubin -in messaggioM -out cifratoF

Adesso francesco decifra il messaggio ricevuto con la sua chiave privata e produce il documento in chiaro chiaroF

openssl rsautl -decrypt -inkey francesco.pem -in cifratoF -out chiaroM

Si osservi che questa operazione garantisce solo la segretezza del messaggio (solo francesco può leggere il messaggio), ma non fornisce alcuna certezza sull’identità del mittente, perchè la chiave pubblica di francesco può essere usata da chiunque.

Per garantire l’autenticità del documento si possono usare i comandi SSL per firmare i documenti:

marcello firma il documento usando la sua chiave privata e produce il documento firmatoM che viene inviato a francesco

openssl rsautl -sign -inkey marcello.pem -in messaggioM -out firmatoM
adesso francesco verifica utilizzando la chiave pubblica di marcello per verificare il documento e visualizzarlo in chiaro.

francesco@francesco-Extensa-5620:/home/programmatori$ openssl rsautl -verify -inkey marcello.pub -pubin -in firmatoM
ciao francesco come stai?

Questa voce è stata pubblicata in Senza categoria. Contrassegna il permalink.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *