PGP è il formato per i messaggi crittografati e / o firmati e la gestione asimmetrica delle coppie di chiavi associata, destinata alle e-mail. SSL (ora noto come TLS) è un protocollo per stabilire un tunnel bidirezionale sicuro per i dati binari, su un tunnel bidirezionale esistente non sicuro per dati binari.
Quindi entrambi i sistemi si applicano a situazioni molto diverse e sono difficilmente comparabili. Un punto comune, tuttavia, è che in entrambi i casi un'entità (il mittente dell'e-mail per PGP, il client SSL per SSL) deve ottenere la chiave pubblica di un'altra entità (il destinatario dell'e-mail, il server SSL) e usarla. Chiamiamo A e B , rispettivamente, queste due entità. In entrambi i casi, B può avere diverse coppie di chiavi. Tuttavia, la dinamica differisce:
-
PGP funziona in una situazione di "posta elettronica". L'e-mail è a senso unico e one-shot. Non c'è una finestra di dialogo. A deve essere in grado di ottenere abbastanza informazioni su B e le sue chiavi per produrre l'e-mail, e B deve conoscere abbastanza per elaborare la posta in arrivo senza dover chiedere a A per ulteriori dati. Ciò implica che A deve ottenere una copia della chiave pubblica di B , e se ci sono molte di queste chiavi, A sceglie quale chiave sarà utilizzare.
-
SSL funziona per connessioni bidirezionali. Client A e server B parlano tra loro, seguendo un processo chiamato "handshake", in cui A e B concorda su quali algoritmi crittografici useranno (a seconda di cosa supportano e preferiscono). Nello specifico, il client annuncia quali algoritmi supporta (e in quale ordine di preferenza), e quindi il server risponde con gli identificatori per gli algoritmi crittografici che verranno utilizzati. Quindi B invia la sua chiave pubblica (in un certificato). Se B ha diverse chiavi, allora B sceglie quello che verrà usato (ovviamente compatibile con gli algoritmi negoziati).
Questa è la misura del confronto tra i due protocolli: in PGP, il mittente / cliente sceglie la chiave, che nel destinatario / server SSL può scegliere la chiave. A parte questo, sono troppo diversi nell'uso e nel contesto per essere significativamente confrontati.
Vedi questa risposta per un manuale su come funziona SSL.