donau_signatures.h (2056B)
1 /* 2 This file is part of DONAU 3 Copyright (C) 2014-2022 Donau Systems SA 4 5 DONAU is free software; you can redistribute it and/or modify it under the 6 terms of the GNU General Public License as published by the Free Software 7 Foundation; either version 3, or (at your option) any later version. 8 9 DONAU is distributed in the hope that it will be useful, but WITHOUT ANY 10 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 11 A PARTICULAR PURPOSE. See the GNU General Public License for more details. 12 13 You should have received a copy of the GNU General Public License along with 14 DONAU; see the file COPYING. If not, see <http://www.gnu.org/licenses/> 15 */ 16 /** 17 * @file donau_signatures.h 18 * @brief message formats and signature constants used to define 19 * the binary formats of signatures in Donau 20 * 21 * This file should define the constants and C structs that one needs 22 * to know to implement Donau clients (wallets or merchants or 23 * auditor) that need to produce or verify Donau signatures. 24 */ 25 #ifndef DONAU_SIGNATURES_H 26 #define DONAU_SIGNATURES_H 27 28 29 /** 30 * The signature is done by the Donau. The Donau signes over the total amount of the corresponding year, the corresponding year and the donation identifier of a specific donor. The statement confirms that the donor made this total in donations for the given year. 31 */ 32 #define DONAU_SIGNATURE_DONAU_DONATION_STATEMENT 1500 33 34 35 /** 36 * The signature is made by a charity and shows that the charity is in agreement with the donation request which it sends to the Donau. The charity signs over all blinded identifiers and key pairs which it has received from the donor. The signature affirms that the charity wants the donation receipts to be issued on its behalf. 37 */ 38 #define DONAU_SIGNATURE_CHARITY_DONATION_CONFIRMATION 1501 39 40 41 /** 42 * The signature is made by a charity to request information about its status from a Donau. It is not over anything in particular and is just there for access control. 43 */ 44 #define DONAU_SIGNATURE_CHARITY_GET_INFO 1502 45 46 47 #endif