Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-12-29 | expand DB API with AML functions, fix purse refund calculations in ↵ | Christian Grothoff | |
libtalerexchange | |||
2022-11-04 | policy extensions and age restriction refactoring | Özgür Kesim | |
- refactoring of extension-plugin-mechanism - refactoring of age restriction extension - added policy extensions plugin plumbing - added DB schema and api - policy_details - policy_fulfillments | |||
2022-10-22 | -remove bogus tests | Christian Grothoff | |
2022-10-15 | handle purse-refund and reserve-open-deposit events in coin history in ↵ | Christian Grothoff | |
libtalerexchange | |||
2022-10-15 | handle reserve open/close responses in reserve history in libtalerexchange | Christian Grothoff | |
2022-08-11 | major rework of the KYC logic, making it more configurable, not complete, ↵ | Christian Grothoff | |
but tests pass again | |||
2022-07-05 | -annotate bugs | Christian Grothoff | |
2022-07-01 | -exchange_api_batch_deposit.c compiles | Christian Grothoff | |
2022-06-28 | -fix issue with missing signature over denomination and age restriction hash ↵ | Christian Grothoff | |
in purse deposit | |||
2022-06-07 | -more minor bugfixes | Christian Grothoff | |
2022-06-05 | no purse fee if purse is successfully merged | Christian Grothoff | |
2022-06-05 | complete P2P/W2W conflict handling, deduplicate code across handlers | Christian Grothoff | |
2022-06-05 | -work on error proof response checking for p2p payments | Christian Grothoff | |
2022-06-04 | -more work on p2p payments and tests thereof | Christian Grothoff | |
2022-06-04 | handle case where purse expiration refunded the coin's deposited amount | Christian Grothoff | |
2022-06-02 | -work on P2P payment details | Christian Grothoff | |
2022-05-30 | -fix reserve history, include in tests | Christian Grothoff | |
2022-05-29 | add batch signing support to taler-exchange-secmod-rsa | Christian Grothoff | |
2022-05-23 | handle purse deposit client-side | Christian Grothoff | |
2022-05-23 | -misc fixes to reserve history | Christian Grothoff | |
2022-05-23 | -deduplicate and expand reserve history validation logic in testing library | Christian Grothoff | |
2022-05-23 | -add missing break, clean up fee logic | Christian Grothoff | |
2022-05-23 | -refactor coin history checker | Christian Grothoff | |
2022-05-22 | -complete extended reserve history signature check logic to libtalerexchange | Christian Grothoff | |
2022-05-22 | -towards client-side support for merge and history requests in reserve history | Christian Grothoff | |
2022-05-22 | -more work on reverse history | Christian Grothoff | |
2022-04-05 | adapt to latest GNUnet API: GNUNET_JSON_spec_mark_optional() changed | Christian Grothoff | |
2022-03-29 | centralize exchange online signature logic | Christian Grothoff | |
2022-03-21 | add logic to check timestamp, revise history balance calculation logic in client | Christian Grothoff | |
2022-03-20 | towards support for new reserve history/status APIs | Christian Grothoff | |
2022-02-22 | double melt test no works with age restriction | Özgür Kesim | |
- added missing field h_age_commitment in exchange's error response - slight refactoring | |||
2022-02-22 | [age restriction] progress 16/n - refresh/reveal/link tests | Özgür Kesim | |
Age restriction works now with withdraw, melt/refresh/reveal and link, including tests. However, there is still a problem with the tests: The melting operation "refresh-melt-failing-age" that should fail (because of conflict), but currently fails for other reasons. I decided to disable that particular test (and the next) and submit the patch I have so far. | |||
2022-02-21 | -big renaming of structs for consistent naming with P suffix | Christian Grothoff | |
2022-02-17 | -fix CS nonce reuse check logic | Christian Grothoff | |
2022-02-16 | [age restriction] progress 14/n - withdraw and deposit | Özgür Kesim | |
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-12 | -address misc. fixmes | Christian Grothoff | |
2022-01-11 | The current recoup API is broken. I guess this is another example where ↵ | Christian Grothoff | |
"trivial" API changes turn out to have (multiple!) unexpected consequences. The current "/recoup" API does not have clear idempotency semantics, as we've discussed on the phone. This is already bad by itself, as it makes it hard to write down what the API does other than "whatever the implementation does". However, it actually breaks correctness in this (admittedly kinda contrived, but not impossible) case: Say that we have a coin A obtained via withdrawal and a coin B obtained via refreshing coin A. Now the denominations of A gets revoked.. The wallet does a recoup of A for EUR:1. Now the denomination of B also gets revoked. The wallet recoups B (incidentally also for EUR:1) and now A can be recouped again for EUR:1. But now the exchange is in a state where it will refuse a legitimate recoup request for A because the detection for an idempotent request kicks in. This is IMHO bad API design, and the exchange should simply always recoup the maximum amount. Furthermore, we usually follow the principle of "API calls that take up DB space are paid". With the current recoup API, I can do many tiny recoup requests which the exchange then has to store, right? I guess it would not be a big change to remove the "amount" value from the recoup/recoup-refresh request bodies, right? - Florian | |||
2021-12-25 | v12: also do not sign over merchant_pub in REFUND signature, centralize logic | Christian Grothoff | |
2021-12-25 | protocol v12 changes (/recoup split, signature changes) plus database ↵ | Christian Grothoff | |
sharding plus O(n^2)=>O(n) worst-case complexity reduction on coin balance checks | |||
2021-12-16 | -fix recoup ugliness | Christian Grothoff | |
2021-12-14 | introducing GNUNET_TIME_Timestamp, recoup now with amounts | Christian Grothoff | |
2021-12-11 | fix #7123 | Christian Grothoff | |
2021-12-06 | -fix balance calculation | Christian Grothoff | |
2021-12-05 | -add FIXMEs | Christian Grothoff | |
2021-11-19 | -fix leaks and compiler warnings | Christian Grothoff | |
2021-11-06 | introduce TALER_wallet_deposit_verify | Christian Grothoff | |
2021-10-27 | fix lib/ FTBFS | Christian Grothoff | |
2021-10-27 | -work on FTBFS; | Christian Grothoff | |
2021-10-27 | -fix misc FTBFS | Christian Grothoff | |
2021-10-17 | implement /kyc-wallet in libtalerexchange | Christian Grothoff | |