From 1164803c8bf17e653630ba4316e0ecb85f0a402a Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Mon, 6 Jul 2015 10:25:52 +0200 Subject: [PATCH] defining auditor sig --- src/include/taler_mint_service.h | 58 ++++++++++++++++++++------------ src/include/taler_signatures.h | 5 +-- 2 files changed, 39 insertions(+), 24 deletions(-) diff --git a/src/include/taler_mint_service.h b/src/include/taler_mint_service.h index 7822d6200..c9dbfb874 100644 --- a/src/include/taler_mint_service.h +++ b/src/include/taler_mint_service.h @@ -117,28 +117,6 @@ enum TALER_MINT_Option }; -/** - * Information we get from the mint about auditors. - */ -struct TALER_MINT_AuditorInformation -{ - /** - * Public key of the auditing institution. - */ - struct TALER_AuditorPublicKeyP auditor_pub; - - /** - * URL of the auditing institution. The application must check that - * this is an acceptable auditor for its purpose and also verify - * that the @a auditor_pub matches the auditor's public key given at - * that website. We expect that in practice software is going to - * often ship with an initial list of accepted auditors, just like - * browsers ship with a CA root store. - */ - const char *auditor_url; -}; - - /** * @brief Mint's signature key */ @@ -209,6 +187,42 @@ struct TALER_MINT_DenomPublicKey }; +/** + * Information we get from the mint about auditors. + */ +struct TALER_MINT_AuditorInformation +{ + /** + * Public key of the auditing institution. + */ + struct TALER_AuditorPublicKeyP auditor_pub; + + /** + * URL of the auditing institution. The application must check that + * this is an acceptable auditor for its purpose and also verify + * that the @a auditor_pub matches the auditor's public key given at + * that website. We expect that in practice software is going to + * often ship with an initial list of accepted auditors, just like + * browsers ship with a CA root store. + */ + const char *auditor_url; + + /** + * Number of denomination keys audited by this auditor. + */ + unsigned int num_denom_keys; + + /** + * Array of length @a denom_keys with the denomination + * keys audited by this auditor. Note that the array + * elements point to the same locations as the entries + * in the key's main `denom_keys` array. + */ + struct TALER_MINT_DenomPublicKey *const*denom_keys; +}; + + + /** * Information about keys from the mint. */ diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h index eebddd2dd..4d7e83ec5 100644 --- a/src/include/taler_signatures.h +++ b/src/include/taler_signatures.h @@ -608,8 +608,9 @@ struct TALER_DenominationKeyValidityPS /** - * @brief Information about a denomination key. Denomination keys - * are used to sign coins of a certain value into existence. + * @brief Information signed by an auditor affirming + * the master public key and the denomination keys + * of a mint. */ struct TALER_MintKeyValidityPS {