EncryptCodecencryptcodec
Tools/AES Encryption

AES Encrypt / Decrypt

AES-256-GCM encryption with PBKDF2 key derivation (100,000 iterations, SHA-256). Military-grade, zero-dependency, runs entirely in your browser.

All processing happens in your browser — nothing is sent to our servers

About AES-256-GCM Encryption

AES-256-GCM is the gold standard for symmetric encryption. It provides both confidentiality (your data is unreadable) and integrity (your data hasn't been tampered with). We use PBKDF2 with 100,000 SHA-256 iterations to derive a strong key from your password, and generate a unique random salt and IV for every encryption — meaning the same plaintext encrypted twice will produce different outputs.

AES Block Cipher — Live Simulation

Watch a 16-byte state matrix transform through one AES round

AddRoundKey
SubBytes
ShiftRows
MixColumns
00
00
00
00
00
00
00
00
00
00
00
00
00
00
00
00
Round Key (XOR'd in AddRoundKey)
00000000000000000000000000000000
Watch it explained

AES-256-GCM Encryption video explanation coming soon

subscribe to get notified

How it works
AES-256-GCM with PBKDF2
Encrypt
01Password

User-supplied passphrase — any length

02PBKDF2

100,000 iterations of HMAC-SHA256 derive a 256-bit key from the password + random 16-byte salt

03Random IV

12-byte cryptographically random initialization vector generated fresh for this encryption

04AES-256-GCM

Authenticated encryption — encrypts plaintext and produces a 16-byte authentication tag

05Output

Salt + IV + auth tag + ciphertext packed together and Base64-encoded into one portable string

Decrypt
01Base64 input

Decode the ciphertext string — extract the embedded salt, IV, auth tag, and encrypted bytes

02Password + salt

Run PBKDF2 with the same password and the extracted salt — reproduces the exact same 256-bit key

03AES-256-GCM

Decrypt using the key and IV — GCM simultaneously verifies the authentication tag

04Tag verification

If the auth tag doesn't match (wrong password or tampered data) decryption aborts with an error

05Plaintext

Original message returned — only possible with the correct password

Spec: NIST SP 800-38D (AES-GCM), RFC 8018 (PBKDF2), FIPS 197 (AES)

The authentication tag detects any tampering. Decryption fails immediately if the ciphertext or password is wrong.

Frequently Asked Questions

Keep learning

Crypto Escape Room
Solve crypto puzzles to escape
Game
Padding Oracle Simulation
See how AES-CBC can be attacked
Simulation
AES vs RSA
When to use symmetric vs asymmetric encryption
Guide