mbedtls/library
Gilles Peskine d8e2e8347b Zeroize local MAC variables
Zeroize local MAC variables used for CBC+HMAC cipher suites. In encryption,
this is just good hygiene but probably not needed for security since the
data protected by the MAC that could leak is about to be transmitted anyway.
In DTLS decryption, this could be a security issue since an adversary could
learn the MAC of data that they were trying to inject. At least with
encrypt-then-MAC, the adversary could then easily inject a datagram with
a corrected packet. TLS would still be safe since the receiver would close
the connection after the bad MAC.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2021-12-11 14:24:23 +01:00
..
.gitignore
aes.c Merge pull request #4845 from mstarzyk-mobica/ecb-alt-ret-2.2x 2021-10-14 12:11:04 +02:00
aesni.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
arc4.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
aria.c Replace 3 byte shift with appropriate macro 2021-08-03 14:02:41 +01:00
asn1parse.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
asn1write.c Replace MBEDTLS_CHAR_x with MBEDTLS_BYTE_x 2021-08-03 14:08:06 +01:00
base64.c Delete base64_invasive.h due to functions are moved to the constant-time module 2021-12-08 16:20:27 +01:00
bignum.c Merge pull request #5167 from tom-cosgrove-arm/fix-builds-with-only-mbedtls_bignum_c-defined 2021-12-07 12:38:04 +01:00
blowfish.c Implement byte reading macros to remaining files 2021-08-03 16:42:42 +01:00
camellia.c Add Character byte reading macros 2021-08-03 14:01:51 +01:00
ccm.c Improve documentation and add more uses of MBEDTLS_PUT 2021-08-03 14:09:21 +01:00
certs.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
chacha20.c Replace instances of byte reading macros with PUT 2021-08-03 14:08:41 +01:00
chachapoly.c Replace instances of byte reading macros with PUT 2021-08-03 14:08:41 +01:00
check_crypto_config.h psa: config: Add CAMELLIA to the list of possible CMAC ciphers 2021-03-25 14:25:46 +01:00
cipher.c Rename constant-time functions to have mbedtls_ct prefix 2021-11-11 11:32:01 +01:00
cipher_wrap.c Do not set IV size for ECB mode ciphers 2020-11-06 09:40:21 +01:00
cmac.c Allow skipping 3DES in CMAC self-test when ALT implemented 2021-04-30 10:09:52 +02:00
CMakeLists.txt Add a new file for constant-time functions 2021-11-11 09:39:12 +01:00
common.h Remove macro that does not belong in 2.x 2021-08-18 11:59:16 +01:00
constant_time.c Add documentation for the functions 2021-12-08 16:24:22 +01:00
constant_time_internal.h Add documentation for the functions 2021-12-08 16:24:22 +01:00
constant_time_invasive.h Add documentation for the functions 2021-12-08 16:24:22 +01:00
ctr_drbg.c Tidy up grouped MBEDTLS_BYTE_x macros 2021-08-23 11:35:25 +01:00
debug.c Add missing parentheses 2021-06-07 21:42:15 +02:00
des.c Merge pull request #4845 from mstarzyk-mobica/ecb-alt-ret-2.2x 2021-10-14 12:11:04 +02:00
dhm.c Use byte reading macros in places not using a byte mask 2021-08-03 14:08:33 +01:00
ecdh.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
ecdsa.c avoid "maybe-uninitialized" and "free-nonheap-object" errors/warnings with gcc11 2021-05-12 09:37:00 -04:00
ecjpake.c Tidy up grouped MBEDTLS_BYTE_x macros 2021-08-23 11:35:25 +01:00
ecp.c Improve documentation and add more uses of MBEDTLS_PUT 2021-08-03 14:09:21 +01:00
ecp_curves.c Add prefix to BYTES_TO_T_UINT_* 2021-06-25 14:59:15 +01:00
ecp_invasive.h Move mbedtls_mpi_random to the bignum module 2021-06-02 21:31:24 +02:00
entropy.c Merge pull request #3616 from militant-daos/bug_3175 2021-03-30 17:33:08 +02:00
entropy_poll.c Merge pull request #4110 from gilles-peskine-arm/psa-external-random-in-mbedtls 2021-02-22 14:47:29 +00:00
error.c Revert "Remove deprecated things from hashing modules" 2021-04-15 12:28:15 +02:00
gcm.c An initialization vector IV can have any number of bits between 1 and 2021-11-05 00:13:43 +08:00
havege.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
hkdf.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
hmac_drbg.c Document mutex invariant for HMAC_DRBG 2021-02-22 19:24:03 +01:00
Makefile Merge pull request #5154 from gabor-mezei-arm/3649_bp2x_move_constant_time_functions_into_separate_module 2021-11-24 19:33:03 +01:00
md.c Revert "Remove deprecated things from hashing modules" 2021-04-15 12:28:15 +02:00
md2.c Revert "Remove deprecated things from hashing modules" 2021-04-15 12:28:15 +02:00
md4.c Implement byte reading macros to remaining files 2021-08-03 16:42:42 +01:00
md5.c GET macros use a target variable 2021-08-03 13:39:57 +01:00
memory_buffer_alloc.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
mps_common.h Capitalise MPS trace macros 2021-04-07 12:45:35 +01:00
mps_error.h Fix Doxygen headers for MPS files 2021-03-29 14:20:18 +01:00
mps_reader.c Capitalise MPS trace macros 2021-04-07 12:45:35 +01:00
mps_reader.h Fix Doxygen headers for MPS files 2021-03-29 14:20:18 +01:00
mps_trace.c Capitalise MPS trace macros 2021-04-07 12:45:35 +01:00
mps_trace.h Capitalise MPS trace macros 2021-04-07 12:45:35 +01:00
net_sockets.c Fix fd range for select on Windows 2021-06-20 23:17:39 +02:00
nist_kw.c Rename constant-time functions to have mbedtls_ct prefix 2021-11-11 11:32:01 +01:00
oid.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
padlock.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
pem.c Apply MBEDTLS_ERROR_ADD to library 2021-04-15 11:19:47 +01:00
pk.c pk.c: Ensure hash_len equals hash in pk_hashlen_helper 2021-06-29 09:31:06 -04:00
pk_wrap.c psa: Move from key handle to key identifier 2020-11-10 16:00:41 +01:00
pkcs5.c Apply MBEDTLS_ERROR_ADD to library 2021-04-15 11:19:47 +01:00
pkcs11.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
pkcs12.c Use byte reading macros in places not using a byte mask 2021-08-03 14:08:33 +01:00
pkparse.c Backport 2.x: Remove compiler warning if only MBEDTLS_PK_PARSE_C is defined 2021-09-01 11:18:30 +02:00
pkwrite.c adding parentheses to macro definitions, to avoid confusion and possible mistakes in usage. 2021-02-01 14:26:08 +01:00
platform.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
platform_util.c Fixes two _POSIX_C_SOURCE typos. 2020-11-13 09:20:18 +00:00
poly1305.c Replace instances of byte reading macros with PUT 2021-08-03 14:09:05 +01:00
psa_crypto.c Merge pull request #5189 from gilles-peskine-arm/struct_reordering_2.x 2021-12-09 12:54:13 +01:00
psa_crypto_aead.c Merge pull request #5189 from gilles-peskine-arm/struct_reordering_2.x 2021-12-09 12:54:13 +01:00
psa_crypto_aead.h psa: aead: Move AEAD driver entry points to psa_crypto_aead.c 2021-04-07 16:03:31 +02:00
psa_crypto_cipher.c psa: Remove test code in the library 2021-11-30 14:49:19 +01:00
psa_crypto_cipher.h psa: test driver: Move driver test entry points prototypes 2021-11-30 14:49:19 +01:00
psa_crypto_client.c Move the inclusion of crypto_spe.h to psa/crypto_platform.h 2021-06-23 14:45:17 +02:00
psa_crypto_core.h Merge pull request #4357 from gabor-mezei-arm/3267_Implement_psa_sign_message_and_verify 2021-05-17 10:14:46 +02:00
psa_crypto_driver_wrappers.c psa: Add driver initialization and termination 2021-11-30 14:49:19 +01:00
psa_crypto_driver_wrappers.h psa: Add driver initialization and termination 2021-11-30 14:49:19 +01:00
psa_crypto_ecp.c psa: Remove test code in the library 2021-11-30 14:49:19 +01:00
psa_crypto_ecp.h psa: test driver: Move driver test entry points prototypes 2021-11-30 14:49:19 +01:00
psa_crypto_hash.c psa: Fix and improve comments 2021-11-30 14:49:19 +01:00
psa_crypto_hash.h psa: test driver: Move driver test entry points prototypes 2021-11-30 14:49:19 +01:00
psa_crypto_invasive.h Rework MAC algorithm / key type validation 2021-03-03 19:58:02 +01:00
psa_crypto_its.h Update documentation 2020-11-25 13:10:50 +01:00
psa_crypto_mac.c psa: Fix and improve comments 2021-11-30 14:49:19 +01:00
psa_crypto_mac.h psa: test driver: Move driver test entry points prototypes 2021-11-30 14:49:19 +01:00
psa_crypto_random_impl.h Work around MSVC bug with duplicate static declarations 2021-02-16 18:55:05 +01:00
psa_crypto_rsa.c psa: Remove test code in the library 2021-11-30 14:49:19 +01:00
psa_crypto_rsa.h psa: test driver: Move driver test entry points prototypes 2021-11-30 14:49:19 +01:00
psa_crypto_se.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
psa_crypto_se.h Update documentation 2020-11-25 13:10:50 +01:00
psa_crypto_slot_management.c Remove dependency of builtin keys on storage 2021-09-11 22:31:06 +05:30
psa_crypto_slot_management.h psa: Fix error code when creating/registering a key with invalid id 2021-04-01 14:05:41 +02:00
psa_crypto_storage.c Move #include "common.h" where config.h used to be 2021-08-18 12:57:54 +01:00
psa_crypto_storage.h Rename PSA_KEY_SLOT_COUNT to MBEDTLS_PSA_KEY_SLOT_COUNT 2021-02-15 14:26:44 +01:00
psa_its_file.c Move #include "common.h" where config.h used to be 2021-08-18 12:57:54 +01:00
ripemd160.c GET macros use a target variable 2021-08-03 13:39:57 +01:00
rsa.c Rename internal header constant_time.h to constant_time_internal.h 2021-11-11 11:33:19 +01:00
rsa_internal.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
sha1.c GET macros use a target variable 2021-08-03 13:39:57 +01:00
sha256.c GET macros use a target variable 2021-08-03 13:39:57 +01:00
sha512.c Add UINT64 GET and PUT macros 2021-08-03 14:08:26 +01:00
ssl_cache.c Don't check ciphersuite and compression in SSL session cache lookup 2021-05-19 05:09:56 +01:00
ssl_ciphersuites.c Fix dependencies on SHA384 cipher suites 2021-05-19 16:58:08 +02:00
ssl_cli.c psa: Fix the size of hash buffers 2021-11-30 13:24:47 +01:00
ssl_cookie.c Rename constant-time functions to have mbedtls_ct prefix 2021-11-11 11:32:01 +01:00
ssl_msg.c Zeroize local MAC variables 2021-12-11 14:24:23 +01:00
ssl_srv.c psa: Fix the size of hash buffers 2021-11-30 13:24:47 +01:00
ssl_ticket.c Replace instances of byte reading macros with PUT 2021-08-03 14:09:05 +01:00
ssl_tls.c psa: Fix the size of hash buffers 2021-11-30 13:24:47 +01:00
ssl_tls13_keys.c Replace MBEDTLS_CHAR_x with MBEDTLS_BYTE_x 2021-08-03 14:08:06 +01:00
ssl_tls13_keys.h Comment on hardcoding of maximum HKDF key expansion of 255 Bytes 2020-09-16 09:50:17 +01:00
threading.c Explain the usage of is_valid in pthread mutexes 2021-02-22 19:24:03 +01:00
timing.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
version.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
version_features.c Update files generated from config.h 2021-09-30 19:24:36 +02:00
x509.c Apply MBEDTLS_ERROR_ADD to library 2021-04-15 11:19:47 +01:00
x509_create.c Update copyright notices to use Linux Foundation guidance 2020-08-19 10:35:41 +02:00
x509_crl.c Apply MBEDTLS_ERROR_ADD to library 2021-04-15 11:19:47 +01:00
x509_crt.c Remove MBEDTLS_TLS_DEFAULT_ALLOW_SHA1_IN_CERTIFICATES option. 2021-09-06 12:18:53 +02:00
x509_csr.c Apply MBEDTLS_ERROR_ADD to library 2021-04-15 11:19:47 +01:00
x509write_crt.c Replace instances of byte reading macros with PUT 2021-08-03 14:09:05 +01:00
x509write_csr.c avoid "maybe-uninitialized" and "free-nonheap-object" errors/warnings with gcc11 2021-05-12 09:37:00 -04:00
xtea.c Implement byte reading macros to remaining files 2021-08-03 16:42:42 +01:00