We're working hard to make these tools better 🛠️ If you find any bugs or have suggestions, feel free to email me at aubrey.jun@outlook.com — I'll review and fix them regularly 😊

Ad
8288727343719668

Loading ad...

AES Encryption

AES encrypt and decrypt

📖 How to Use

Click to view detailed usage instructions

Expand

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

  1. Select Mode: Choose Encrypt or Decrypt
  2. Enter Key: Enter the password for encryption/decryption (8-32 characters)
  3. Select Key Length: 128-bit (16 bytes), 192-bit (24 bytes), or 256-bit (32 bytes)
  4. Select Mode: CBC mode is recommended
  5. Enter IV: CBC mode requires 16-byte IV (auto-generation available)
  6. Enter Plaintext/Ciphertext: Enter content in the input field
  7. 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.

Ad
1278624333018761

Loading ad...