aboutsummaryrefslogtreecommitdiff
path: root/src/util/wallet_signatures.c
AgeCommit message (Collapse)Author
2022-01-11The 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-eliminate redundant hash operation on link signaturesChristian Grothoff
2021-12-25protocol 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-25deduplicate melt signing logic, remove coin_pub from data being signed overChristian Grothoff
2021-12-16-fix recoup uglinessChristian Grothoff
2021-12-14introducing GNUNET_TIME_Timestamp, recoup now with amountsChristian Grothoff
2021-11-06include h_extensions in deposit confirmationChristian Grothoff
2021-11-06add extension hashingChristian Grothoff
2021-11-06introduce TALER_wallet_deposit_verifyChristian Grothoff
2021-10-27fix remaining libtalerutil FTBFS issuesChristian Grothoff
2021-01-10remove redundant old_coin_pub from link dataChristian Grothoff
2021-01-10fix major bug with SQL statement missing ORDER BY freshcoin_index resulting ↵Christian Grothoff
in possible link failures (but usually lucky with old DB schema)