Encryption Lab

Encrypt text with detailed control over AES-GCM, AES-CBC, AES-CTR and RSA-OAEP parameters. Includes key generation, PBKDF2 settings, IV/nonce handling, authentication tags, padding information and hybrid RSA + AES encryption.

A random 128-bit salt is generated for every encryption and stored in the output payload. PBKDF2 derives an AES key from your password; the password itself is not stored.

GCM uses a fresh random 96-bit IV and provides authentication. AAD is authenticated but not encrypted. 128-bit tags are the common default.

IV / nonce: generated randomly for each encryption and included in the payload
Padding: No block padding; authentication tag is appended
Recommended: AES-GCM 256-bit + 128-bit tag for most new applications

Encrypted payload

The payload stores non-secret parameters such as algorithm, IV/nonce, salt, key size, tag length and padding description so the matching Decryption Lab can configure itself automatically.

Algorithms intentionally not offered

AES-ECB: not offered because it leaks block patterns and should not be used for general data encryption.

DES / 3DES / RC4: obsolete or deprecated algorithms with inadequate security for new applications.

RSA PKCS#1 v1.5 encryption: not exposed; RSA-OAEP is the modern encryption padding supported here.

“No padding” AES-CBC: Web Crypto’s AES-CBC implementation handles PKCS#7 padding; exposing manual padding would encourage incompatible or unsafe constructions.

How this tool helps

Use a detailed browser-based crypto lab supporting AES-GCM, AES-CBC, AES-CTR and RSA-OAEP. Configure key sizes, PBKDF2 settings, IV or counter behavior, GCM authentication tags, RSA hashes and hybrid RSA plus AES encryption.

  • Prefer AES-GCM for new symmetric encryption because it provides confidentiality and authentication.
  • AES-CBC uses PKCS#7 padding but does not authenticate ciphertext by itself.
  • RSA hybrid mode encrypts normal text with AES-256-GCM and protects the AES key with RSA-OAEP.

Worked example: Create an authenticated encrypted payload

  • Choose AES-GCM
  • Select a 256-bit key and password-based key derivation
  • Enter plaintext and a strong password

The tool produces a self-describing encrypted payload containing the parameters required by the matching decryption workflow.

Keep the password safe and use a unique strong password. Encryption does not protect data if the key or plaintext is exposed elsewhere.

Frequently asked questions

Which AES variants are supported?

AES-GCM, AES-CBC and AES-CTR with 128, 192 or 256-bit keys are supported.

What padding is used?

AES-CBC uses PKCS#7 padding as handled by Web Crypto. GCM and CTR do not use block padding. RSA encryption uses OAEP rather than PKCS#1 v1.5.

Does encryption happen on the server?

No. Cryptographic operations run locally in your browser using Web Crypto.

Security & privacy notes

Cryptographic operations run locally in your browser using the Web Crypto API. Secrets and plaintext are not intentionally uploaded to our server. Save keys securely: this site cannot recover a lost key or password.