Skip to content

Commit 0c98f29

Browse files
committed
Fixing the benchmarking tool when building for OpenSSL and older AWS-LC versions.
1 parent e352531 commit 0c98f29

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed

crypto/fipsmodule/cipher/e_aes.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2135,7 +2135,7 @@ static int aead_hmac_aes_256_gcm_init_common(EVP_AEAD_CTX *ctx, const uint8_t *k
21352135
// K_U[0:32] := HMAC-SHA256_K(0x0001|"X"|0x00|N[: 12])
21362136
uint8_t gcm_key[(256 >> 3)] = {0};
21372137
HMAC_CTX *hctx = &hmac_aes_ctx->hmac_ctx;
2138-
unsigned int out_len;
2138+
unsigned int out_len = 0;
21392139
if (!HMAC_Init_ex(hctx, NULL, 0, NULL, NULL) ||
21402140
!HMAC_Update(hctx, M1, AES_BLOCK_SIZE) ||
21412141
!HMAC_Final(hctx, gcm_key, &out_len) ||

tool/speed.cc

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1117,8 +1117,12 @@ static bool SpeedAES256XTS(const std::string &name,
11171117
return true;
11181118
}
11191119

1120+
#if !defined(OPENSSL_BENCHMARK)
11201121
#include "../crypto/fipsmodule/cmac/internal.h"
11211122

1123+
// This is a benchmark of XAES-256-GCM constructed from existing APIs of CMAC
1124+
// and AES-GCM. It is slower than using EVP_aead_xaes_256_gcm() and
1125+
// EVP_aead_xaes_256_gcm_key_commit().
11221126
static bool SpeedXAES256GCM(const std::string &name,
11231127
const std::string &selected) {
11241128
if (!selected.empty() && name.find(selected) == std::string::npos) {
@@ -1278,7 +1282,7 @@ static bool SpeedXAES256GCM(const std::string &name,
12781282
!CMAC_Reset(cmac_ctx.get())) {
12791283
return false;
12801284
}
1281-
OPENSSL_memcpy(cmac_ctx2.get()->block, cmac_cmt_msg22.data()+16, AES_BLOCK_SIZE);
1285+
memcpy(cmac_ctx2.get()->block, cmac_cmt_msg22.data()+16, AES_BLOCK_SIZE);
12821286
if (!CMAC_Final(cmac_ctx2.get(), key_cmt.data() + (key_len/2), &cmac_out_len2) ||
12831287
!CMAC_Reset(cmac_ctx2.get())) {
12841288
return false;
@@ -1359,6 +1363,7 @@ static bool SpeedXAES256GCM(const std::string &name,
13591363

13601364
return true;
13611365
}
1366+
#endif // !OPENSSL_BENCHMARK
13621367

13631368
static bool SpeedHashChunk(const EVP_MD *md, std::string name,
13641369
size_t chunk_len) {
@@ -3296,6 +3301,14 @@ bool Speed(const std::vector<std::string> &args) {
32963301
#endif
32973302
#if AWSLC_API_VERSION > 31
32983303
!SpeedDigestSign(selected) ||
3304+
!SpeedAEADSeal(EVP_aead_xaes_256_gcm(), "AEAD-XAES-256-GCM", kTLSADLen, selected) ||
3305+
!SpeedAEADOpen(EVP_aead_xaes_256_gcm(), "AEAD-XAES-256-GCM", kTLSADLen, selected) ||
3306+
!SpeedAEADSeal(EVP_aead_xaes_256_gcm_key_commit(), "AEAD-XAES-256-GCM key commit", kTLSADLen, selected) ||
3307+
!SpeedAEADOpen(EVP_aead_xaes_256_gcm_key_commit(), "AEAD-XAES-256-GCM key commit", kTLSADLen, selected) ||
3308+
!SpeedAEADSeal(EVP_aead_hmac_aes_256_gcm(), "AEAD-HMAC-AES-256-GCM", kTLSADLen, selected) ||
3309+
!SpeedAEADOpen(EVP_aead_hmac_aes_256_gcm(), "AEAD-HMAC-AES-256-GCM", kTLSADLen, selected) ||
3310+
!SpeedAEADSeal(EVP_aead_hmac_aes_256_gcm_key_commit(), "AEAD-HMAC-AES-256-GCM key commit", kTLSADLen, selected) ||
3311+
!SpeedAEADOpen(EVP_aead_hmac_aes_256_gcm_key_commit(), "AEAD-HMAC-AES-256-GCM key commit", kTLSADLen, selected) ||
32993312
#endif
33003313
!SpeedAEADSeal(EVP_aead_aes_128_gcm(), "AEAD-AES-128-GCM", kTLSADLen, selected) ||
33013314
!SpeedAEADOpen(EVP_aead_aes_128_gcm(), "AEAD-AES-128-GCM", kTLSADLen, selected) ||
@@ -3312,14 +3325,6 @@ bool Speed(const std::vector<std::string> &args) {
33123325
!SpeedAEADOpen(EVP_aead_aes_128_gcm_siv(), "AEAD-AES-128-GCM-SIV", kTLSADLen, selected) ||
33133326
!SpeedAEADOpen(EVP_aead_aes_256_gcm_siv(), "AEAD-AES-256-GCM-SIV", kTLSADLen, selected) ||
33143327
!SpeedAEADSeal(EVP_aead_aes_128_ccm_bluetooth(),"AEAD-AES-128-CCM-Bluetooth", kTLSADLen, selected) ||
3315-
!SpeedAEADSeal(EVP_aead_xaes_256_gcm(), "AEAD-XAES-256-GCM", kTLSADLen, selected) ||
3316-
!SpeedAEADOpen(EVP_aead_xaes_256_gcm(), "AEAD-XAES-256-GCM", kTLSADLen, selected) ||
3317-
!SpeedAEADSeal(EVP_aead_xaes_256_gcm_key_commit(), "AEAD-XAES-256-GCM key commit", kTLSADLen, selected) ||
3318-
!SpeedAEADOpen(EVP_aead_xaes_256_gcm_key_commit(), "AEAD-XAES-256-GCM key commit", kTLSADLen, selected) ||
3319-
!SpeedAEADSeal(EVP_aead_hmac_aes_256_gcm(), "AEAD-HMAC-AES-256-GCM", kTLSADLen, selected) ||
3320-
!SpeedAEADOpen(EVP_aead_hmac_aes_256_gcm(), "AEAD-HMAC-AES-256-GCM", kTLSADLen, selected) ||
3321-
!SpeedAEADSeal(EVP_aead_hmac_aes_256_gcm_key_commit(), "AEAD-HMAC-AES-256-GCM key commit", kTLSADLen, selected) ||
3322-
!SpeedAEADOpen(EVP_aead_hmac_aes_256_gcm_key_commit(), "AEAD-HMAC-AES-256-GCM key commit", kTLSADLen, selected) ||
33233328
!Speed25519(selected) ||
33243329
!SpeedSPAKE2(selected) ||
33253330
!SpeedRSAKeyGen(true, selected) ||

0 commit comments

Comments
 (0)