Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbedtls by
doc_encdec.h
00001 /** 00002 * @file 00003 * Encryption/decryption module documentation file. 00004 * 00005 * Copyright (C) 2006-2015, ARM Limited, All Rights Reserved 00006 * SPDX-License-Identifier: Apache-2.0 00007 * 00008 * Licensed under the Apache License, Version 2.0 (the "License"); you may 00009 * not use this file except in compliance with the License. 00010 * You may obtain a copy of the License at 00011 * 00012 * http://www.apache.org/licenses/LICENSE-2.0 00013 * 00014 * Unless required by applicable law or agreed to in writing, software 00015 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 00016 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00017 * See the License for the specific language governing permissions and 00018 * limitations under the License. 00019 * 00020 * This file is part of mbed TLS (https://tls.mbed.org) 00021 */ 00022 00023 /** 00024 * @addtogroup encdec_module Encryption/decryption module 00025 * 00026 * The Encryption/decryption module provides encryption/decryption functions. 00027 * One can differentiate between symmetric and asymmetric algorithms; the 00028 * symmetric ones are mostly used for message confidentiality and the asymmetric 00029 * ones for key exchange and message integrity. 00030 * Some symmetric algorithms provide different block cipher modes, mainly 00031 * Electronic Code Book (ECB) which is used for short (64-bit) messages and 00032 * Cipher Block Chaining (CBC) which provides the structure needed for longer 00033 * messages. In addition the Cipher Feedback Mode (CFB-128) stream cipher mode, 00034 * Counter mode (CTR) and Galois Counter Mode (GCM) are implemented for 00035 * specific algorithms. 00036 * 00037 * All symmetric encryption algorithms are accessible via the generic cipher layer 00038 * (see \c mbedtls_cipher_setup()). 00039 * 00040 * The asymmetric encryptrion algorithms are accessible via the generic public 00041 * key layer (see \c mbedtls_pk_init()). 00042 * 00043 * The following algorithms are provided: 00044 * - Symmetric: 00045 * - AES (see \c mbedtls_aes_crypt_ecb(), \c mbedtls_aes_crypt_cbc(), \c mbedtls_aes_crypt_cfb128() and 00046 * \c mbedtls_aes_crypt_ctr()). 00047 * - ARCFOUR (see \c mbedtls_arc4_crypt()). 00048 * - Blowfish / BF (see \c mbedtls_blowfish_crypt_ecb(), \c mbedtls_blowfish_crypt_cbc(), 00049 * \c mbedtls_blowfish_crypt_cfb64() and \c mbedtls_blowfish_crypt_ctr()) 00050 * - Camellia (see \c mbedtls_camellia_crypt_ecb(), \c mbedtls_camellia_crypt_cbc(), 00051 * \c mbedtls_camellia_crypt_cfb128() and \c mbedtls_camellia_crypt_ctr()). 00052 * - DES/3DES (see \c mbedtls_des_crypt_ecb(), \c mbedtls_des_crypt_cbc(), \c mbedtls_des3_crypt_ecb() 00053 * and \c mbedtls_des3_crypt_cbc()). 00054 * - GCM (AES-GCM and CAMELLIA-GCM) (see \c mbedtls_gcm_init()) 00055 * - XTEA (see \c mbedtls_xtea_crypt_ecb()). 00056 * - Asymmetric: 00057 * - Diffie-Hellman-Merkle (see \c mbedtls_dhm_read_public(), \c mbedtls_dhm_make_public() 00058 * and \c mbedtls_dhm_calc_secret()). 00059 * - RSA (see \c mbedtls_rsa_public() and \c mbedtls_rsa_private()). 00060 * - Elliptic Curves over GF(p) (see \c mbedtls_ecp_point_init()). 00061 * - Elliptic Curve Digital Signature Algorithm (ECDSA) (see \c mbedtls_ecdsa_init()). 00062 * - Elliptic Curve Diffie Hellman (ECDH) (see \c mbedtls_ecdh_init()). 00063 * 00064 * This module provides encryption/decryption which can be used to provide 00065 * secrecy. 00066 * 00067 * It also provides asymmetric key functions which can be used for 00068 * confidentiality, integrity, authentication and non-repudiation. 00069 */
Generated on Tue Jul 12 2022 17:25:41 by
