diff options
Diffstat (limited to 'firmware/lib/cryptolib')
-rw-r--r-- | firmware/lib/cryptolib/rsa.c | 8 | ||||
-rw-r--r-- | firmware/lib/cryptolib/sha1.c | 2 | ||||
-rw-r--r-- | firmware/lib/cryptolib/sha512.c | 20 |
3 files changed, 15 insertions, 15 deletions
diff --git a/firmware/lib/cryptolib/rsa.c b/firmware/lib/cryptolib/rsa.c index d552e13e..897816e8 100644 --- a/firmware/lib/cryptolib/rsa.c +++ b/firmware/lib/cryptolib/rsa.c @@ -39,14 +39,14 @@ static void montMulAdd(const RSAPublicKey *key, uint32_t* c, const uint32_t a, const uint32_t* b) { - uint64_t A = UINT64_MULT32(a, b[0]) + c[0]; + uint64_t A = (uint64_t)a * b[0] + c[0]; uint32_t d0 = (uint32_t)A * key->n0inv; - uint64_t B = UINT64_MULT32(d0, key->n[0]) + (uint32_t)A; + uint64_t B = (uint64_t)d0 * key->n[0] + (uint32_t)A; uint32_t i; for (i = 1; i < key->len; ++i) { - A = (A >> 32) + UINT64_MULT32(a, b[i]) + c[i]; - B = (B >> 32) + UINT64_MULT32(d0, key->n[i]) + (uint32_t)A; + A = (A >> 32) + (uint64_t)a * b[i] + c[i]; + B = (B >> 32) + (uint64_t)d0 * key->n[i] + (uint32_t)A; c[i - 1] = (uint32_t)B; } diff --git a/firmware/lib/cryptolib/sha1.c b/firmware/lib/cryptolib/sha1.c index fa7e6653..0a3f8f6a 100644 --- a/firmware/lib/cryptolib/sha1.c +++ b/firmware/lib/cryptolib/sha1.c @@ -247,7 +247,7 @@ uint8_t* SHA1_final(SHA1_CTX *ctx) { SHA1_update(ctx, (uint8_t*)"\0", 1); } for (i = 0; i < 8; ++i) { - uint8_t tmp = (uint8_t)UINT64_RSHIFT(cnt, (7 - i) * 8); + uint8_t tmp = (uint8_t)((uint64_t)cnt >> ((7 - i) * 8)); SHA1_update(ctx, &tmp, 1); } diff --git a/firmware/lib/cryptolib/sha512.c b/firmware/lib/cryptolib/sha512.c index 3a45be51..66c9a35f 100644 --- a/firmware/lib/cryptolib/sha512.c +++ b/firmware/lib/cryptolib/sha512.c @@ -57,16 +57,16 @@ *((str) + 0) = (uint8_t) ((x) >> 24); \ } -#define UNPACK64(x, str) \ - { \ - *((str) + 7) = (uint8_t) x; \ - *((str) + 6) = (uint8_t) UINT64_RSHIFT(x, 8); \ - *((str) + 5) = (uint8_t) UINT64_RSHIFT(x, 16); \ - *((str) + 4) = (uint8_t) UINT64_RSHIFT(x, 24); \ - *((str) + 3) = (uint8_t) UINT64_RSHIFT(x, 32); \ - *((str) + 2) = (uint8_t) UINT64_RSHIFT(x, 40); \ - *((str) + 1) = (uint8_t) UINT64_RSHIFT(x, 48); \ - *((str) + 0) = (uint8_t) UINT64_RSHIFT(x, 56); \ +#define UNPACK64(x, str) \ + { \ + *((str) + 7) = (uint8_t) x; \ + *((str) + 6) = (uint8_t) ((uint64_t)x >> 8); \ + *((str) + 5) = (uint8_t) ((uint64_t)x >> 16); \ + *((str) + 4) = (uint8_t) ((uint64_t)x >> 24); \ + *((str) + 3) = (uint8_t) ((uint64_t)x >> 32); \ + *((str) + 2) = (uint8_t) ((uint64_t)x >> 40); \ + *((str) + 1) = (uint8_t) ((uint64_t)x >> 48); \ + *((str) + 0) = (uint8_t) ((uint64_t)x >> 56); \ } #define PACK64(str, x) \ |