taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

post-management-keys.rst (1564B)


      1 .. http:post:: /management/keys
      2 
      3   Provide master signatures for future public keys to be used by the exchange.
      4   Only to be used by the exchange's offline key management team. Not useful
      5   for anyone else.
      6 
      7   **Request:**
      8 
      9   The request body must be a `MasterSignatures` object.
     10 
     11   **Response:**
     12 
     13   :http:statuscode:`204 No content`:
     14     The request was successfully processed.
     15   :http:statuscode:`403 Forbidden`:
     16     A provided signature is invalid.
     17   :http:statuscode:`404 Not found`:
     18     One of the keys for which a signature was provided is unknown to the exchange.
     19 
     20   **Details:**
     21 
     22   .. ts:def:: MasterSignatures
     23 
     24     interface MasterSignatures {
     25 
     26       // Provided master signatures for future denomination keys.
     27       denom_sigs: DenomSignature[];
     28 
     29       // Provided master signatures for future online signing keys.
     30       signkey_sigs: SignKeySignature[];
     31 
     32     }
     33 
     34   .. ts:def:: DenomSignature
     35 
     36     interface DenomSignature {
     37 
     38       // Hash of the public key of the denomination.
     39       h_denom_pub: HashCode;
     40 
     41       // Signature over `TALER_DenominationKeyValidityPS`.
     42       // Must have purpose ``TALER_SIGNATURE_MASTER_DENOMINATION_KEY_VALIDITY``
     43       master_sig: EddsaSignature;
     44 
     45     }
     46 
     47   .. ts:def:: SignKeySignature
     48 
     49     interface SignKeySignature {
     50       // The actual exchange's EdDSA signing public key.
     51       key: EddsaPublicKey;
     52 
     53       // Signature by the exchange master key over
     54       // `TALER_ExchangeSigningKeyValidityPS`.
     55       // Must have purpose ``TALER_SIGNATURE_MASTER_SIGNING_KEY_VALIDITY``.
     56       master_sig: EddsaSignature;
     57 
     58     }