From 463921bb649d644f79f9d7f0f96f10aa0d165f76 Mon Sep 17 00:00:00 2001 From: Jonas Schnelli Date: Mon, 13 Aug 2018 20:18:25 +0200 Subject: [PATCH] CKey: add method to negate the key --- src/key.cpp | 6 ++++++ src/key.h | 3 +++ 2 files changed, 9 insertions(+) diff --git a/src/key.cpp b/src/key.cpp index 9d982fc44..c17f6a0ae 100644 --- a/src/key.cpp +++ b/src/key.cpp @@ -163,6 +163,12 @@ void CKey::MakeNewKey(bool fCompressedIn) { fCompressed = fCompressedIn; } +bool CKey::Negate() +{ + assert(fValid); + return secp256k1_ec_privkey_negate(secp256k1_context_sign, keydata.data()); +} + CPrivKey CKey::GetPrivKey() const { assert(fValid); CPrivKey privkey; diff --git a/src/key.h b/src/key.h index 0f695c07b..67e2cfc09 100644 --- a/src/key.h +++ b/src/key.h @@ -98,6 +98,9 @@ public: //! Generate a new private key using a cryptographic PRNG. void MakeNewKey(bool fCompressed); + //! Negate private key + bool Negate(); + /** * Convert the private key to a CPrivKey (serialized OpenSSL private key data). * This is expensive.