Commit Graph

43 Commits

Author SHA1 Message Date
7624db4efd
-refactor TALER_AgeMask.mask -> TALER_AgeMask.bits
also: fix off-by-one in TALER_age_restriction_commit
2022-03-02 10:59:42 +01:00
8bdf6ab19d
[age restriction] progress 14/n - withdraw and deposit
Age restriction support for
  - withdraw is done and tested
  - deposit is done and tested

TODOs:
  - melt/refresh/reveal
  - link

------

Added functions
 - TALER_age_restriction_commit
 - TALER_age_commitment_derive
 - TALER_age_commitment_hash
 - TALER_age_restriction_commitment_free_inside
 - Hash of age commitment passed around API boundaries

Exchangedb adjustments for denominations
 - all prepared statements re: denominations now handle age_mask
 - signature parameters adjusted

Hash and signature verification of /keys adjusted
 - 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

Tests for withdraw with age restriction added
 - TALER_EXCHANGE_DenomPublickey now carries age_mask
 - TALER_TESTING_cmd_withdraw_amount* takes age parameter
 - TALER_TESTING_find_pk takes boolean age_restricted
 - WithdrawState carries age_commitment and its hash
 - withdraw_run derives new age commitment, if applicable
 - Added age parameter to testing (13 as example)

Various Fixes and changes
 - Fixes of post handler for /management/extensions
 - Fixes for offline tool extensions signing
 - Slight refactoring of extensions
 - Age restriction extension simplified
   - config is now global to extension
   - added global TEH_age_restriction_enabled and TEH_age_mask in
     taler-exchange-httpd
   - helper functions and macros introduced
2022-02-16 22:01:05 +01:00
Christian Grothoff
db8cdc8c4c
-remove addessed documentation FIXMEs 2022-02-12 12:10:33 +01:00
Christian Grothoff
4472cbaf9d
-simplify structures 2022-02-11 11:55:59 +01:00
Christian Grothoff
025922950d
pass exchange values to /recoup 2022-02-09 22:02:29 +01:00
Gian Demarmels
a67786078b
resolves merge conflicts 2022-02-04 16:50:32 +01:00
Lucien Heuzeveldt
8d85c8b5b6
implement feedback 2022-02-04 15:37:30 +01:00
Lucien Heuzeveldt
daa7fdcfb1
implement spend 2022-02-04 15:36:10 +01:00
Lucien Heuzeveldt
9074e66ebc
implement withdraw (nonce reuse check missing) 2022-02-04 15:35:31 +01:00
Lucien Heuzeveldt
82405b0ce5
implement CS key handling and csr endpoint 2022-02-04 15:34:19 +01:00
Lucien Heuzeveldt
3225566c93
implement exchange_api_csr 2022-02-04 15:33:07 +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
ef4238874f
[age restriction] progress 9/n
More worke towards support for extensions and age restriction:

- taler-exchange-httpd_management_extensions.c almost completed
  - handling of request implemented
  - stub "set_extensions" for database transaction added

- utility functions added
  - TALER_exchange_offline_extension_agemask_{sign,verify}
  - TALER_agemask_parse_json
2021-12-27 23:24:48 +01:00
Christian Grothoff
1a1fafbd43
introducing GNUNET_TIME_Timestamp, recoup now with amounts 2021-12-14 16:04:40 +01:00
Christian Grothoff
bdaaa0f6cb
-fix misc. compiler warnings 2021-11-19 10:57:27 +01:00
Christian Grothoff
ee687c87ed
-better types 2021-11-15 10:53:33 +01:00
7c510388b9
age restriction progress 2/n
Signed-off-by: Özgür Kesim <oec-taler@kesim.org>
2021-11-10 17:27:49 +01:00
Christian Grothoff
3eae999efc
distinguish between blind and non-blind denomination signatures 2021-10-31 17:56:56 +01:00
Christian Grothoff
77142acbe8
fix lib/ FTBFS 2021-10-27 13:42:54 +02:00
Christian Grothoff
4d0102411f
work on FTBFS issues... 2021-10-27 09:23:12 +02:00
Christian Grothoff
42decef957
fix #6939 in exchange 2021-07-24 09:00:35 +02:00
Christian Grothoff
5cec88e87e
-fix segv 2021-07-18 18:59:11 +02:00
Christian Grothoff
da15a59717
omit charset from en_US.UTF-8 env variable when picking i18n strings, handle no preference case 2021-04-05 19:29:00 +02:00
Christian Grothoff
f36fe8c22c
omit charset from en_US.UTF-8 env variable when picking i18n strings 2021-04-05 19:27:53 +02:00
Christian Grothoff
63c6654c0f
omit charset from en_US.UTF-8 env variable when picking i18n strings 2021-04-05 19:27:19 +02:00
Christian Grothoff
004a7c9d54
implement convenience function to extract i18n values from JSON (for #6749) 2021-04-05 18:40:23 +02:00
Christian Grothoff
99fff4f98f
implement convenience function to extract i18n values from JSON (for #6749) 2021-04-05 18:33:01 +02:00
Christian Grothoff
575c10027b
also offer API for receiving rounded relative time via JSON 2020-07-05 22:00:01 +02:00
Christian Grothoff
54e63f01df
fix #6408: make sure all timestamps are always rounded when they arrive over JSON, or 400 the requester; similarly don't tolerate anything else as client 2020-07-05 21:54:11 +02:00
Christian Grothoff
8ce6d32f63
beautification 2020-01-20 01:23:02 +01:00
Christian Grothoff
f676be5c53
copyfix 2020-01-16 08:50:06 +01:00
Christian Grothoff
7c6853d830
simplify amount logic 2020-01-16 08:49:26 +01:00
Christian Grothoff
385b3e77df
tighten formatting rules 2019-10-31 12:59:50 +01:00
Christian Grothoff
5fa4a0e7e1
fix warnings 2019-09-05 11:23:24 +02:00
Florian Dold
eb55997084
re-format code 2019-08-25 16:18:24 +02:00
Florian Dold
d126b16624
serialize amounts as string instead of an object 2018-01-29 19:26:10 +01:00
Christian Grothoff
c5f9c0ca88
work on making auditor reports nicer (#4962) 2017-11-06 00:03:08 +01:00
Christian Grothoff
1da03b95eb
fix indentation 2017-10-06 19:54:48 +02:00
Christian Grothoff
a5fedfeeb8
remove redundant check 2017-05-09 13:26:34 +02:00
Christian Grothoff
5e8ef38680
fixing #4980 2017-04-18 21:05:27 +02:00
Marcello Stanisci
59c6856284 fixing #4594 2016-07-07 17:55:25 +02:00
Christian Grothoff
737e3f4bf6 refactor to eliminate duplicated JSON parsing logic (#4150) 2016-03-19 19:16:35 +01:00
Christian Grothoff
0d1eced630 first refactoring of JSON logic to address #4150 and #4237 2016-03-19 15:23:11 +01:00