RSA (Rivest–Shamir–Adleman), published in 1977, was the first widely adopted public-key cryptosystem and for decades the most deployed asymmetric algorithm in existence. Its security rests on the integer factorisation problem: given a public modulus n = p × q (the product of two large primes), recovering p and q is computationally infeasible on classical computers for sufficiently large n. The public key is the pair (n, e) and the private key is (n, d), where e and d are related by the modular arithmetic of Euler’s totient function. RSA enables two operations: encryption (the sender uses the public key to encrypt a message that only the private key holder can decrypt) and signing (the private key holder produces a signature that anyone with the public key can verify). In practice, RSA encryption is used almost exclusively for key encapsulation — encrypting a randomly generated symmetric key — rather than encrypting arbitrary data directly, both because RSA is slow and because direct RSA encryption of large messages requires padding schemes that are historically error-prone.
RSA’s operational security is entirely determined by key size. A 512-bit RSA key was broken in 1999; 768-bit in 2009; 1024-bit is considered insecure and deprecated; 2048-bit is the current minimum considered safe against classical attacks, and 3072-bit or 4096-bit is recommended for new keys with long lifetime requirements. The dominant padding schemes are OAEP (Optimal Asymmetric Encryption Padding) for encryption and PSS (Probabilistic Signature Scheme) for signatures — both specified in PKCS#1 v2.2 (RFC 8017). The older PKCS#1 v1.5 padding remains in wide deployment for historical reasons but carries known vulnerabilities (Bleichenbacher’s 1998 padding oracle attack against RSA encryption, and related attacks against TLS 1.2 RSA key exchange that necessitated the RFC 7568 deprecation of those cipher suites). RSA private key operations are computationally expensive: a 2048-bit RSA signature requires roughly 1000× more CPU than an equivalent ECDSA operation at the same security level, which is why ECC-based algorithms have largely displaced RSA for new deployments in TLS and SSH.
RSA is the primary target of PQC migration. Shor’s algorithm running on a CRQC solves integer factorisation in polynomial time, meaning all RSA keys — at any size — become trivially breakable. NIST IR 8547 designates RSA for deprecation in new systems after 2030 and full disallowance after 2035. The HNDL (Harvest Now, Decrypt Later) threat is particularly acute for RSA key encapsulation: TLS sessions using RSA key exchange recorded today can be retroactively decrypted once a CRQC exists. TLS 1.3 mitigated part of this by removing RSA key exchange entirely (all TLS 1.3 sessions use ephemeral Diffie-Hellman, providing forward secrecy), but RSA signatures on X.509 certificates remain in the chain of every HTTPS connection. The replacement for RSA key encapsulation is ML-KEM; the replacement for RSA signatures is ML-DSA (primary) or SLH-DSA (hash-based conservative alternative). HSMs protecting RSA signing keys must be re-keyed with ML-DSA keys and re-certified under the new algorithm before the deprecation deadlines.
