AES (Advanced Encryption Standard) More...
Go to the source code of this file.
Macros | |
#define | TRACE_LEVEL CRYPTO_TRACE_LEVEL |
Functions | |
__weak_func error_t | aesInit (AesContext *context, const uint8_t *key, size_t keyLen) |
Key expansion. More... | |
__weak_func void | aesEncryptBlock (AesContext *context, const uint8_t *input, uint8_t *output) |
Encrypt a 16-byte block using AES algorithm. More... | |
__weak_func void | aesDecryptBlock (AesContext *context, const uint8_t *input, uint8_t *output) |
Decrypt a 16-byte block using AES algorithm. More... | |
__weak_func void | aesDeinit (AesContext *context) |
Release AES context. More... | |
Variables | |
const uint8_t | AES128_ECB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x01} |
const uint8_t | AES128_CBC_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x02} |
const uint8_t | AES128_OFB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x03} |
const uint8_t | AES128_CFB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x04} |
const uint8_t | AES128_GCM_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x06} |
const uint8_t | AES128_CCM_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x07} |
const uint8_t | AES192_ECB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x15} |
const uint8_t | AES192_CBC_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x16} |
const uint8_t | AES192_OFB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x17} |
const uint8_t | AES192_CFB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x18} |
const uint8_t | AES192_GCM_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x1A} |
const uint8_t | AES192_CCM_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x1B} |
const uint8_t | AES256_ECB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x29} |
const uint8_t | AES256_CBC_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2A} |
const uint8_t | AES256_OFB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2B} |
const uint8_t | AES256_CFB_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2C} |
const uint8_t | AES256_GCM_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2E} |
const uint8_t | AES256_CCM_OID [9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2F} |
const CipherAlgo | aesCipherAlgo |
Detailed Description
AES (Advanced Encryption Standard)
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2010-2024 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneCRYPTO Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Description
AES is an encryption standard based on Rijndael algorithm, a symmetric block cipher that can process data blocks of 128 bits, using cipher keys with lengths of 128, 192, and 256 bits. Refer to FIPS 197 for more details
- Version
- 2.4.4
Definition in file aes.c.
Macro Definition Documentation
◆ TRACE_LEVEL
Function Documentation
◆ aesDecryptBlock()
__weak_func void aesDecryptBlock | ( | AesContext * | context, |
const uint8_t * | input, | ||
uint8_t * | output | ||
) |
◆ aesDeinit()
__weak_func void aesDeinit | ( | AesContext * | context | ) |
◆ aesEncryptBlock()
__weak_func void aesEncryptBlock | ( | AesContext * | context, |
const uint8_t * | input, | ||
uint8_t * | output | ||
) |
◆ aesInit()
__weak_func error_t aesInit | ( | AesContext * | context, |
const uint8_t * | key, | ||
size_t | keyLen | ||
) |
Variable Documentation
◆ AES128_CBC_OID
const uint8_t AES128_CBC_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x02} |
◆ AES128_CCM_OID
const uint8_t AES128_CCM_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x07} |
◆ AES128_CFB_OID
const uint8_t AES128_CFB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x04} |
◆ AES128_ECB_OID
const uint8_t AES128_ECB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x01} |
◆ AES128_GCM_OID
const uint8_t AES128_GCM_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x06} |
◆ AES128_OFB_OID
const uint8_t AES128_OFB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x03} |
◆ AES192_CBC_OID
const uint8_t AES192_CBC_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x16} |
◆ AES192_CCM_OID
const uint8_t AES192_CCM_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x1B} |
◆ AES192_CFB_OID
const uint8_t AES192_CFB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x18} |
◆ AES192_ECB_OID
const uint8_t AES192_ECB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x15} |
◆ AES192_GCM_OID
const uint8_t AES192_GCM_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x1A} |
◆ AES192_OFB_OID
const uint8_t AES192_OFB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x17} |
◆ AES256_CBC_OID
const uint8_t AES256_CBC_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2A} |
◆ AES256_CCM_OID
const uint8_t AES256_CCM_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2F} |
◆ AES256_CFB_OID
const uint8_t AES256_CFB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2C} |
◆ AES256_ECB_OID
const uint8_t AES256_ECB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x29} |
◆ AES256_GCM_OID
const uint8_t AES256_GCM_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2E} |
◆ AES256_OFB_OID
const uint8_t AES256_OFB_OID[9] = {0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x01, 0x2B} |
◆ aesCipherAlgo
const CipherAlgo aesCipherAlgo |