aboutsummaryrefslogtreecommitdiff
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.h57
1 files changed, 54 insertions, 3 deletions
diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h
index e72c2ed61..84968582e 100644
--- a/src/include/taler_signatures.h
+++ b/src/include/taler_signatures.h
@@ -85,6 +85,12 @@
85 */ 85 */
86#define TALER_SIGNATURE_REFRESH_MELT_CONFIRM 9 86#define TALER_SIGNATURE_REFRESH_MELT_CONFIRM 9
87 87
88/**
89 * Signature where the Mint confirms a deposit request.
90 */
91#define TALER_SIGNATURE_MINT_DEPOSIT 10
92
93
88/***********************/ 94/***********************/
89/* Merchant signatures */ 95/* Merchant signatures */
90/***********************/ 96/***********************/
@@ -101,12 +107,12 @@
101/** 107/**
102 * Signature made by the wallet of a user to confirm a deposit permission 108 * Signature made by the wallet of a user to confirm a deposit permission
103 */ 109 */
104#define TALER_SIGNATURE_DEPOSIT 201 110#define TALER_SIGNATURE_WALLET_DEPOSIT 201
105 111
106/** 112/**
107 * Signature made by the wallet of a user to confirm a incremental deposit permission 113 * Signature made by the wallet of a user to confirm a incremental deposit permission
108 */ 114 */
109#define TALER_SIGNATURE_INCREMENTAL_DEPOSIT 202 115#define TALER_SIGNATURE_INCREMENTAL_WALLET_DEPOSIT 202
110 116
111 117
112 118
@@ -149,7 +155,7 @@ struct TALER_WithdrawRequest
149struct TALER_DepositRequest 155struct TALER_DepositRequest
150{ 156{
151 /** 157 /**
152 * Purpose must be #TALER_SIGNATURE_DEPOSIT 158 * Purpose must be #TALER_SIGNATURE_WALLET_DEPOSIT
153 */ 159 */
154 struct GNUNET_CRYPTO_EccSignaturePurpose purpose; 160 struct GNUNET_CRYPTO_EccSignaturePurpose purpose;
155 161
@@ -183,6 +189,51 @@ struct TALER_DepositRequest
183 189
184 190
185/** 191/**
192 * Format used to generate the signature on a confirmation
193 * from the mint that a deposit request succeeded.
194 */
195struct TALER_DepositConfirmation
196{
197 /**
198 * Purpose must be #TALER_SIGNATURE_MINT_DEPOSIT
199 */
200 struct GNUNET_CRYPTO_EccSignaturePurpose purpose;
201
202 /**
203 * Hash over the contract for which this deposit is made.
204 */
205 struct GNUNET_HashCode h_contract;
206
207 /**
208 * Hash over the wiring information of the merchant.
209 */
210 struct GNUNET_HashCode h_wire;
211
212 /**
213 * Merchant-generated transaction ID to detect duplicate
214 * transactions.
215 */
216 uint64_t transaction_id GNUNET_PACKED;
217
218 /**
219 * Amount to be deposited.
220 */
221 struct TALER_AmountNBO amount;
222
223 /**
224 * The coin's public key.
225 */
226 struct GNUNET_CRYPTO_EcdsaPublicKey coin_pub;
227
228 /**
229 * The Merachant's public key.
230 */
231 struct GNUNET_CRYPTO_EddsaPublicKey merchant;
232
233};
234
235
236/**
186 * FIXME 237 * FIXME
187 */ 238 */
188struct TALER_MINT_SignKeyIssue 239struct TALER_MINT_SignKeyIssue