constantTimeBytesEquals function

bool constantTimeBytesEquals(
  1. List<int> x,
  2. List<int> y
)

Byte-wise constant-time comparison.

Implementation

bool constantTimeBytesEquals(List<int> x, List<int> y) {
  var diff = x.length ^ y.length;
  for (var i = 0; i < x.length && i < y.length; i++) {
    diff |= x[i] ^ y[i];
  }
  return diff == 0;
}