AES Encrypt/Decrypt
AES encrypt/decrypt — keys stay in your browser
How to Use
AES is the most widely used symmetric cipher — the same key encrypts and decrypts. It's common for encrypting API payloads, protecting config values and securing client-server data exchange. When debugging an encrypted API you often need to verify a ciphertext or craft an encrypted request by hand.
How to use: enter a key (16/32 chars for 128/256-bit), pick a mode (CBC needs a 16-char IV), paste plaintext and click "Encrypt" or paste ciphertext and click "Decrypt". Results come out as Base64 or Hex. Everything runs locally via WebCrypto — your key is never uploaded.
FAQ
Are my key and ciphertext uploaded?
No. Encryption and decryption run locally through your browser's WebCrypto API. Keys, plaintext and ciphertext are never sent over the network.
Should I choose CBC or ECB?
CBC requires an IV and produces different output for identical plaintext — it's the secure, mainstream choice. ECB needs no IV but identical plaintext blocks yield identical ciphertext blocks, leaking patterns; use it only for legacy compatibility.
What if decryption fails with a padding error?
It usually means the key length, IV, mode or padding differs from the other system. Check each: is the key 16 or 32 chars, is the IV correct, does CBC/ECB match, and is the other side using PKCS7 or NoPadding?