Skip to content

Commit 42c312e

Browse files
committed
Harden constant-time compare accumulators
F/2565
1 parent 58c2e04 commit 42c312e

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

src/image.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ static uint8_t digest[WOLFBOOT_SHA_DIGEST_SIZE] XALIGNED(4);
6161
int NOINLINEFUNCTION image_CT_compare(
6262
const uint8_t *expected, const uint8_t *actual, uint32_t len)
6363
{
64-
uint8_t diff = 0;
64+
volatile uint8_t diff = 0;
6565
uint32_t i;
6666

6767
for (i = 0; i < len; i++) {
@@ -2404,7 +2404,7 @@ uint8_t* wolfBoot_peek_image(struct wolfBoot_image *img, uint32_t offset,
24042404
static int keyslot_CT_hint_matches(const uint8_t *expected,
24052405
const uint8_t *actual)
24062406
{
2407-
uint8_t diff = 0;
2407+
volatile uint8_t diff = 0;
24082408
uint32_t i;
24092409

24102410
for (i = 0; i < WOLFBOOT_SHA_DIGEST_SIZE; i++) {

src/tpm.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ int wolfBoot_constant_compare(const uint8_t* a, const uint8_t* b,
4848
uint32_t len)
4949
{
5050
uint32_t i;
51-
uint8_t diff = 0;
51+
volatile uint8_t diff = 0;
5252

5353
for (i = 0; i < len; i++) {
5454
diff |= a[i] ^ b[i];

0 commit comments

Comments
 (0)