summaryrefslogtreecommitdiff
path: root/src/include/taler_signatures.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/taler_signatures.h')
-rw-r--r--src/include/taler_signatures.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h
index 90fa421c3..e72c2ed61 100644
--- a/src/include/taler_signatures.h
+++ b/src/include/taler_signatures.h
@@ -29,6 +29,7 @@
#define TALER_SIGNATURES_H
#include <gnunet/gnunet_util_lib.h>
+#include "taler_util.h"
/**
* Purpose for signing public keys signed
@@ -141,6 +142,45 @@ struct TALER_WithdrawRequest
};
+/**
+ * Format used to generate the signature on a request to deposit
+ * a coin into the account of a merchant.
+ */
+struct TALER_DepositRequest
+{
+ /**
+ * Purpose must be #TALER_SIGNATURE_DEPOSIT
+ */
+ struct GNUNET_CRYPTO_EccSignaturePurpose purpose;
+
+ /**
+ * Hash over the contract for which this deposit is made.
+ */
+ struct GNUNET_HashCode h_contract;
+
+ /**
+ * Hash over the wiring information of the merchant.
+ */
+ struct GNUNET_HashCode h_wire;
+
+ /**
+ * Merchant-generated transaction ID to detect duplicate
+ * transactions.
+ */
+ uint64_t transaction_id GNUNET_PACKED;
+
+ /**
+ * Amount to be deposited.
+ */
+ struct TALER_AmountNBO amount;
+
+ /**
+ * The coin's public key.
+ */
+ struct GNUNET_CRYPTO_EcdsaPublicKey coin_pub;
+
+};
+
/**
* FIXME