wallet2_api: add key reuse mitigations API

This commit is contained in:
moneromooo-monero 2018-03-12 12:33:05 +00:00
parent b057a21d56
commit 798535149d
No known key found for this signature in database
GPG key ID: 686F07454D6CEFC3
3 changed files with 27 additions and 0 deletions

View file

@ -1990,6 +1990,21 @@ bool WalletImpl::setRing(const std::string &key_image, const std::vector<uint64_
return true;
}
void WalletImpl::segregatePreForkOutputs(bool segregate)
{
m_wallet->segregate_pre_fork_outputs(segregate);
}
void WalletImpl::segregationHeight(uint64_t height)
{
m_wallet->segregation_height(height);
}
void WalletImpl::keyReuseMitigation2(bool mitigation)
{
m_wallet->key_reuse_mitigation2(mitigation);
}
} // namespace
namespace Bitmonero = Monero;

View file

@ -167,6 +167,9 @@ public:
virtual bool unblackballOutput(const std::string &pubkey);
virtual bool getRing(const std::string &key_image, std::vector<uint64_t> &ring) const;
virtual bool setRing(const std::string &key_image, const std::vector<uint64_t> &ring, bool relative);
virtual void segregatePreForkOutputs(bool segregate);
virtual void segregationHeight(uint64_t height);
virtual void keyReuseMitigation2(bool mitigation);
private:
void clearStatus() const;

View file

@ -769,6 +769,15 @@ struct Wallet
//! sets the ring used for a key image
virtual bool setRing(const std::string &key_image, const std::vector<uint64_t> &ring, bool relative) = 0;
//! sets whether pre-fork outs are to be segregated
virtual void segregatePreForkOutputs(bool segregate) = 0;
//! sets the height where segregation should occur
virtual void segregationHeight(uint64_t height) = 0;
//! secondary key reuse mitigation
virtual void keyReuseMitigation2(bool mitigation) = 0;
//! Light wallet authenticate and login
virtual bool lightWalletLogin(bool &isNewWallet) const = 0;