Uno degli elementi chiave qui è il concetto di coppie di chiavi pubbliche e private. L'idea è che ogni computer, o in alcuni casi, sistema informatico, ha il proprio set di due chiavi: ognuna delle quali è effettivamente senza valore senza l'altra. C'è una chiave pubblica, che viene inviata a tutti nel certificato del server Web, e la chiave privata che viene memorizzata solo dal server web stesso. Pertanto, il tuo computer ha la chiave pubblica del server e può quindi usarlo.
Un documento o una serie di comunicazioni Web (come lo scambio di una password), può essere codificato con la chiave pubblica del server. Una volta fatto, nessuno senza la chiave privata corrispondente può leggere quel file. Dal momento che solo il server web ha questo, solo lui può leggere la tua password.
In riferimento ai commenti seguenti, per chiarire, ecco una versione molto semplificata del processo:
- Il tuo browser riceve la chiave pubblica dal server web quando ti invia il suo certificato.
- Il browser genera quindi una nuova chiave di crittografia utilizzata per le comunicazioni future con il server web. (Questa chiave diversa è chiamata chiave simmetrica e viene utilizzata al posto delle coppie di chiavi pubbliche private a causa della potenza di calcolo necessaria per utilizzare la crittografia a chiave pubblica privata.)
- Il browser invia la nuova chiave simmetrica al server dopo averla crittografata con la chiave pubblica del server.
- Il server e il browser utilizzano quindi la nuova chiave simmetrica per inviare e ricevere dati, inclusa la password.
Inoltre, il tuo browser web potrebbe avere il proprio certificato: abilitare il tuo browser ad avere la sua chiave privata e pubblica. Ciò può fornire ulteriore sicurezza al server, specialmente nell'accertare che tu sia chi dici di essere. Tuttavia, come indicato di seguito, questo non è comune.
Boom. Comunicazioni bidirezionali e più sicure. Niente è perfetto, ma la crittografia a chiave pubblica è un grande passo per garantire la privacy e la sicurezza dal crimine digitale.