From 6b0cdf071aa36874d579f0ca718c7b953da29301 Mon Sep 17 00:00:00 2001 From: Filippo Valsorda Date: Mon, 28 Jan 2019 09:54:14 -0500 Subject: [PATCH] internal/radix51: define a mask64Bits constant --- internal/radix51/fe.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/internal/radix51/fe.go b/internal/radix51/fe.go index 1320839..755007c 100644 --- a/internal/radix51/fe.go +++ b/internal/radix51/fe.go @@ -359,10 +359,12 @@ func (v *FieldElement) Equal(u *FieldElement) int { return subtle.ConstantTimeCompare(sa[:], sv[:]) } +const mask64Bits uint64 = (1 << 64) - 1 + // Select sets v to a if cond == 1, and to b if cond == 0. // v, a and b are allowed to overlap. func (v *FieldElement) Select(a, b *FieldElement, cond int) *FieldElement { - m := uint64(cond) * 0xffffffffffffffff + m := uint64(cond) * mask64Bits v[0] = (m & a[0]) | (^m & b[0]) v[1] = (m & a[1]) | (^m & b[1]) v[2] = (m & a[2]) | (^m & b[2])