They are listed in @ref{gnutls_cipher_algorithm_t}. Note that there two
types of ciphers, the ones providing an authenticated-encryption with
associated data (AEAD), and the legacy ciphers which provide raw access
-to the ciphers. We recommend the use of the AEAD APIs for new applications
-as it is designed to minimize misuse of cryptography.
+to the ciphers. We recommend the use of the AEAD ciphers under the AEAD APIs
+for new applications as they are designed to minimize the misuse of
+cryptographic primitives.
@showenumdesc{gnutls_cipher_algorithm_t,The supported ciphers.}
@subheading Authenticated-encryption API
The AEAD API provides access to all ciphers supported by GnuTLS which support
-authenticated encryption with associated data. That is particularly suitable
-for message or packet-encryption as it provides authentication and
-encryption on the same API. See @code{RFC5116} for more information on
-authenticated encryption.
+authenticated encryption with associated data; these ciphers are marked with
+the AEAD keyword on the table above. The AEAD cipher API is
+particularly suitable for message or packet-encryption as it provides
+authentication and encryption on the same API. See @code{RFC5116} for more
+information on authenticated encryption.
@showfuncD{gnutls_aead_cipher_init,gnutls_aead_cipher_encrypt,gnutls_aead_cipher_decrypt,gnutls_aead_cipher_deinit}
* @GNUTLS_CIPHER_CAMELLIA_256_CBC: Camellia in CBC mode with 256-bit keys.
* @GNUTLS_CIPHER_RC2_40_CBC: RC2 in CBC mode with 40-bit keys.
* @GNUTLS_CIPHER_DES_CBC: DES in CBC mode (56-bit keys).
- * @GNUTLS_CIPHER_AES_128_GCM: AES in GCM mode with 128-bit keys.
- * @GNUTLS_CIPHER_AES_256_GCM: AES in GCM mode with 256-bit keys.
- * @GNUTLS_CIPHER_AES_128_CCM: AES in CCM mode with 128-bit keys.
- * @GNUTLS_CIPHER_AES_256_CCM: AES in CCM mode with 256-bit keys.
- * @GNUTLS_CIPHER_AES_128_CCM_8: AES in CCM mode with 64-bit tag and 128-bit keys.
- * @GNUTLS_CIPHER_AES_256_CCM_8: AES in CCM mode with 64-bit tag and 256-bit keys.
- * @GNUTLS_CIPHER_CAMELLIA_128_GCM: CAMELLIA in GCM mode with 128-bit keys.
- * @GNUTLS_CIPHER_CAMELLIA_256_GCM: CAMELLIA in GCM mode with 256-bit keys.
+ * @GNUTLS_CIPHER_AES_128_GCM: AES in GCM mode with 128-bit keys (AEAD).
+ * @GNUTLS_CIPHER_AES_256_GCM: AES in GCM mode with 256-bit keys (AEAD).
+ * @GNUTLS_CIPHER_AES_128_CCM: AES in CCM mode with 128-bit keys (AEAD).
+ * @GNUTLS_CIPHER_AES_256_CCM: AES in CCM mode with 256-bit keys (AEAD).
+ * @GNUTLS_CIPHER_AES_128_CCM_8: AES in CCM mode with 64-bit tag and 128-bit keys (AEAD).
+ * @GNUTLS_CIPHER_AES_256_CCM_8: AES in CCM mode with 64-bit tag and 256-bit keys (AEAD).
+ * @GNUTLS_CIPHER_CAMELLIA_128_GCM: CAMELLIA in GCM mode with 128-bit keys (AEAD).
+ * @GNUTLS_CIPHER_CAMELLIA_256_GCM: CAMELLIA in GCM mode with 256-bit keys (AEAD).
* @GNUTLS_CIPHER_SALSA20_256: Salsa20 with 256-bit keys.
* @GNUTLS_CIPHER_ESTREAM_SALSA20_256: Estream's Salsa20 variant with 256-bit keys.
* @GNUTLS_CIPHER_CHACHA20_POLY1305: The Chacha20 cipher with the Poly1305 authenticator (AEAD).