aes-encryption.com
English

AES · GCM / CBC / CTR

AES Encryption Online

Encrypt text with AES, then keep everything needed to decrypt it. Start with a password, or configure exact bytes for an existing system.

Browser-local processing128 / 192 / 256No ads or analytics enabled
Processing locally…
Loading, copying or downloading blocked? Open the isolated workspace in a new tab. Inputs are not transferred. ↗

What is AES encryption?

AES is a symmetric block cipher: encryption and decryption use the same secret key. A key contains 128, 192 or 256 bits; its encoded text is not the key length. The cipher operates on 128-bit blocks, while its mode determines how messages, nonces and authentication are handled. This tool offers GCM, CBC and CTR, not every mode labelled AES on another website.

The default password profile uses PBKDF2-HMAC-SHA256 with 600,000 iterations and a fresh 16-byte salt to derive a 256-bit key. AES-GCM adds authentication with a 12-byte nonce and a 128-bit tag. This is a documented site format, not a promise that any AES ciphertext or another website's password format can be decrypted here.

How to use password encryption

  1. Enter the exact text. Spaces, Unicode and line endings are not intentionally trimmed or normalized.
  2. Select the password profile and enter a password. Public example data is for testing, not a password recommendation.
  3. Encrypt, then save the complete JSON package, not just its ciphertext field. Keep the password separately.
  4. Switch to Decrypt, paste the package and enter the same password. A changed tag, key or parameter prevents plaintext output.

A new salt and nonce are generated for every password encryption. The package saves their values, version, KDF parameters and ciphertext with its appended tag; it never saves the password or derived key. Losing the password cannot be repaired by the key generator.

When to use a raw key instead

Choose the compatibility profile only when the other system provides exact key bytes and mode parameters. Hex must contain 32, 48 or 64 digits for AES-128/192/256. Base64 must decode to 16, 24 or 32 bytes. UTF-8 is counted in bytes, so non-ASCII characters can consume more than one byte each.

GCM returns ciphertext followed by a 16-byte tag. CBC uses PKCS7 and a 16-byte IV; CTR uses a 16-byte counter with a fixed 64-bit counter field. CBC and CTR do not authenticate data. For raw encryption, Download saves ciphertext plus the displayed non-secret parameters in a JSON descriptor; keep the key separately. It is not an OpenSSL or CryptoJS password envelope.

Technical references

Updated October 16, 2026

Popular guides

What is AES?GCM vs CBC vs CTRAES key sizesIVs and noncesAES vs RSAAES vs DESPadding explained

Frequently asked questions

Can this recover a lost password?

No. You need the original password or exact raw key and parameters. The website offers no guessing, cracking or recovery service.

Can advertising scripts read my password?

The tool runs in a separate-origin workspace without ads, analytics or session replay. Cross-origin separation limits direct DOM access, but does not make a compromised outer page harmless. Real advertising remains disabled.

Why are two encryptions of the same text different?

The password profile uses a new random salt and nonce for every encryption. Keep the whole package; the random parameters are necessary for recovery.