diff options
author | Lucien Heuzeveldt <lucienclaude.heuzeveldt@students.bfh.ch> | 2022-01-04 17:26:01 +0100 |
---|---|---|
committer | Gian Demarmels <gian@demarmels.org> | 2022-02-04 15:33:13 +0100 |
commit | 106664ed0c50621bd20568c948ad30fccd0689ea (patch) | |
tree | 9eee0d4afe84da5c93d03360422de5daf4c90546 /src/include | |
parent | 875a8b397ee4a83f1092151906ad041c4339e7b2 (diff) | |
download | exchange-106664ed0c50621bd20568c948ad30fccd0689ea.tar.xz |
implement TALER_CRYPTO_helper_cs_r_derive and related tests
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/taler_crypto_lib.h | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/src/include/taler_crypto_lib.h b/src/include/taler_crypto_lib.h index bd889b354..a20e51204 100644 --- a/src/include/taler_crypto_lib.h +++ b/src/include/taler_crypto_lib.h @@ -1800,7 +1800,7 @@ TALER_CRYPTO_helper_cs_sign ( /** - * Ask the helper to revoke the public key associated with @param h_denom_pub . + * Ask the helper to revoke the public key associated with @param h_cs . * Will cause the helper to tell all clients that the key is now unavailable, * and to create a replacement key. * @@ -1812,7 +1812,7 @@ TALER_CRYPTO_helper_cs_sign ( * callback. * * @param dh helper to process connection - * @param h_rsa hash of the RSA public key to revoke + * @param h_cs hash of the CS public key to revoke */ void TALER_CRYPTO_helper_cs_revoke ( @@ -1821,6 +1821,30 @@ TALER_CRYPTO_helper_cs_revoke ( /** + * Ask the helper to derive R using the @param nonce and denomination key + * associated with @param h_cs. + * + * This operation will block until the R has been obtained. Should + * this process receive a signal (that is not ignored) while the operation is + * pending, the operation will fail. Note that the helper may still believe + * that it created the signature. Thus, signals may result in a small + * differences in the signature counters. Retrying in this case may work. + * + * @param dh helper to process connection + * @param h_cs hash of the CS public key to revoke + * @param nonce witdhraw nonce + * @param[out] ec set to the error code (or #TALER_EC_NONE on success) + * @return R, the value inside the structure will be NULL on failure, + * see @a ec for details about the failure + */ +struct TALER_DenominationCsPublicR +TALER_CRYPTO_helper_cs_r_derive (struct TALER_CRYPTO_CsDenominationHelper *dh, + const struct TALER_CsPubHashP *h_cs, + const struct TALER_WithdrawNonce *nonce, + enum TALER_ErrorCode *ec); + + +/** * Close connection to @a dh. * * @param[in] dh connection to close |