verifyTransactionSignature function

PublicKey verifyTransactionSignature(
  1. Uint8List transaction,
  2. String signature, {
  3. String? address,
})

Like verifySignature, for transaction bytes.

Implementation

PublicKey verifyTransactionSignature(
  Uint8List transaction,
  String signature, {
  String? address,
}) {
  final publicKey = _publicKeyFromSignature(signature);
  if (!isValidTransactionSignature(transaction, signature)) {
    throw ArgumentError('Signature is not valid for the provided Transaction');
  }
  if (address != null && !publicKey.verifyAddress(address)) {
    throw ArgumentError('Signature is not valid for the provided address');
  }
  return publicKey;
}