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.
Dependents: Encrypt_Decrypt1 mbed_blink_tls encrypt encrypt
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 11:22:36 by
