Commit Graph

132 Commits

Author SHA1 Message Date
a2b9f090a3
Fix logic in decode_keys_json re: age_restriction
The client now consumes denoms[] and age_restricted_denoms[],
unconditionally.
2022-02-08 11:12:31 +01:00
1b1a6c142a
[WIP] hash and signature verification of /keys works again
- Hashes of (normal) denominations and age-restricted denominations are
  calculated seperately
- The hash of the age-restricted ones will then be added to the other
  hash
- The total hash is signed/verified

So far: test_exchange_api runs, including withdraw_age!

However, test_auditor_api fails and another is in a endless loop!
2022-02-08 00:00:24 +01:00
632d17f642
[WIP] moving towards withdrawal with age restriction
Age_mask now taken into account when denominations are being setup.
However, tests fail, because denoms can't be found!?  Probably because
on initial generation of the denominations, the age mask is not setup,
yet, because age restriction hasn't been enabled yet!?
2022-02-07 18:39:58 +01:00
f8b1c3f8db
Debugging session of withdraw with age restriction 2022-02-07 09:06:51 +01:00
932dcde25c
Towards a complete test with age restriction
- substantial amount of fixes in various parts
- slight refactoring of extensions
- fixes of post handler for /management/extensions
- fixes for offline tool extensions signing

State:
- compiles, runs and tests succeed when age restriction is not enabled
- compiles, runs and tests fail, when age restriction is enabled
2022-02-06 19:57:29 +01:00
f48ba6f043
Added age parameter to testing (0 for now)
- TALER_EXCHANGE_DenomPublickey now carries age_mask
- TALER_TESTING_cmd_withdraw_amount* takes age parameter
- WithdrawState carries age_commitment and its hash
- withdraw_run derives new age commitment, if applicable
2022-02-06 12:50:57 +01:00
8684a9bfea
[age_restriction] progress 13/n
- major refactoring of extensions
  - extensions live now in a separate library, libtalerextensions
  - refactored all components using age_restriction accordingly
  - plumbing for plugin support for extensions roughly layed down
2022-01-23 01:36:21 +01:00
0b56de6c99
[age restriction] progress 12/n
- taler-offline-tool now handles extensions
  - command "extensions" added with subcommands "show" and "sign"
  - parses extensions from taler config
  - shows and signs of extensions and their configurations
  - creates signed set of configurations for upload
  - added test for retrieval of extension config

- simplified signature verification for extensions
  - remove per-extension signatures, also from DB schema
  - adjust prepared statements accordingly
  - adjust DB event handler for extensions
  - allow NULL for config for extension in DB schema
  - handler for /management/extensions adjusted to new datastructures

- changed test for TALER_denom_blind/TALER_denom_sign_blinded with and
  without TALER_AgeHash

- minor updates and various fixes
2022-01-21 15:41:02 +01:00
e30989c930
[age restriction] progress 11/n
Parse age restriction information from "/keys"
- parse "age_restriction" extension, extract mask for age groups
- parse denominations from "age_restricted_denoms", too, if available
2022-01-10 00:04:23 +01:00
Christian Grothoff
87376e02eb
protocol v12 changes (/recoup split, signature changes) plus database sharding plus O(n^2)=>O(n) worst-case complexity reduction on coin balance checks 2021-12-25 13:56:40 +01:00
Christian Grothoff
1a1fafbd43
introducing GNUNET_TIME_Timestamp, recoup now with amounts 2021-12-14 16:04:40 +01:00
Christian Grothoff
a25429cadd
fix #7123 2021-12-11 20:06:15 +01:00
Christian Grothoff
2e6e2387b8
logging 2021-12-08 14:53:22 +01:00
Christian Grothoff
32e185978f
tolerate missing 'Expire' header better 2021-12-08 14:33:13 +01:00
Christian Grothoff
f493122033
fix #7105 (for exchange) 2021-11-25 23:24:04 +01:00
Christian Grothoff
4599fc2d5e
protocol bump, ignore eintr 2021-11-23 21:39:26 +01:00
Christian Grothoff
bdaaa0f6cb
-fix misc. compiler warnings 2021-11-19 10:57:27 +01:00
Christian Grothoff
77142acbe8
fix lib/ FTBFS 2021-10-27 13:42:54 +02:00
Christian Grothoff
b148a5a81a
rename fest 2021-10-27 13:23:14 +02:00
Christian Grothoff
58ea04167c
-fix misc FTBFS 2021-10-27 09:23:13 +02:00
Christian Grothoff
464c1f806c
-more changes towards fixing FTBFS 2021-10-27 09:23:12 +02:00
Christian Grothoff
7ed66e1e2c
-fix null deref 2021-10-19 21:06:36 +02:00
Christian Grothoff
d1992e5983
new configuration option: wallet balance threshold 2021-10-16 19:24:08 +02:00
Christian Grothoff
8951abfc50
-finish implemnetation of /kyc-check client library 2021-10-10 17:18:24 +02:00
Christian Grothoff
7d809d1f4c
-even better 2021-08-07 16:33:33 +02:00
Christian Grothoff
3cdf7dfaaa
-use new GNUNET_TIME_relative_is_zero API 2021-08-07 16:31:33 +02:00
Christian Grothoff
1d54400a02
-more eliminations of json_pack 2021-07-31 20:27:16 +02:00
Christian Grothoff
42decef957
fix #6939 in exchange 2021-07-24 09:00:35 +02:00
Christian Grothoff
be62bc5734
-not a protocol violation, can happen if auditor signed denominations that are valid for deposit but not withdraw 2021-05-28 21:30:55 +02:00
Christian Grothoff
35ce352b16
deal more nicely with /keys failures where no JSON is returned 2021-05-27 11:19:56 +02:00
Christian Grothoff
453d122c30
do not repeatedly append the same auditor signature 2021-04-14 17:39:13 +02:00
Christian Grothoff
7c485a2153
fix overflow 2021-04-01 10:57:04 +02:00
Christian Grothoff
71f00b3764
improve version number format check 2021-03-13 23:03:06 +01:00
Christian Grothoff
d1c5337a88
improve version number format check 2021-03-13 23:02:46 +01:00
Christian Grothoff
ca5f0c4d6f
fix #6786: do not die on bogus URL 2021-03-05 21:41:55 +01:00
Sebastian
2ed7eb7a8b
free currency memory on free_key_data(), ref #6744 2021-02-16 11:20:42 -03:00
Christian Grothoff
e6c5262c9e
fix currency parsing in deserialization logic (resolves #6744) 2021-02-15 22:05:37 +01:00
Sebastian
c1a58ef343
added missing currency in ser/deser, see #6744 2021-02-15 17:03:44 -03:00
Christian Grothoff
2b35e3796f
strptime is locale-dependent, re-implement for C locale-only 2021-01-26 14:10:06 +01:00
Christian Grothoff
6cd6582a4f
improve logging 2021-01-26 12:38:54 +01:00
Christian Grothoff
c630487dfc
nah, also on internal server errors and anything I can imagine we should backoff, not just on timeout 2021-01-16 22:36:30 +01:00
Christian Grothoff
8c4bc1121a
remove dead field 2021-01-16 22:33:25 +01:00
8f887a215e
dynamic curl timeouts for /keys and /wire requests 2021-01-12 15:12:26 +01:00
Christian Grothoff
e50f85e6c3
bump protocol version 2021-01-01 15:50:58 +01:00
Christian Grothoff
95333b4223
only log with json_dumpf() if explicitly compiled via DEBUG #define 2020-12-20 20:05:48 +01:00
Christian Grothoff
4b9fb610d8
do not log error on MHD_HTTP_GONE status code, revocation is a legitimate reply 2020-12-20 20:03:59 +01:00
Christian Grothoff
699916056b
misc doxygen fixes 2020-12-20 17:10:09 +01:00
Christian Grothoff
8bed4152fe
allow empty signkeys array 2020-12-12 22:43:04 +01:00
Christian Grothoff
05f539c127
initialize master_pub field 2020-12-08 19:13:39 +01:00
Christian Grothoff
70b0839644
implement new taler-auditor-offline tool 2020-12-06 00:05:45 +01:00