From 1c1d4d9974d7a97bd157197adeb11cd759e2b931 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Thu, 26 Nov 2020 22:48:56 +0100 Subject: cmd to add auditor --- src/include/taler_signatures.h | 67 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) (limited to 'src/include/taler_signatures.h') diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h index d72dd11b9..e732f13b6 100644 --- a/src/include/taler_signatures.h +++ b/src/include/taler_signatures.h @@ -56,6 +56,16 @@ */ #define TALER_SIGNATURE_MASTER_DENOMINATION_KEY_VALIDITY 1025 +/** + * Add an auditor to the list of our auditors. + */ +#define TALER_SIGNATURE_MASTER_ADD_AUDITOR 1026 + +/** + * Remove an auditor from the list of our auditors. + */ +#define TALER_SIGNATURE_MASTER_DEL_AUDITOR 1027 + /** * Fees charged per (aggregate) wire transfer to the merchant. */ @@ -72,6 +82,7 @@ */ #define TALER_SIGNATURE_MASTER_WIRE_DETAILS 1030 + /*********************************************/ /* Exchange online signatures (with signing key) */ /*********************************************/ @@ -791,6 +802,62 @@ struct TALER_ExchangeKeySetPS }; +/** + * @brief Signature made by the exchange offline key over the information of + * an auditor to be added to the exchange's set of auditors. + */ +struct TALER_ExchangeAddAuditorPS +{ + + /** + * Purpose is #TALER_SIGNATURE_MASTER_ADD_AUDITOR. Signed + * by a `struct TALER_MasterPublicKeyP` using EdDSA. + */ + struct GNUNET_CRYPTO_EccSignaturePurpose purpose; + + /** + * Time of the change. + */ + struct GNUNET_TIME_AbsoluteNBO start_date; + + /** + * Public key of the auditor. + */ + struct TALER_AuditorPublicKeyP auditor_pub; + + /** + * Hash over the auditor's URL. + */ + struct GNUNET_HashCode h_auditor_url GNUNET_PACKED; +}; + + +/** + * @brief Signature made by the exchange offline key over the information of + * an auditor to be removed to the exchange's set of auditors. + */ +struct TALER_ExchangeDelAuditorPS +{ + + /** + * Purpose is #TALER_SIGNATURE_MASTER_DEL_AUDITOR. Signed + * by a `struct TALER_MasterPublicKeyP` using EdDSA. + */ + struct GNUNET_CRYPTO_EccSignaturePurpose purpose; + + /** + * Time of the change. + */ + struct GNUNET_TIME_AbsoluteNBO end_date; + + /** + * Public key of the auditor. + */ + struct TALER_AuditorPublicKeyP auditor_pub; + +}; + + /** * @brief Information about a denomination key. Denomination keys * are used to sign coins of a certain value into existence. -- cgit v1.2.3