RSA è due algoritmi, uno per la crittografia asimmetrica, l'altro per le firme digitali. Usano lo stesso tipo di chiavi, condividono la stessa operazione di base e sono entrambe chiamate "RSA".
Diffie-Hellman è un algoritmo di scambio chiave; è possibile visualizzarlo come una sorta di algoritmo di crittografia asimmetrica in cui non è possibile scegliere ciò che si crittografa. Questo va bene per lo scambio di chiavi, in cui si desidera ottenere un segreto condiviso essenzialmente casuale tra due persone. Si noti che la maggior parte degli usi della crittografia asimmetrica RSA, in pratica, sono anche lo scambio di chiavi, ad es. in SSL / TLS: il client genera un valore casuale, lo crittografa con la chiave pubblica del server e lo invia al server.
PKI è un concetto . Si basa sulla nozione di certificato : un certificato è un'affermazione della proprietà delle chiavi. Fondamentalmente, un certificato è un oggetto che contiene un'identità (un nome) e una chiave pubblica, e l'oggetto è firmato digitalmente (ad esempio con RSA - l'algoritmo della firma - o ECDSA). Un certificato è convalidato verificando questa firma. L'idea è che se conosco la chiave pubblica di chiunque abbia emesso (firmato) il certificato, posso verificare la firma e quindi acquisire una certa fiducia nel fatto che la chiave pubblica contenuta nel certificato appartenga realmente all'entità designata dal identità contenuta nel certificato.
Quando organizzi i certificati in modo tale che esista una gerarchia rigida, in cui gli emittenti di certificati sono denominati Autorità di certificazione e emettono certificati tra loro, con una manciata di CA principale chiamata "CA radice ", quindi quella struttura generale è chiamata Infrastruttura a chiave pubblica , ovvero una PKI.
X.509 è uno standard per il formato e il contenuto dei certificati. X.509 è piuttosto aperto su quali algoritmi di firma saranno usati per firmare i certificati, ma in pratica, il 99% delle volte, sarà RSA.