What Is RSA?
RSA (Rivest–Shamir–Adleman) is one of the first and most widely-used public key cryptography algorithms. It enables secure communication without the two parties needing to share a secret in advance — solving the fundamental problem of key exchange over insecure channels.
How Public Key Cryptography Works
RSA generates a key pair — a mathematically linked public key and private key. Anything encrypted with the public key can only be decrypted by the private key, and vice versa. You can share your public key freely; only you hold the private key.
This asymmetry enables two critical operations:
- Encryption: Anyone can encrypt a message to you using your public key. Only your private key can decrypt it.
- Digital signatures: You sign a message with your private key. Anyone can verify the signature using your public key, proving it came from you.
The Quantum Computing Threat Is Real, But Not Imminent
Shor's algorithm, running on a sufficiently powerful quantum computer, could theoretically factor the large numbers RSA's security depends on in a fraction of the time classical computers need — but building a quantum computer with enough stable qubits to actually break 2048-bit RSA remains years away by most expert estimates, not an immediate risk. NIST has already standardized post-quantum cryptographic algorithms in anticipation, so the transition path exists even though today's RSA keys remain practically secure.
Why RSA Is Slower Than Elliptic Curve Alternatives
RSA's security relies on the difficulty of factoring large numbers, which requires increasingly large keys (2048, 4096 bits) to stay ahead of factoring advances — and larger keys mean slower encryption and signing operations. Elliptic curve cryptography achieves comparable security with much smaller keys (a 256-bit EC key roughly matches 3072-bit RSA security), which is why modern systems increasingly prefer ECC for performance-sensitive applications like TLS handshakes, while RSA remains common mainly due to its longer track record and broader legacy support.
What Do Key Sizes Mean?
RSA key sizes (1024, 2048, 4096 bits) refer to the size of the modulus — a large number used in the mathematical operations. Larger keys are harder to crack but slower to compute.
- 1024-bit: Obsolete. NIST deprecated this in 2010. Do not use.
- 2048-bit: Current standard. Used by most SSL/TLS certificates and SSH keys. Sufficient until at least 2030.
- 4096-bit: High security for sensitive long-term applications. Significantly slower than 2048-bit.
What Is PEM Format?
PEM (Privacy Enhanced Mail) is the most common format for storing RSA keys. It is Base64-encoded with a header line like -----BEGIN RSA PRIVATE KEY-----. PEM is supported by OpenSSL, nginx, Apache, Python, Node.js and virtually every programming environment.
Generate RSA Keys Free
Our RSA Key Generator creates 2048 or 4096-bit key pairs server-side using PHP's OpenSSL library. Keys are never stored or logged — they are returned directly to your browser.


