RSA Crypto Tool (Web Crypto API)
Generate RSA keys (JWK/PEM). Encrypt/decrypt using RSA-OAEP and sign/verify using RSA-PSS with selected hash algorithms via Web Crypto API.
Notes
About the RSA Crypto Tool
This tool leverages the Web Crypto API for RSA operations. It allows you to generate RSA key pairs (PEM or JWK format), encrypt data using RSA-OAEP (Optimal Asymmetric Encryption Padding), decrypt data, sign messages using RSA-PSS (Probabilistic Signature Scheme), and verify PSS signatures. Common key sizes (2048, 3072, 4096 bits) and hash algorithms (SHA-256, SHA-384, SHA-512) for padding schemes are supported.
Why Use This Tool?
Use this tool to: securely encrypt small pieces of data with a public key (to be decrypted with the corresponding private key); decrypt data that was encrypted for you; create digital signatures to ensure message integrity and authenticity; or verify signatures on messages you receive. The use of Web Crypto API means operations are performed securely in your browser.
Example Use Cases
- Generating a new RSA key pair for secure communication.
- Encrypting a session key or a short secret message with a recipient's public RSA key.
- Signing a software manifest or a document with your private RSA key to prove its origin.
- Verifying the RSA-PSS signature on a signed piece of software or data to confirm its integrity and sender.
Pro Tips
- Key Management: Securely store your private keys. Never share them. Public keys can be distributed freely.
- OAEP vs. PSS: RSA-OAEP is for encryption/decryption. RSA-PSS is for signing/verification. They are not interchangeable.
- Hash Algorithm: Ensure you use the same hash algorithm for corresponding operations (e.g., if data was encrypted with OAEP using SHA-256, you must use SHA-256 for decryption).
- Key Formats: JWK (JSON Web Key) is a standardized JSON format. PEM is a common text-based format (often Base64 encoded DER). Ensure your keys are in the selected format for input.