AES Encryption
AES encrypt and decrypt
📖 How to Use Click to view detailed usage instructions
Collapse Expand
📖 How to Use
Click to view detailed usage instructions
AES Encryption/Decryption Tool
Tool Introduction
AES (Advanced Encryption Standard) is a symmetric encryption algorithm and one of the most widely used and secure encryption algorithms in the world. This tool supports AES-128, AES-192, and AES-256 key lengths.
Features
- Multiple Key Lengths: Support for 128-bit, 192-bit, and 256-bit keys
- Multiple Modes: Support for CBC, CFB, OFB, ECB modes
- PKCS7 Padding: Automatic data padding
- Base64/Hexadecimal: Support for output format selection
- Real-time Processing: Get results immediately as you type
User Guide
📖 User Guide
Basic Usage Steps
- Select Mode: Choose Encrypt or Decrypt
- Enter Key: Enter the password for encryption/decryption (8-32 characters)
- Select Key Length: 128-bit (16 bytes), 192-bit (24 bytes), or 256-bit (32 bytes)
- Select Mode: CBC mode is recommended
- Enter IV: CBC mode requires 16-byte IV (auto-generation available)
- Enter Plaintext/Ciphertext: Enter content in the input field
- Click Execute: Get encrypted/decrypted result
Output Format
- Base64: Suitable for network transmission, most commonly used format
- Hexadecimal: Suitable for debugging and reading, pure ASCII characters
Security Notes
- Use strong passwords, recommended 12+ characters, include uppercase, lowercase, numbers, and special characters
- Same plaintext will generate different ciphertext in CBC mode (due to different IV)
- Keep your key safe, lost keys cannot be recovered
Code Examples
// AES encryption using CryptoJS
const CryptoJS = require("crypto-js");
const message = "Hello World";
const key = "my-secret-key123";
const iv = CryptoJS.lib.WordArray.random(16);
const encrypted = CryptoJS.AES.encrypt(message, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
// Output in Base64 format
console.log(encrypted.toString());
# AES encryption using PyCryptodome
from Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
import base64
message = b"Hello World"
key = b"my-secret-key12345678" # 16 bytes for AES-128
iv = get_random_bytes(16)
cipher = AES.new(key, AES.MODE_CBC, iv)
ciphertext = cipher.encrypt(message + b"\0" * (16 - len(message) % 16))
# Output in Base64 format
print(base64.b64encode(ciphertext).decode())
AES (Advanced Encryption Standard) is a symmetric encryption algorithm widely used for data encryption and secure communication.