verify method
Implementation
bool verify(Uint8List message, Uint8List sig) {
if (sig.length != PrivateKey.signatureSize || sig[63] & 224 != 0) {
return false;
}
ExtendedGroupElement A = ExtendedGroupElement.fromBytes(bytes);
A.X = -A.X;
A.T = -A.T;
Uint8List h = sha512Many([sig.sublist(0, 32), bytes, message]);
final hReduced = curve25519.reduce(h);
final s = sig.sublist(32);
if (!curve25519.isLessThanOrder(s)) {
return false;
}
final R = curve25519.scalarDualMultiply(hReduced, A, s);
final Uint8List checkR = R.asBytes;
return ListEquality().equals(sig.sublist(0, 32), checkR);
}