constantTimeEquals static method

bool constantTimeEquals(
  1. Uint8List a,
  2. Uint8List b
)

Constant-time comparison to prevent timing attacks.

Returns true if a and b are equal.

Implementation

static bool constantTimeEquals(Uint8List a, Uint8List b) {
  if (a.length != b.length) return false;

  var result = 0;
  for (var i = 0; i < a.length; i++) {
    result |= a[i] ^ b[i];
  }
  return result == 0;
}