Christian Grothoff
1a3793cb1c
-regenerate DBs
2022-08-14 19:10:19 +02:00
Christian Grothoff
f5b99b5282
-work on new KYC logic: remove old DB code
2022-08-14 19:03:30 +02:00
Christian Grothoff
3e6e873367
-start with DB cleanup
2022-08-14 18:59:48 +02:00
Christian Grothoff
74ba46db39
-work on new KYC logic: tests pass again
2022-08-14 18:04:09 +02:00
Christian Grothoff
1009084e94
major rework of the KYC logic, making it more configurable, not complete, but tests pass again
2022-08-11 23:35:33 +02:00
Christian Grothoff
3f99e4f3f8
-implement new kyc-webhook endpoint
2022-08-07 15:35:13 +02:00
Christian Grothoff
b533026632
adding kyclogic plugin template
2022-08-05 15:08:47 +02:00
Christian Grothoff
73b099cfd5
-add new KYC amount iteration DB functions
2022-08-05 14:22:08 +02:00
Christian Grothoff
4724867794
-first pass at new KYC DB API
2022-08-05 13:32:27 +02:00
Christian Grothoff
61f39f0941
-more general KYC logic
2022-08-04 11:36:05 +02:00
Christian Grothoff
31bfe5234e
-update auditor schema in preparation to fix #4960
2022-07-31 21:54:29 +02:00
Christian Grothoff
150917694a
finish taler-exchange-drain implementation
2022-07-30 22:54:21 +02:00
Christian Grothoff
544fbd4fe9
-doxygen
2022-07-30 11:04:45 +02:00
Christian Grothoff
2b160c1569
-fix typos
2022-07-30 10:36:19 +02:00
Christian Grothoff
033a5dc93b
implement taler-auditor-sync support for profit_drains table ( #4960 )
2022-07-30 10:29:24 +02:00
Christian Grothoff
75888adff2
setup drain_profits table ( #4960 )
2022-07-30 10:12:48 +02:00
Christian Grothoff
de83b055d5
-simplify table drop logic
2022-07-25 19:53:31 +02:00
Christian Grothoff
282bbb0b62
-fix typos
2022-07-06 23:08:53 +02:00
Christian Grothoff
36a8ecd4c4
-implemented bounded history for reserve status requests
2022-07-05 14:25:30 +02:00
Christian Grothoff
7201ce3166
-handle withdraw CS nonce reuse more nicely
2022-07-05 12:56:55 +02:00
Christian Grothoff
ad612623be
-run read-only transactions in proper read-only scope (at least some of them)
2022-07-05 12:13:58 +02:00
Christian Grothoff
9e5dc2a542
-remove dead argument
2022-07-05 11:50:20 +02:00
Christian Grothoff
615b4621e3
-implement DB logic for forcing reserve close
2022-07-04 23:40:49 +02:00
Christian Grothoff
ded7f9ca18
-fix issue with missing signature over denomination and age restriction hash in purse deposit
2022-06-28 20:25:45 +02:00
Christian Grothoff
7b62174d00
-fix typos
2022-06-26 17:09:30 +02:00
Christian Grothoff
fd9fc9f0cd
-fix misc doxygen warnings, code clean up
2022-06-26 17:08:17 +02:00
Christian Grothoff
bad572a010
-add missing checkpointing logic
2022-06-19 14:04:41 +02:00
Christian Grothoff
f6a7d4a1ed
-more DB logic for taler-helper-auditor-reserves
2022-06-15 22:31:44 +02:00
Christian Grothoff
eccf37e450
-more DB prep work towards reserve auditing with p2p payments
2022-06-15 20:49:39 +02:00
Christian Grothoff
963477e064
-fix comments
2022-06-14 15:57:48 +02:00
Christian Grothoff
58a0882909
-towards coin audits with purse deposits
2022-06-13 15:31:52 +02:00
Christian Grothoff
393ae7f9a3
-add dB logic for auditor iteration over purse deposits
2022-06-12 17:23:36 +02:00
Christian Grothoff
b9963f7525
complete P2P/W2W conflict handling, deduplicate code across handlers
2022-06-05 14:07:23 +02:00
Christian Grothoff
21a1c715ee
-refactor internal API to use new EncrptedContract struct where applicable
2022-06-05 00:36:19 +02:00
Christian Grothoff
a17781ba8d
-more work on p2p payments and tests thereof
2022-06-04 22:00:02 +02:00
Christian Grothoff
93943bdb5b
add KYC errors for p2p payments
2022-06-04 15:19:57 +02:00
Christian Grothoff
d04769b729
handle case where purse expiration refunded the coin's deposited amount
2022-06-04 14:04:27 +02:00
Christian Grothoff
04c32eafb9
-work on P2P payment details
2022-06-02 21:55:21 +02:00
Christian Grothoff
00c68e0a04
-work on SQL for P2P table replication
2022-06-01 23:03:49 +02:00
Christian Grothoff
300194f42a
-towards p2p auditor sync implementation: SQL still missing
2022-05-30 23:55:55 +02:00
Christian Grothoff
76b8a2a8de
include purse deposits in coin history
2022-05-23 16:02:55 +02:00
Christian Grothoff
3599ac0ac2
-complete extended reserve history signature check logic to libtalerexchange
2022-05-22 23:51:14 +02:00
Christian Grothoff
40daa209fb
-more work on reverse history
2022-05-22 18:21:15 +02:00
Christian Grothoff
8658ae03ca
-towards purse merge and history requests in reserve history (incomplete)
2022-05-22 16:58:48 +02:00
Christian Grothoff
4a5d71cca2
-implement reserve history DB logic
2022-05-22 16:18:09 +02:00
Christian Grothoff
02716c4084
-add skeleton logic for purse expiration
2022-05-16 15:43:40 +02:00
Christian Grothoff
35b4a51e14
combine auto-commited transactions in refresh/reveal into one big transaction
2022-05-12 13:31:15 +02:00
Christian Grothoff
60c08dccec
expand P2P query logic
2022-05-08 21:04:55 +02:00
Christian Grothoff
d3a6388199
pass purse_fee to determine how purse creation is paid for
2022-05-08 11:37:37 +02:00
Christian Grothoff
7718cd4153
skeleton for batch withdraw logic (not finished)
2022-05-01 12:45:12 +02:00
Christian Grothoff
932cef3d8c
-complete purses_get draft implementation
2022-04-26 13:34:18 +02:00
Christian Grothoff
efb8c8037b
-implement purses get db sketch
2022-04-26 13:24:51 +02:00
Christian Grothoff
b4965db0d2
-fix fieldnames, regenerated DBs
2022-04-24 20:49:11 +02:00
Christian Grothoff
132359a444
add purses-get to build
2022-04-23 12:34:48 +02:00
Christian Grothoff
a13f90a15e
add wirewatch shutdown shard cleanup logic
2022-04-14 00:00:50 +02:00
Christian Grothoff
3893afa49c
-implementing purse merge DB logic
2022-04-12 11:58:21 +02:00
Christian Grothoff
7a1dcc52ca
-towards new GET /contracts/$C_PUB hander
2022-04-11 16:48:30 +02:00
Christian Grothoff
f3a4b00907
adapt to latest GNUnet API: GNUNET_JSON_spec_mark_optional() changed
2022-04-05 17:15:50 +02:00
Christian Grothoff
7191641406
implement more DB functions
2022-04-04 20:42:26 +02:00
Christian Grothoff
831e32b7ad
-add logic for econtract_sig signatures
2022-04-04 07:29:50 +02:00
Marco Boss
ae75ff2cb4
extend sharding logic that shard nodes can be initialied and dropped
2022-04-02 18:43:49 +02:00
Marco Boss
1b76ba5e9a
Include sharding sql logic
2022-04-02 09:28:25 +02:00
Christian Grothoff
caf66486e7
work on purse creation logic
2022-04-01 16:39:07 +02:00
Marco Boss
75c1e10a67
add shard init for shard node
2022-03-31 21:31:07 +02:00
Marco Boss
0cf9a9984c
add sharding logic
2022-03-31 17:00:44 +02:00
Christian Grothoff
747ae5ef09
privatize more signature structs, simplify code
2022-03-31 12:37:39 +02:00
Christian Grothoff
1f1d675f3d
-remove tiny field, no longer needed
2022-03-27 14:34:44 +02:00
Christian Grothoff
b9a9af3a59
new aggregator mega transaction logic
2022-03-27 13:48:25 +02:00
Christian Grothoff
d0a69da895
towards removing tiny bit
2022-03-27 10:32:28 +02:00
Christian Grothoff
098d572471
change sharding strategy for refund table
2022-03-26 10:47:10 +01:00
Christian Grothoff
b856d56d95
rework deposits sharding, towards making aggregator faster (not necessarily done)
2022-03-24 17:33:29 +01:00
Christian Grothoff
f091808425
more skeleton logic for P2P operations on DB
2022-03-23 12:25:45 +01:00
Christian Grothoff
41399bc224
revise P2P signatures and signing schema to address recently discovered design concern resulting in the split of the purse key into purse-contract and purse-merge keys
2022-03-23 06:54:43 +01:00
Christian Grothoff
1f86b02ffa
first rough-cut implementation of /reserves//history endpoint
2022-03-21 03:04:47 +01:00
Christian Grothoff
f5f15e6531
first rough-cut implementation of POST /reserves//status
2022-03-21 02:39:36 +01:00
Christian Grothoff
dee45bf022
return new global fees from /keys
2022-03-20 09:44:42 +01:00
Christian Grothoff
badfde8962
add deposits_by_coin table to speed-up certain queries (in theory)
2022-03-18 15:47:25 +01:00
Christian Grothoff
23af6c3c41
change table structures again to shard better by coin_pub and not use known_coin_id so much
2022-03-18 01:57:39 +01:00
Christian Grothoff
bab36a2ac8
-remove dead field, return h_commitment_age to auditor
2022-03-17 14:45:12 +01:00
Christian Grothoff
a080f11890
add more logic for new global fees
2022-03-05 17:14:32 +01:00
Christian Grothoff
57470e4c08
-more work on global_fees
2022-03-05 16:16:38 +01:00
Christian Grothoff
7ff58c3d8f
refactor /wire to include logic to return the wad fee (for W2W payments)
2022-03-05 14:36:55 +01:00
8a906bf96c
sync tables "extensions" and "extension_details" with auditor
2022-03-05 13:39:01 +01:00
Christian Grothoff
1643b745af
use 32 byte hash for hpayto, use that for joins on queries to better align queries with partitions
2022-03-03 23:52:08 +01:00
Christian Grothoff
f951cdef8c
include shard when marking deposits tiny/done to make better use of partitions/shards
2022-03-03 19:39:25 +01:00
Marco Boss
7f30609ff0
use plain uint32_t
2022-03-02 17:22:43 +01:00
Marco Boss
cab654237f
clearer doc
2022-03-02 11:28:28 +01:00
Marco Boss
2abe9bf6d7
include partitioning logic in dbinit
2022-03-02 10:50:51 +01:00
Christian Grothoff
3d4e580699
work on auditor-sync update to latest DB
2022-02-28 22:41:24 +01:00
Christian Grothoff
ee79f31275
-work on test_sync.sh, incomplete
2022-02-28 22:41:24 +01:00
Christian Grothoff
23bc09fe3c
get test-auditor and #7181 to pass
2022-02-28 20:37:19 +01:00
7910ca183f
double melt test no works with age restriction
...
- added missing field h_age_commitment in exchange's error response
- slight refactoring
2022-02-22 18:35:10 +01:00
26158fc725
[age restriction] progress 16/n - refresh/reveal/link tests
...
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-22 14:34:47 +01:00
Christian Grothoff
544ba42f44
-big renaming of structs for consistent naming with P suffix
2022-02-21 00:23:23 +01:00
71af4c539e
-reducing FIXMEs re: age restriction
...
- deposit info now carries h_age_commitment
- benchmark does age commitment, too
2022-02-18 02:07:38 +01:00
Christian Grothoff
a351bfc4b4
-fix CS nonce reuse check logic
2022-02-17 15:18:09 +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
ef938e0f7a
-correctly implement CS idempotency check on withdraw
2022-02-15 17:07:13 +01:00
Christian Grothoff
bd77bcb52d
-towards fixing the protocol
2022-02-14 23:02:25 +01:00
Christian Grothoff
bc14c215b3
-doxygen fixes
2022-02-12 11:12:33 +01:00