Results will appear here after encryption/decryption
Results will appear here after encryption/decryption
Cipher Algorithm Reference Guide
Comprehensive reference for 100+ supported cipher algorithms with specifications, modes, and security recommendations.
AES - Advanced Encryption Standard Recommended
Specifications
| Key Sizes | 128, 192, 256 bits |
| Block Size | 128 bits |
| Rounds | 10 (AES-128), 12 (AES-192), 14 (AES-256) |
| Structure | Substitution-Permutation Network |
| Published | 1998 (NIST standard 2001) |
| Designers | Joan Daemen, Vincent Rijmen |
Supported Modes
| Mode | Padding | Security |
|---|---|---|
AES/CBC/PKCS5PADDING | PKCS5 | Good |
AES/CBC/NOPADDING | None | Manual |
AES/ECB/PKCS5PADDING | PKCS5 | Not Recommended |
AES/ECB/NOPADDING | None | Not Recommended |
AES_128/GCM/NOPADDING | None | Best |
AES_192/GCM/NOPADDING | None | Best |
AES_256/GCM/NOPADDING | None | Best |
AES_128/CBC/NOPADDING | None | Good |
AES_128/CFB/NOPADDING | None | Good |
AES_128/OFB/NOPADDING | None | Good |
Tip: Use GCM mode for authenticated encryption. CBC mode requires unique IV for each encryption.
DES - Data Encryption Standard Obsolete
Specifications
| Key Size | 56 bits (+8 parity bits) |
| Block Size | 64 bits |
| Rounds | 16 |
| Structure | Balanced Feistel Network |
| Published | 1975 |
| Designer | IBM |
Supported Modes (Not Recommended)
DES/CBC/NOPADDING |
DES/CBC/PKCS5PADDING |
DES/ECB/NOPADDING |
DES/ECB/PKCS5PADDING |
Historical Note: DES was the federal standard from 1977 to 2001. Superseded by AES.
3DES (DESede) - Triple DES Legacy
Specifications
| Key Sizes | 168, 112, 56 bits (3 keying options) |
| Block Size | 64 bits |
| Rounds | 48 DES-equivalent rounds |
| Structure | Feistel Network |
| Published | 1998 (ANSI X9.52) |
Supported Modes
DESEDE/CBC/NOPADDING |
DESEDE/CBC/PKCS5PADDING |
DESEDE/ECB/NOPADDING |
DESEDE/ECB/PKCS5PADDING |
Blowfish Secure
Specifications
| Key Sizes | 32-448 bits (variable) |
| Block Size | 64 bits |
| Rounds | 16 |
| Structure | Feistel Network |
| Published | 1993 |
| Designer | Bruce Schneier |
| Successor | Twofish |
Key Features
- Variable-length key (flexible security)
- Fast in software implementation
- Public domain (no patents)
- Used in password hashing (bcrypt)
- Good choice for legacy systems
Blowfish is unpatented and license-free, making it popular for open-source projects.
Twofish Secure
Specifications
| Key Sizes | 128, 192, 256 bits |
| Block Size | 128 bits |
| Rounds | 16 |
| Structure | Feistel Network |
| Published | 1998 |
| Designer | Bruce Schneier et al. |
| Status | AES Finalist |
Key Features
- AES finalist (runner-up to Rijndael)
- 128-bit block size (same as AES)
- Public domain, no patents
- Key-dependent S-boxes
- Flexible design for various platforms
AES Competition: Twofish was one of the five finalists in the AES selection process.
Camellia Secure
Specifications
| Key Sizes | 128, 192, 256 bits |
| Block Size | 128 bits |
| Rounds | 18 or 24 |
| Structure | Feistel Network |
| Published | 2000 |
| Designers | Mitsubishi Electric, NTT |
| Certification | CRYPTREC, NESSIE, ISO/IEC |
Key Features
- Similar performance to AES
- Strong against differential/linear cryptanalysis
- Efficient in both software and hardware
- Derived from E2 and MISTY1
- Approved by ISO/IEC 18033-3
ChaCha20 Modern
Specifications
| Key Size | 256 bits |
| State Size | 512 bits |
| Rounds | 20 |
| Structure | ARX (Add-Rotate-XOR) |
| Published | 2007 |
| Designer | Daniel J. Bernstein |
| Type | Stream Cipher |
Key Features
- Very fast in software (constant-time)
- Resistant to timing attacks
- Used in Google Chrome (TLS)
- Used in WireGuard VPN
- Variant of Salsa20
- eSTREAM portfolio finalist
Modern Standard: ChaCha20-Poly1305 is an IETF standard (RFC 7539).
Other Supported Algorithms
Stream Ciphers
- Salsa20 - Fast stream cipher by Bernstein
- HC-128 - eSTREAM finalist
- HC-256 - eSTREAM finalist
- Grain v1 - Hardware-oriented
- Grain-128 - 128-bit key version
- VMPC - Variably Modified Permutation
- RC4 - Deprecated
Block Ciphers
- Serpent - AES finalist, very secure
- ARIA - Korean standard (similar to AES)
- SEED - Korean standard
- SM4 - Chinese standard
- GOST 28147-89 - Russian standard
- Skipjack - NSA cipher (declassified)
- TEA/XTEA - Tiny Encryption Algorithm
- NOEKEON - Simple, efficient design
- Threefish - 256/512/1024-bit blocks
Special Purpose
- RC2, RC5, RC6 - Rivest ciphers
- SHACAL-2 - Based on SHA-2
- Rijndael - Original name for AES
- TNEPRES - Serpent reversed
PBE (Password-Based)
- PBKDF1/PBKDF2 with various ciphers
- Supports SHA1, SHA256, SHA384, SHA512
- Combined with AES, DES, RC2, RC4
Quick Comparison
| Algorithm | Key Size | Block Size | Security | Speed | Recommendation |
|---|---|---|---|---|---|
| AES | 128/192/256-bit | 128-bit | Excellent | Fast | Recommended |
| ChaCha20 | 256-bit | Stream | Excellent | Very Fast | Modern Choice |
| Twofish | 128/192/256-bit | 128-bit | Excellent | Good | Good Alternative |
| Camellia | 128/192/256-bit | 128-bit | Excellent | Fast | International Standard |
| Blowfish | 32-448-bit | 64-bit | Good | Fast | Legacy, Use Twofish |
| 3DES | 168-bit | 64-bit | Adequate | Slow | Legacy Only |
| DES | 56-bit | 64-bit | Broken | Fast | Do Not Use |
Security Recommendations
Recommended for Production:
- AES-GCM (authenticated encryption)
- AES-CBC with HMAC
- ChaCha20-Poly1305
- Camellia-GCM
Avoid in New Designs:
- DES (obsolete, broken)
- 3DES (legacy, slow)
- ECB mode (any cipher)
- RC4 (broken)