From c31921f4d9b228338682068155167583f007b0d0 Mon Sep 17 00:00:00 2001 From: Yeastplume Date: Thu, 25 May 2023 13:43:10 +0100 Subject: [PATCH] core wrapper function for subtract signature function (#3748) * core wrapper function for subtract signature function * revert to cargo lock from master --- core/src/libtx/aggsig.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/core/src/libtx/aggsig.rs b/core/src/libtx/aggsig.rs index debc422aa..c6ce80066 100644 --- a/core/src/libtx/aggsig.rs +++ b/core/src/libtx/aggsig.rs @@ -408,6 +408,16 @@ pub fn add_signatures( Ok(sig) } +/// Subtract a partial signature from a completed signature +/// see https://github.com/mimblewimble/rust-secp256k1-zkp/blob/e9e4f09bd0c85da914774a52219457ba10ac3e57/src/aggsig.rs#L267 +pub fn subtract_signature( + secp: &Secp256k1, + sig: &Signature, + partial_sig: &Signature, +) -> Result<(Signature, Option), Error> { + let sig = aggsig::subtract_partial_signature(secp, sig, partial_sig)?; + Ok(sig) +} /// Just a simple sig, creates its own nonce if not provided pub fn sign_single( secp: &Secp256k1,