aboutsummaryrefslogtreecommitdiff
path: root/src/libwalletqt
diff options
context:
space:
mode:
authorstoffu <stoffu@protonmail.ch>2017-11-20 16:12:36 +0900
committerstoffu <stoffu@protonmail.ch>2017-11-30 08:36:28 +0900
commit5cda1f5ac1a4f567b7b87ad0c47f4d5594f67dae (patch)
tree59723d5f3d272df4dd88598c5a30899a6ad0e828 /src/libwalletqt
parentd9d2050f2924322ff6f2895addcb6961a49132f9 (diff)
downloadmonzero-gui-5cda1f5ac1a4f567b7b87ad0c47f4d5594f67dae.tar.gz
monzero-gui-5cda1f5ac1a4f567b7b87ad0c47f4d5594f67dae.tar.xz
monzero-gui-5cda1f5ac1a4f567b7b87ad0c47f4d5594f67dae.zip
Spend proof
Diffstat (limited to 'src/libwalletqt')
-rw-r--r--src/libwalletqt/Wallet.cpp16
-rw-r--r--src/libwalletqt/Wallet.h2
2 files changed, 18 insertions, 0 deletions
diff --git a/src/libwalletqt/Wallet.cpp b/src/libwalletqt/Wallet.cpp
index da7ecd9b..9dfcaef7 100644
--- a/src/libwalletqt/Wallet.cpp
+++ b/src/libwalletqt/Wallet.cpp
@@ -523,6 +523,22 @@ QString Wallet::checkTxProof(const QString &txid, const QString &address, const
return QString::fromStdString(result);
}
+Q_INVOKABLE QString Wallet::getSpendProof(const QString &txid, const QString &message) const
+{
+ std::string result = m_walletImpl->getSpendProof(txid.toStdString(), message.toStdString());
+ if (result.empty())
+ result = "error|" + m_walletImpl->errorString();
+ return QString::fromStdString(result);
+}
+
+Q_INVOKABLE QString Wallet::checkSpendProof(const QString &txid, const QString &message, const QString &signature) const
+{
+ bool good;
+ bool success = m_walletImpl->checkSpendProof(txid.toStdString(), message.toStdString(), signature.toStdString(), good);
+ std::string result = std::string(success ? "true" : "false") + "|" + std::string(!success ? m_walletImpl->errorString() : good ? "true" : "false");
+ return QString::fromStdString(result);
+}
+
QString Wallet::signMessage(const QString &message, bool filename) const
{
if (filename) {
diff --git a/src/libwalletqt/Wallet.h b/src/libwalletqt/Wallet.h
index c653b8df..edec6130 100644
--- a/src/libwalletqt/Wallet.h
+++ b/src/libwalletqt/Wallet.h
@@ -235,6 +235,8 @@ public:
Q_INVOKABLE QString checkTxKey(const QString &txid, const QString &tx_key, const QString &address);
Q_INVOKABLE QString getTxProof(const QString &txid, const QString &address, const QString &message) const;
Q_INVOKABLE QString checkTxProof(const QString &txid, const QString &address, const QString &message, const QString &signature);
+ Q_INVOKABLE QString getSpendProof(const QString &txid, const QString &message) const;
+ Q_INVOKABLE QString checkSpendProof(const QString &txid, const QString &message, const QString &signature) const;
// Rescan spent outputs
Q_INVOKABLE bool rescanSpent();