diff options
author | Amitay Isaacs <amitay@ozlabs.org> | 2021-02-01 06:22:16 +0100 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2021-04-08 13:18:10 +0200 |
commit | f684a2d783bf2c4728e65f83e0f89ec654f40e79 (patch) | |
tree | 2c20b2ecd7c0b40c365fc31a5e3fa659dfe6fbe9 /crypto/ec/curve448 | |
parent | Add a constant time zero check function for 64-bit integers (diff) | |
download | openssl-f684a2d783bf2c4728e65f83e0f89ec654f40e79.tar.xz openssl-f684a2d783bf2c4728e65f83e0f89ec654f40e79.zip |
curve448: Use constant time zero check function
Signed-off-by: Amitay Isaacs <amitay@ozlabs.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14784)
Diffstat (limited to 'crypto/ec/curve448')
-rw-r--r-- | crypto/ec/curve448/arch_64/arch_intrinsics.h | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/crypto/ec/curve448/arch_64/arch_intrinsics.h b/crypto/ec/curve448/arch_64/arch_intrinsics.h index ef611b903f..30be38e99b 100644 --- a/crypto/ec/curve448/arch_64/arch_intrinsics.h +++ b/crypto/ec/curve448/arch_64/arch_intrinsics.h @@ -13,13 +13,11 @@ #ifndef OSSL_CRYPTO_EC_CURVE448_ARCH_64_INTRINSICS_H # define OSSL_CRYPTO_EC_CURVE448_ARCH_64_INTRINSICS_H +# include "internal/constant_time.h" + # define ARCH_WORD_BITS 64 -static ossl_inline uint64_t word_is_zero(uint64_t a) -{ - /* let's hope the compiler isn't clever enough to optimize this. */ - return (((__uint128_t) a) - 1) >> 64; -} +# define word_is_zero(a) constant_time_is_zero_64(a) static ossl_inline uint128_t widemul(uint64_t a, uint64_t b) { |