feat: add transaction signature verification

This commit is contained in:
Tyera Eulberg
2020-03-03 13:39:00 -07:00
committed by Michael Vines
parent fd00571b0a
commit d9a271742f
3 changed files with 104 additions and 3 deletions

View File

@@ -411,6 +411,22 @@ export class Transaction {
this.signatures[index].signature = Buffer.from(signature);
}
/**
* Verify signatures of a complete, signed Transaction
*/
verifySignatures(): boolean {
let verified = true;
const signData = this._getSignData();
for (const {signature, publicKey} of this.signatures) {
if (
!nacl.sign.detached.verify(signData, signature, publicKey.toBuffer())
) {
verified = false;
}
}
return verified;
}
/**
* Serialize the Transaction in the wire format.
*