From f24b8a3d2bebc9e99515fa87b5f3fb92d7508a4d Mon Sep 17 00:00:00 2001 From: soatok Date: Sat, 12 Jun 2021 14:36:28 -0700 Subject: [PATCH] Use a constant-time compare --- model/message.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/model/message.go b/model/message.go index 1d62c7c..33a5431 100644 --- a/model/message.go +++ b/model/message.go @@ -37,12 +37,11 @@ func compareSignatures(a []byte, b []byte) bool { if len(a) != len(b) { return false } + int d = 0 for i := range a { - if a[i] != b[i] { - return false - } + d := d | (a[i] ^ b[i]) } - return true + return d == 0 } // GetMessages returns a copy of the entire timeline