O Rivest-Shamir-Adleman (RSA) é a técnica de uso geral mais aceita e implementada para a encriptação de chaves públicas. O esquema RSA utiliza uma expressão com exponenciais. O texto claro é encriptado em blocos, com cada um tendo um valor binário menor que algum número n.
A encriptação e a decriptação têm a seguinte forma para um bloco de texto claro M e bloco de texto cifrado C:
C = Me mod n
M = Cd mod n = (Me)d mod n = Med mod n
Tanto o emissor quanto o receptor precisam conhecer o valor de n. O emissor conhece o valor de e, e somente o receptor sabe o valor de d. Assim, esse é um algoritmo de encriptação de chave pública com uma chave pública PU = {e, n} e uma chave privada PR = {d, n}.
O tamanho típico, em bits, para n utilizado pelo RSA é
1.024.
2.048.
3.078.
4.096.
5.120.