verifySignature method

  1. @override
bool verifySignature(
  1. String xml,
  2. Uint8List key,
  3. String signatureValue, [
  4. ValidateSignatureCallback? callback,
])
override

Implementation

@override
bool verifySignature(String xml, Uint8List key, String signatureValue,
    [ValidateSignatureCallback? callback]) {
  final parser = RSAPKCSParser();
  final puk = parser.parsePEM(utf8.decode(key)).public;
  if (puk == null) throw ArgumentError('Invalid public key');
  final rsa = RSAPublicKey(puk.modulus, BigInt.from(puk.publicExponent));
  final res =
      rsa.verifySsaPkcs1v15(signatureValue, xml, hasher: EmsaHasher.sha1);
  if (callback != null) callback(null, res);
  return res;
}