Output will appear here
Click in the output to select all text
Output will appear here
Click in the output to select all text
Encrypt or decrypt text with AES-256 using a custom passphrase.
Derive cryptographic keys from passwords using PBKDF2 with custom salt and iterations.
Generate cryptographically secure random bytes in Hex, Base64, and Uint8 format.
Decode and inspect PEM-encoded X.509 certificates (subject, issuer, validity, SANs).
This tool generates simulated RSA public/private key pairs and lets you experiment with the core concepts behind asymmetric encryption, entirely inside your browser. RSA is the algorithm behind SSH key authentication, TLS certificate key exchange, and PGP-style email encryption — it uses two mathematically linked keys, where anything encrypted with the public key can only be decrypted with the matching private key, and vice versa for signatures. This tool is designed as a learning and prototyping aid for developers exploring public-key cryptography, students studying how RSA differs from symmetric algorithms like AES, and anyone who wants to see the shape of a key pair and try basic encrypt/decrypt round trips without installing OpenSSL. Everything runs locally via JavaScript, so any keys or text you generate never leave your browser or touch a server. There's no signup required. Note that for production systems requiring real security guarantees, use vetted libraries and proper key management rather than browser demos. Scroll down to generate a key pair and explore RSA encryption concepts now.
RSA is used for secure key exchange in TLS/SSL, SSH authentication, digital signatures, and PGP-style email encryption, relying on the mathematical difficulty of factoring large prime products.
Symmetric encryption (like AES) uses one shared key for both encryption and decryption, while asymmetric encryption (like RSA) uses a mathematically linked public/private key pair, so no shared secret needs to be exchanged in advance.
For real-world security today, RSA keys should be at least 2048 bits, with 3072 or 4096 bits recommended for longer-term protection.
This is a demonstration and learning tool; for production systems, use audited libraries like OpenSSL, and follow proper key storage and management practices.
No, RSA is computationally expensive and typically only used to encrypt small data like a symmetric key; bulk data is usually encrypted with AES, with RSA protecting the AES key itself (a hybrid scheme).
RSA relies on modular exponentiation with very large numbers, which is inherently more computationally intensive than the simple bitwise operations AES uses.
Yes, sufficiently powerful quantum computers running Shor's algorithm could theoretically break RSA, which is why post-quantum cryptography standards are being developed as a long-term replacement.