On commence par choisir aléatoirement deux nombres premiers très grands (on recommande environ 100 chiffres décimaux pour chacun) que l'on nomme et . On calcule ensuite . Le totient de est caculé selon . Bien que les nombres impliqués dans ces calculs soient immenses, il existe des algorithmes très rapides permettant d'exécuter les calculs rapidement. On choisit ensuite aléatoirement un nombre compris entre 10 et . Ce nombre doit être relativement premier avec . On nommera ce nombre . On calcule ensuite l'inverse modulaire11 de modulo , lequel on nommera . Notons que ce calcul-ci (trouver l'inverse modulaire d'un nombre) est lui-aussi simple: on peut utiliser l'algorithme étendu d'Euclide, lequel implique de simples calculs matriciels sur lesquels nous n'élaborerons pas. Il faut cependant savoir que cet algorithme nécessite l'utilisation du totient de la base modulaire, dans ce cas-ci.
Puisque et sont des inverses dans la base modulaire , on écrit
La relation est étrangement similaire à la propriété , décrite à la section 1. De fait, la fonction de chiffrement de RSA est justement et le déchiffrement est .
La clé est maintenant générée. et seront publiés dans un répertoire et constitueront la clé publique. restera secrète et constituera la clé privée.