RSA Encryptor / Decryptor
Generate RSA key pairs and encrypt/decrypt text using public/private keys. All processing happens in your browser using the Web Crypto API.
Frequently Asked Questions
1. What is RSA encryption?
RSA is an asymmetric encryption algorithm that uses a pair of mathematically related keys: a public key for encryption and a private key for decryption. The public key can be shared freely, while the private key must be kept secret.
2. Is my data sent to your server?
No. All encryption, decryption, and key generation happens locally in your browser using the Web Crypto API. Your data and keys never leave your device.
3. What is the difference between RSA-2048 and RSA-4096?
RSA-2048 uses a 2048-bit modulus and is faster to compute. RSA-4096 uses a 4096-bit modulus for higher security but is slower. Both are considered secure for most applications; RSA-2048 is recommended for general use.
4. Why is there a limit on input length?
RSA encryption uses mathematical operations on fixed-size numbers. With OAEP padding, RSA-2048 can encrypt about 245 bytes and RSA-4096 about 526 bytes. For longer data, the standard approach is to use RSA to securely exchange an AES key, then use AES to encrypt the actual data.
5. How do I use keys generated here with other tools?
Keys are exported in standard PEM format (PKCS#8 for public keys, PKCS#1 for private keys). You can copy and paste them into other cryptographic tools or libraries that support these formats.