diff --git a/armsrc/cmac_3des.c b/armsrc/cmac_3des.c index f857ca190..23c3509c8 100644 --- a/armsrc/cmac_3des.c +++ b/armsrc/cmac_3des.c @@ -63,11 +63,9 @@ static void generate_subkeys(mbedtls_des3_context *ctx, uint8_t *K1, uint8_t *K2 // Pad the last block (adds 0x80 followed by zeros) static void padding(const uint8_t *lastb, uint8_t *pad, size_t len) { + memset(pad, 0x00, len); memcpy(pad, lastb, len); pad[len] = 0x80; - for (size_t i = len + 1; i < 16; i++) { - pad[i] = 0x00; - } } // CMAC implementation diff --git a/armsrc/cmac_calc.c b/armsrc/cmac_calc.c index 081edae71..38c6ea410 100644 --- a/armsrc/cmac_calc.c +++ b/armsrc/cmac_calc.c @@ -89,11 +89,9 @@ static void generate_subkeys(mbedtls_aes_context *ctx, uint8_t *K1, uint8_t *K2) // Pad the last block (adds 0x80 followed by zeros) static void padding(const uint8_t *lastb, uint8_t *pad, size_t len) { + memset(pad, 0x00, len); memcpy(pad, lastb, len); pad[len] = 0x80; - for (size_t i = len + 1; i < 16; i++) { - pad[i] = 0x00; - } } // CMAC implementation