diff options
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/crypto.c | 4 | ||||
-rw-r--r-- | src/util/denom.c | 61 | ||||
-rw-r--r-- | src/util/test_helper_rsa.c | 2 |
3 files changed, 13 insertions, 54 deletions
diff --git a/src/util/crypto.c b/src/util/crypto.c index 99744304b..668a91adf 100644 --- a/src/util/crypto.c +++ b/src/util/crypto.c @@ -197,7 +197,7 @@ TALER_planchet_prepare (const struct TALER_DenominationPublicKey *dk, GNUNET_assert (TALER_DENOMINATION_RSA == dk->cipher); if (GNUNET_YES != TALER_rsa_blind (c_hash, - &ps->blinding_key.bks, + &ps->blinding_key.rsa_bks, dk->details.rsa_public_key, &pd->coin_ev, &pd->coin_ev_size)) @@ -229,7 +229,7 @@ TALER_planchet_to_coin ( sig.cipher = TALER_DENOMINATION_RSA; sig.details.rsa_signature = TALER_rsa_unblind (blind_sig->details.blinded_rsa_signature, - &ps->blinding_key.bks, + &ps->blinding_key.rsa_bks, dk->details.rsa_public_key); if (GNUNET_OK != TALER_denom_pub_verify (dk, diff --git a/src/util/denom.c b/src/util/denom.c index 9261779ea..a1f511fe6 100644 --- a/src/util/denom.c +++ b/src/util/denom.c @@ -110,17 +110,12 @@ TALER_denom_sign_blinded (struct TALER_BlindedDenominationSignature *denom_sig, enum GNUNET_GenericReturnValue -TALER_denom_sig_unblind (struct TALER_DenominationSignature *denom_sig, - const struct - TALER_BlindedDenominationSignature *bdenom_sig, - const struct TALER_BlindingSecret *bks, - const struct TALER_DenominationPublicKey *denom_pub) +TALER_denom_sig_unblind ( + struct TALER_DenominationSignature *denom_sig, + const struct TALER_BlindedDenominationSignature *bdenom_sig, + const union TALER_DenominationBlindingKeyP *bks, + const struct TALER_DenominationPublicKey *denom_pub) { - if (bks->cipher != denom_pub->cipher) - { - GNUNET_break (0); - return GNUNET_SYSERR; - } if (bdenom_sig->cipher != denom_pub->cipher) { GNUNET_break (0); @@ -135,7 +130,7 @@ TALER_denom_sig_unblind (struct TALER_DenominationSignature *denom_sig, denom_sig->details.rsa_signature = TALER_rsa_unblind ( bdenom_sig->details.blinded_rsa_signature, - &bks->details.rsa_bks, + &bks->rsa_bks, denom_pub->details.rsa_public_key); if (NULL == denom_sig->details.rsa_signature) { @@ -152,48 +147,12 @@ TALER_denom_sig_unblind (struct TALER_DenominationSignature *denom_sig, } -enum GNUNET_GenericReturnValue -TALER_blinding_secret_create (struct TALER_BlindingSecret *bs, - enum TALER_DenominationCipher cipher, - ...) -{ - memset (bs, - 0, - sizeof (*bs)); - switch (cipher) - { - case TALER_DENOMINATION_INVALID: - return GNUNET_OK; - case TALER_DENOMINATION_RSA: - bs->cipher = TALER_DENOMINATION_RSA; - GNUNET_CRYPTO_random_block (GNUNET_CRYPTO_QUALITY_NONCE, - &bs->details.rsa_bks, - sizeof (bs->details.rsa_bks)); - return GNUNET_OK; - // TODO: add case for Clause-Schnorr - default: - GNUNET_break (0); - } - return GNUNET_SYSERR; -} - - void -TALER_blinding_secret_free (struct TALER_BlindingSecret *bs) +TALER_blinding_secret_create (union TALER_DenominationBlindingKeyP *bs) { - switch (bs->cipher) - { - case TALER_DENOMINATION_INVALID: - return; - case TALER_DENOMINATION_RSA: - memset (bs, - 0, - sizeof (*bs)); - return; - // TODO: add case for Clause-Schnorr - default: - GNUNET_break (0); - } + GNUNET_CRYPTO_random_block (GNUNET_CRYPTO_QUALITY_NONCE, + bs, + sizeof (*bs)); } diff --git a/src/util/test_helper_rsa.c b/src/util/test_helper_rsa.c index 87e58bd3f..e4c0bf6fd 100644 --- a/src/util/test_helper_rsa.c +++ b/src/util/test_helper_rsa.c @@ -288,7 +288,7 @@ test_signing (struct TALER_CRYPTO_DenominationHelper *dh) if (GNUNET_OK != TALER_denom_sig_unblind (&rs, &ds, - &ps.blinding_key.bks, + &ps.blinding_key, &keys[i].denom_pub)) { GNUNET_break (0); |