Article by Luca Degregori

Certificati, questi amici sconosciuti…

Che cos’è un certificato? In molti non comprendono l’importanza di questa tecnologia. L’obiettivo primario è quello di garantire l’identità del dominio al quale l’utente si sta connettendo. In questo modo si ha la certezza che le connessioni siano dirette al server autorizzato e che nessuno possa alterare la comunicazione tra i due.

Le tecnologie su cui si basa il sistema dei certificati sono principalmente tre: DNS, HTTPS e la crittografia asimmetrica. La sicurezza della connessione tra le parti è fornita dal protocollo HTTPS che garantisce la criptazione della comunicazione. Il sistema DNS è importante in quanto fornisce la traduzione del nome di dominio, che è contenuto nelle informazioni del certificato, nell’indirizzo IP del server. I certificati non possono contenere direttamente un IP, questo è il motivo per cui appare un popup nel browser se si prova a connettersi via HTTPS ad un server tramite il suo IP.

Il nucleo del sistema di certificati è composto dal sistema di crittografia asimmetrica. Questo tipo di criptazione è utilizzato in un modo particolare per fornire autenticazione. Il funzionamento si basa su due chiavi: un messaggio che è stato codificato tramite una delle due chiavi può essere decifrato solo usando l’altra chiave, e viceversa. Quindi, se l’utente B riceve un messaggio dall’utente A ed è in grado di decifrarlo usando la parola chiave che conosce, il messaggio si può considerare certamente generato dall’altra parola chiave. Questa proprietà della crittografia asimmetrica è alla base del funzionamento dei certificati. Dalla procedura di generazione dei certificati si ottengono le due chiavi, una detta chiave privata viene usata dal server per cifrare i messaggi in uscita, mentre l’altra deve essere resa disponibile all’utente che si collega per verificare l’origine dei messaggi. La necessità di pubblicare tale seconda chiave può essere risolta in due modi: installando il certificato nel client o tramite una Certification Authority (CA).

Fare affidamento su una CA che ha il suo certificato già installato nel sistema operativo o browser fornisce alcune misure di sicurezza aggiuntive, come ad esempio il meccanismo di revoca dei certificati compromessi. Inoltre per essere inclusa dai produttori di dispositivi o software nei propri elenchi di certificati attendibili una CA deve garantire elevati standard di sicurezza. Con l’evoluzione delle tecnologie e la sempre maggiore attenzione riservata alla protezione dei dati sono nate anche CA gratuite e automatizzate come https://letsencrypt.org/ non vi è quindi più neanche una ragione economica per utilizzare certificati auto-firmati. Per avere una connessione sicura non è però sufficiente avere un’infrastruttura di certificati affidabile. Se il server non è configurato correttamente, potrebbe esporre la chiave segreta o dare la possibilità di ottenere informazioni sensibili. Per proteggere un server dai più comuni attacchi è consigliabile verificarne periodicamente la sicurezza tramite applicazioni di test come: https://www.ssllabs.com/ssltest, che forniscono inoltre suggerimenti su come correggere le vulnerabilità proponendo vari esempi di corretta configurazione per i vari web server più comuni.

Rispondi

L'unione fa la forza

I nostri rivenditori sono in grado di sfruttare al meglio la nostra tecnologia e lavorano con noi per disegnare le soluzioni ottimali per te.

Clienti

Loro hanno scelto di utilizzare le soluzioni Praim