RSA

Criptografia assimétrica de chave pública

Rivest, Shamir & Adleman (1977) · base: fatoração de inteiros

Criptografia Assimétrica

A ideia da chave pública

Assimétrica
O RSA usa um par de chaves matematicamente ligadas: a pública (que qualquer um pode ter) cifra; a privada (secreta) decifra. Resolve o problema que a criptografia simétrica não resolve: trocar segredos sem um canal seguro prévio.

Função alçapão

Baseia-se em uma operação fácil num sentido, difícil no inverso: multiplicar dois primos enormes é trivial; fatorar o produto de volta é computacionalmente inviável. A chave privada é o "alçapão" que conhece os primos.

Dois usos

Cifrar (com a pública, só o dono da privada lê) e assinar (com a privada, qualquer um verifica com a pública — base da assinatura digital).

A matemática: geração, cifragem e decifragem

1. Geração das chaves

escolha primos grandes p, q
n = p · q  # módulo
φ(n) = (p−1)(q−1)
escolha e coprimo de φ(n)
d = e−1 mod φ(n)  # inverso
pública = (n, e) · privada = (d)

2. Cifrar e decifrar

cifrar:   c = me mod n
decifrar: m = cd mod n

assinar:  s = H(m)d mod n
verificar: se mod n =? H(m)

Funciona pelo teorema de Euler: (me)d ≡ m (mod n).

RSA "de livro-texto" é inseguro: sendo determinístico e maleável, exige preenchimento (padding)OAEP para cifrar e PSS para assinar.

Tamanhos de chave, desempenho e cifragem híbrida

Tamanhos recomendados

Chave RSAStatus
1024 bitsQuebrado / proibido
2048 bitsMínimo atual
3072 / 4096 bitsRecomendado / longo prazo

RSA-2048 ≈ 112 bits de segurança; 3072 ≈ 128 bits.

Por que "híbrido"?

RSA é centenas de vezes mais lento que o AES. Por isso, na prática, o RSA cifra apenas uma chave de sessão AES aleatória, e o AES cifra os dados em si.

Dados cifrados com AES Chave AES cifrada com RSA (pública) Envia ambos ao destinatário
Ameaças: chaves curtas (fatoração), primos com aleatoriedade fraca (chaves compartilhadas), oráculos de padding (Bleichenbacher, PKCS#1 v1.5) e, no futuro, o algoritmo de Shor em computadores quânticos.

Em resumo

O RSA inaugurou a criptografia de chave pública: cifra e assina apoiado na dificuldade de fatorar n = p·q. Use ≥ 2048 bits, sempre com padding (OAEP/PSS), e em esquema híbrido com AES. A tendência moderna é migrar para curvas elípticas, mais eficientes.

ECC AES ECDSA Todos os algoritmos
Voltar aos Pilares