diff options
Diffstat (limited to 'src/include/taler_util.h')
-rw-r--r-- | src/include/taler_util.h | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/src/include/taler_util.h b/src/include/taler_util.h index 19e6bacf1..2c5faaa52 100644 --- a/src/include/taler_util.h +++ b/src/include/taler_util.h | |||
@@ -241,6 +241,20 @@ TALER_data_to_string_alloc (const void *buf, | |||
241 | /* ****************** Refresh crypto primitives ************* */ | 241 | /* ****************** Refresh crypto primitives ************* */ |
242 | 242 | ||
243 | /** | 243 | /** |
244 | * Secret used to decrypt the key to decrypt link secrets. | ||
245 | */ | ||
246 | struct TALER_TransferSecret | ||
247 | { | ||
248 | /** | ||
249 | * Secret used to encrypt/decrypt the `struct TALER_LinkSecret`. | ||
250 | * Must be (currently) a hash as this is what | ||
251 | * #GNUNET_CRYPTO_ecc_ecdh() returns to us. | ||
252 | */ | ||
253 | struct GNUNET_HashCode key; | ||
254 | }; | ||
255 | |||
256 | |||
257 | /** | ||
244 | * Secret used to decrypt refresh links. | 258 | * Secret used to decrypt refresh links. |
245 | */ | 259 | */ |
246 | struct TALER_LinkSecret | 260 | struct TALER_LinkSecret |
@@ -312,15 +326,14 @@ struct TALER_RefreshLinkDecrypted | |||
312 | * Use the @a trans_sec (from ECDHE) to decrypt the @a secret_enc | 326 | * Use the @a trans_sec (from ECDHE) to decrypt the @a secret_enc |
313 | * to obtain the @a secret to decrypt the linkage data. | 327 | * to obtain the @a secret to decrypt the linkage data. |
314 | * | 328 | * |
315 | * @param secret_enc encrypted secret (FIXME: use different type!) | 329 | * @param secret_enc encrypted secret |
316 | * @param trans_sec transfer secret (FIXME: use different type?) | 330 | * @param trans_sec transfer secret |
317 | * @param secret shared secret for refresh link decryption | 331 | * @param secret shared secret for refresh link decryption |
318 | * (FIXME: use different type?) | ||
319 | * @return #GNUNET_OK on success | 332 | * @return #GNUNET_OK on success |
320 | */ | 333 | */ |
321 | int | 334 | int |
322 | TALER_transfer_decrypt (const struct TALER_EncryptedLinkSecret *secret_enc, | 335 | TALER_transfer_decrypt (const struct TALER_EncryptedLinkSecret *secret_enc, |
323 | const struct GNUNET_HashCode *trans_sec, | 336 | const struct TALER_TransferSecret *trans_sec, |
324 | struct TALER_LinkSecret *secret); | 337 | struct TALER_LinkSecret *secret); |
325 | 338 | ||
326 | 339 | ||
@@ -329,13 +342,13 @@ TALER_transfer_decrypt (const struct TALER_EncryptedLinkSecret *secret_enc, | |||
329 | * to obtain the @a secret_enc. | 342 | * to obtain the @a secret_enc. |
330 | * | 343 | * |
331 | * @param secret shared secret for refresh link decryption | 344 | * @param secret shared secret for refresh link decryption |
332 | * @param trans_sec transfer secret (FIXME: use different type?) | 345 | * @param trans_sec transfer secret |
333 | * @param secret_enc[out] encrypted secret | 346 | * @param secret_enc[out] encrypted secret |
334 | * @return #GNUNET_OK on success | 347 | * @return #GNUNET_OK on success |
335 | */ | 348 | */ |
336 | int | 349 | int |
337 | TALER_transfer_encrypt (const struct TALER_LinkSecret *secret, | 350 | TALER_transfer_encrypt (const struct TALER_LinkSecret *secret, |
338 | const struct GNUNET_HashCode *trans_sec, | 351 | const struct TALER_TransferSecret *trans_sec, |
339 | struct TALER_EncryptedLinkSecret *secret_enc); | 352 | struct TALER_EncryptedLinkSecret *secret_enc); |
340 | 353 | ||
341 | 354 | ||