Las técnicas de cifrado asimétrico se basan en el uso de dos claves: una pública y otra privada.
En el ejemplo de la figura , posee dos claves: (su clave privada, conocida sólo por él) y (su clave pública, conocida por cualquiera). En este ejemplo, desea transmitir el mensaje a , de manera que nadie, excepto este último, pueda conocer su contenido. Para ello, utilizando la clave y un algoritmo de cifrado asimétrico, genera el mensaje , el cual es transmitido. Luego, , utilizando el algoritmo inverso y su clave privada , reproduce el mensaje original.
El algoritmo debe garantizar que nadie que no conozca la clave puede obtener el mensaje original.
La figura muestra un ejemplo en el cual, cifra el mensaje con su clave privada , obteniendo el mensaje , que es transmitido a quien, usando la clave privada de (), obtiene el mensaje original. Dado que es pública, cualquiera podría haber obtenido el mensaje, pero lo que esto le garantiza a es que la única persona que pudo haberlo generado es (ya que solamente él conoce la clave con que fue cifrado)4.
El siguiente ejemplo, la figura muestra los dos casos anteriores combinados para lograr las propiedades de confidencialidad y de autenticación.
La complejidad computacional de los algoritmos de cifrado asimétrico hace que sea muy costosa el uso de un esquema de ``doble cifrado'' como el anterior, por lo cual generalmente se utiliza un esquema mixto, combinando cifrado asimétrico y simétrico.
En una primera etapa de la comunicación, se utiliza cifrado asimétrico para intercambiar, de manera segura, la clave que luego será utilizada junto con un algoritmo de cifrado simétrico para cifrar el resto de la comunicación.
El algoritmo de cifrado asimétrico más utilizado, y el que utilizaremos con SSH, es el llamado RSA (ver apéndice ).