| .. SPDX-License-Identifier: GPL-2.0-or-later |
| |
| Unauthenticated encryption |
| ========================== |
| |
| These APIs provide support for unauthenticated encryption and decryption, |
| including bare stream ciphers and other length-preserving algorithms such as |
| block ciphers in XTS mode. The legitimate use cases for these algorithms are: |
| |
| - Support for legacy protocols that really should have chosen an authenticated |
| mode (or even another primitive entirely) but didn't. |
| |
| - Internal components of authenticated modes. For example, AES-CTR is used by |
| AES-GCM and AES-CCM internally. |
| |
| - Storage encryption that cannot accommodate ciphertext expansion. Usually |
| AES-XTS is used for this. |
| |
| - Stream ciphers for key derivation and random number generation. |
| |
| Besides the above, these shouldn't be used. |
| |
| AES-CBC and AES-CBC-CTS |
| ----------------------- |
| |
| This API provides support for AES in the CBC and CBC-CTS modes of operation. |
| |
| .. kernel-doc:: include/crypto/aes-cbc.h |
| |
| AES-CTR and AES-XCTR |
| -------------------- |
| |
| This API provides support for AES in the CTR and XCTR modes of operation. |
| |
| .. kernel-doc:: include/crypto/aes-ctr.h |
| |
| AES-ECB |
| ------- |
| |
| This API provides support for AES in the ECB mode of operation. |
| |
| .. kernel-doc:: include/crypto/aes-ecb.h |
| |
| AES-XTS |
| ------- |
| |
| This API provides support for AES in the XTS mode of operation. |
| |
| .. kernel-doc:: include/crypto/aes-xts.h |