diff options
author | Christian Grothoff <christian@grothoff.org> | 2019-06-26 15:34:14 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2019-06-26 15:34:44 +0200 |
commit | 3a2f72b4aad3c2719e4326d30a97e49e26b5d797 (patch) | |
tree | c6930c9398872eac2a9968ad08ff7066cd88e9fb /src/include/taler_signatures.h | |
parent | 30903b93866900e41bb4defa4d7b8ee49f3f3f99 (diff) |
implement /link signatures
Diffstat (limited to 'src/include/taler_signatures.h')
-rw-r--r-- | src/include/taler_signatures.h | 46 |
1 files changed, 43 insertions, 3 deletions
diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h index bff73f737..b738e3156 100644 --- a/src/include/taler_signatures.h +++ b/src/include/taler_signatures.h @@ -130,9 +130,9 @@ #define TALER_SIGNATURE_EXCHANGE_RESERVE_CLOSED 1040 -/*********************/ -/* Wallet signatures */ -/*********************/ +/**********************/ +/* Auditor signatures */ +/**********************/ /** * Signature where the auditor confirms that he is @@ -209,6 +209,11 @@ */ #define TALER_SIGNATURE_WALLET_COIN_PAYBACK 1203 +/** + * Signature using a coin key authenticating link data. + */ +#define TALER_SIGNATURE_WALLET_COIN_LINK 1204 + /*******************/ /* Test signatures */ @@ -229,6 +234,41 @@ GNUNET_NETWORK_STRUCT_BEGIN /** + * @brief Format used for to allow the wallet to authenticate + * link data provided by the exchange. + */ +struct TALER_LinkDataPS +{ + + /** + * Purpose must be #TALER_SIGNATURE_WALLET_COIN_LINK. + * Used with an EdDSA signature of a `struct TALER_CoinPublicKeyP`. + */ + struct GNUNET_CRYPTO_EccSignaturePurpose purpose; + + /** + * Hash of the denomination public key of the new coin. + */ + struct GNUNET_HashCode h_denom_pub; + + /** + * Public key of the old coin being refreshed. + */ + struct TALER_CoinSpendPublicKeyP old_coin_pub; + + /** + * Transfer public key (for which the private key was not revealed) + */ + struct TALER_TransferPublicKeyP transfer_pub; + + /** + * Hash of the blinded new coin. + */ + struct GNUNET_HashCode coin_envelope_hash; +}; + + +/** * @brief Format used for to generate the signature on a request to withdraw * coins from a reserve. */ |