Fast AES cipher implementation with advanced mode of operations
Description
Fast AES cipher implementation with advanced mode of operations.
The modes of operations available are ECB (Electronic code book), CBC (Cipher
block chaining), CTR (Counter), XTS (XEX with ciphertext stealing), GCM (Galois
Counter Mode).
The AES implementation uses AES-NI when available (on x86 and x86-64
architecture), but fallback gracefully to a software C implementation.
The software implementation uses S-Boxes, which might suffer for cache timing
issues. However do notes that most other known software implementations,
including very popular one (openssl, gnutls) also uses similar implementation.
If it matters for your case, you should make sure you have AES-NI available, or
you'll need to use a different implementation.