SSL Secure Socket Layer 3.0, cos'è e come funziona

Vi proponiamo questo articolo relativo alle tecnologie SSL Secure Socket Layer 3.0, a cui oggi giorno è affidata la sicurezza di gran parte dei dati traferiti in internet
di Fabio Boneschi pubblicata il 09 Giugno 2005, alle 10:10 nel canale SicurezzaVi proponiamo un articolo
pubblicato su Tuxjournal.net
relativo alle tecnologie SSL Secure Socket Layer 3.0, a cui oggi giorno
è affidata la sicurezza di gran parte dei dati trasferiti in
internet.
Nel breve pezzo vengono spiegate per sommi capi le principali
caratteristiche di SSL:
Scopo
primario dell' SSL Protocol è fornire sistemi di
crittografia per comunicazioni affidabili e riservate sul Web
sfruttabili in applicazioni quali, ad esempio, posta elettronica e
sistemi di autenticazione. Il protocollo SSL provvede alla sicurezza
del collegamento garantendo:
* Privatezza del collegamento. La crittografia è usata dopo
un handshake iniziale per definire una chiave segreta. Per
crittografare i dati è usata la crittografia simmetrica
(DES, RC4, ecc.).
* Autenticazione. L'identità nelle connessioni
può essere autenticata usando la crittografia asimmetrica,
ovvero a chiave pubblica (RSA, DSS, ecc). Così ogni client
comunica in sicurezza con il corretto server, prevenendo ogni
interposizione. E' prevista la certificazione sia del server che del
client.
* Affidabilità . Il livello di trasporto include un
controllo dell'integrità del messaggio basato su
un apposito MAC (Message Authentication Code) che utilizza funzioni
hash sicure (SHA, MD5, ecc). In tal modo si verifica che i dati spediti
tra client e server non siano stati alterati durante la trasmissione.
Nella parte finale ci si addentra maggiormente nei dettagli proponendo l'installazione e la creazione di un
certificato per il proprio server web.
Suggeriamo la lettura di questo
articolo a chiunque abbia interesse nei vari aspetti della sicurezza
informatica. I meno esperti trovaranno il significato di molti termini
comunemente usati, mentre i più smaliziati troveranno le
basi per successivi approfondimenti.
31 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info...
...molto interessante
...
x Firefraw
a parte che io non sono proprio sicuro che venga usata una chiave simmetrica con SSL, mi ricordavo che facesse uso esclusivamente di chiavi asimmetriche (pubblica+privata)... ma in ogni caso ci sono algoritmi per scambiarsi una chiave su un canale non protetto, un esempio è il Diffie Hellman. L'algoritmo è piuttosto sicuro, fa uso di calcolo logaritmico e impedisce di scoprire in tempo utile la chiave che ci si scambia (occorrerebbero probabilmente anni per decrittare i dati).La prima fase di SSL è lo scambio di Diffie-Hellman (o varianti ed equivalenti) con cui si riesce a generare una nuova chiave simmetrica sui due lati senza doversela scambiare e senza scambiare informazioni che permettano ad uno che è in ascolto di generarla identica.
Poi di solito si usa questa chiave di sessione per cifrare simmetricamente il traffico ed all'interno del canale cifrato ci si scambiano chiavi pubbliche o certificati e quant'altro.
cmq come al solito la wikipedia è utilissima quando non ti ricordi le cose
ottimo
hai rinfrescato la memoria pure a me, sono decisamente arrugginitoScambio di chiavi
Una volta completato l'handshake tutto il traffico viene crittato tramite chiave privata (simmetrica) perchè più veloce. Questa chiave privata(simmetrica) è stata "spedita" da un client all'altro non in chiaro ma crittografata usando la crittografia a chiave Pubblica; cioè una volta che un client ha generato una chiave privata(simmetrica) la critta usando la chiave pubblica del destinatario e gliela spedisce. In questo modo nessuna chiave è mai transitata in chiaro sul canale.La proprietà fondamenttale della crittografia a chiave pubblica è proprio il fatto che per comunicare in modo "sicuro" non devo mai spedire la chiave in chiaro (e anzi non la devo spedire proprio!)
Io non comprendo come è possibile accordarsi su una chiave senza che un eventuale ascoltatore non riesca a fare altrettanto.
Cioè, a livello teorico: la due macchine si trovano in uno stato iniziale noto al terzo ascoltatore che può replicare sulla sua terza macchina. La prima macchina invia dati alla seconda e qusta cambia stato in base a questi dati e alo stato iniziale. Perchè anche la terza macchina non può cambiare il suo stato nella stesso modo della seconda avendo stesso stato iniziale e stesso input, e quindi sostituirsi ad essa ? Anche se l'operazione avviene in più passi, la terza macchina dovrebbe sempre poter replicare la situazion della seconda macchina basando sullo stato iniziale e sugli input.
Grazie di eventuali chiarimenti.
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".