NEW
Also known as: Advanced Encryption Standard
A FIPS-standard symmetric block cipher widely used to protect electronic data across applications, networks, and storage.
DESCRIPTION
AES is the U.S. standard for symmetric encryption, operating on 128-bit blocks with key sizes of 128, 192, or 256 bits. It underpins secure communications, storage encryption, and TLS. AES performance benefits from hardware acceleration (AES-NI) and efficient modes like GCM and CTR. Proper key management, nonces, and authenticated encryption are critical. AES superseded DES and is broadly supported in libraries and hardware.
ALTERNATIVE DEFINITIONS
NIST
The Advanced Encryption Standard (AES) specifies a FIPS-approved cryptographic algorithm that can be used to protect electronic data.
Formal definition positioning AES as a FIPS-approved encryption standard.
Wikipedia
The Advanced Encryption Standard (AES) is a specification for the encryption of electronic data established by the U.S. National Institute of Standards and Technology in 2001.
Notes the establishment year and governing body.
IETF
This document describes the use of the Advanced Encryption Standard (AES) in Cipher Block Chaining (CBC) mode.
Focuses on AES in a specific operation mode for protocols.
RELATED TERMS
Symmetric Encryption Symmetric Block Cipher Algorithms Key Schedule GCM Mode CBC Mode CTR Mode Padding FIPS 197 Key Management Hardware Acceleration
COMPETING TERMS
RELATIONS
KNOWLEDGE AREAS
Data Security Infrastructure Software Engineering
TARGET AUDIENCE
Security Architect Cybersecurity Engineer Software Developer Cloud Architect Chief Information Security Officer Data Privacy Officer
EXTERNAL SOURCES
- Wikipedia - Advanced Encryption Standard
- NIST - AES official standard
- OpenSSL - AES encryption API
- Intel - AES-NI acceleration overview
TOP QUESTIONS
Why is AES the default choice for symmetric encryption?
AES is standardized, widely implemented, and hardware-accelerated. It balances security and performance with strong cryptanalysis history.
Category: Relevancy
What key sizes are supported by AES?
AES supports 128, 192, and 256-bit keys; larger keys increase brute-force resistance but may impact performance slightly.
Category: Requirements
What is a common mistake when using AES?
Using insecure modes (e.g., ECB), reusing nonces, or neglecting authenticated encryption can lead to catastrophic vulnerabilities.
Category: Mistakes
How does AES-GCM differ from AES-CBC?
AES-GCM provides authenticated encryption and parallelizable performance; AES-CBC offers confidentiality but is vulnerable to certain padding oracle attacks if misused.
Category: Comparison
When should ChaCha20 be preferred over AES?
On platforms without AES-NI or with constrained CPUs, ChaCha20-Poly1305 may be faster and safer against timing leaks.
Category: Alternatives
What is AES-NI and why does it matter?
AES-NI is CPU instruction set support that accelerates AES operations, significantly improving throughput and reducing latency.
Category: Performance
Is AES post-quantum secure?
Grover’s algorithm weakens brute-force resistance, but doubling key size helps; AES-256 remains considered prudent against near-term quantum threats.
Category: Opinion
How should keys be managed for AES?
Use secure key generation, rotation, storage in HSMs or KMS, and enforce least privilege access policies.
Category: BestPractice
Where can I learn to implement AES correctly?
Study NIST SP 800-38 series, library docs (OpenSSL, libsodium), and vetted examples using authenticated modes like GCM.
Category: Learning