diff options
Diffstat (limited to 'src/include/taler_signatures.h')
-rw-r--r-- | src/include/taler_signatures.h | 40 |
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 |