summaryrefslogtreecommitdiff
path: root/src/include/taler_signatures.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/taler_signatures.h')
-rw-r--r--src/include/taler_signatures.h49
1 files changed, 44 insertions, 5 deletions
diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h
index 70fc1c0ad..4d7e83ec5 100644
--- a/src/include/taler_signatures.h
+++ b/src/include/taler_signatures.h
@@ -89,6 +89,17 @@
#define TALER_SIGNATURE_MINT_KEY_SET 1035
+/*********************/
+/* Wallet signatures */
+/*********************/
+
+/**
+ * Signature where the auditor confirms that he is
+ * aware of certain denomination keys from the mint.
+ */
+#define TALER_SIGNATURE_AUDITOR_MINT_KEYS 1064
+
+
/***********************/
/* Merchant signatures */
/***********************/
@@ -123,11 +134,11 @@
*/
#define TALER_SIGNATURE_WALLET_COIN_MELT 1202
+
/*******************/
/* Test signatures */
/*******************/
-
/**
* EdDSA test signature.
*/
@@ -512,10 +523,6 @@ struct TALER_MintKeySetPS
*/
struct TALER_DenominationKeyValidityPS
{
- /**
- * Signature over this struct to affirm the validity of the key.
- */
- struct TALER_MasterSignatureP signature;
/**
* Purpose is #TALER_SIGNATURE_MASTER_DENOMINATION_KEY_VALIDITY.
@@ -599,6 +606,38 @@ struct TALER_DenominationKeyValidityPS
};
+
+/**
+ * @brief Information signed by an auditor affirming
+ * the master public key and the denomination keys
+ * of a mint.
+ */
+struct TALER_MintKeyValidityPS
+{
+
+ /**
+ * Purpose is #TALER_SIGNATURE_AUDITOR_MINT_KEYS.
+ */
+ struct GNUNET_CRYPTO_EccSignaturePurpose purpose;
+
+ /**
+ * The long-term offline master key of the mint, affirmed by the
+ * auditor.
+ */
+ struct TALER_MasterPublicKeyP master;
+
+ /**
+ * Array of hash(es) of the mint's denomination keys.
+ * Specifically, this is the hash over the
+ * `struct TALER_DenominationKeyValidityPS`, not just
+ * the public key (as the auditor needs to check against
+ * the correct valuations and fee structure).
+ */
+ /* struct GNUNET_HashCode h_dks; */
+
+};
+
+
GNUNET_NETWORK_STRUCT_END
#endif