Özgür Kesim
8bdf6ab19d
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
202 lines
4.4 KiB
Plaintext
202 lines
4.4 KiB
Plaintext
# This file is in the public domain.
|
|
#
|
|
|
|
[PATHS]
|
|
# Persistent data storage for the testcase
|
|
TALER_TEST_HOME = test_exchange_api_home/
|
|
TALER_RUNTIME_DIR = ${TMPDIR:-${TMP:-/tmp}}/${USER:-}/taler-system-runtime/
|
|
|
|
[taler-exchange-secmod-rsa]
|
|
# Reduce from 1 year to speed up test
|
|
LOOKAHEAD_SIGN = 24 days
|
|
|
|
[taler-exchange-secmod-eddsa]
|
|
# Reduce from 1 year to speed up test
|
|
LOOKAHEAD_SIGN = 24 days
|
|
# Reduce from 12 weeks to ensure we have multiple
|
|
DURATION = 14 days
|
|
|
|
[taler]
|
|
# Currency supported by the exchange (can only be one)
|
|
CURRENCY = EUR
|
|
CURRENCY_ROUND_UNIT = EUR:0.01
|
|
|
|
[auditor]
|
|
BASE_URL = "http://localhost:8083/"
|
|
|
|
# HTTP port the auditor listens to
|
|
PORT = 8083
|
|
|
|
[exchange]
|
|
|
|
TERMS_ETAG = 0
|
|
PRIVACY_ETAG = 0
|
|
|
|
# HTTP port the exchange listens to
|
|
PORT = 8081
|
|
|
|
# Master public key used to sign the exchange's various keys
|
|
MASTER_PUBLIC_KEY = 98NJW3CQHZQGQXTY3K85K531XKPAPAVV4Q5V8PYYRR00NJGZWNVG
|
|
|
|
# How to access our database
|
|
DB = postgres
|
|
|
|
# Base URL of the exchange. Must be set to a URL where the
|
|
# exchange (or the twister) is actually listening.
|
|
BASE_URL = "http://localhost:8081/"
|
|
|
|
[exchangedb-postgres]
|
|
CONFIG = "postgres:///talercheck"
|
|
|
|
[auditordb-postgres]
|
|
CONFIG = "postgres:///talercheck"
|
|
|
|
# Sections starting with "exchange-account-" configure the bank accounts
|
|
# of the exchange. The "URL" specifies the account in
|
|
# payto://-format.
|
|
[exchange-account-1]
|
|
# What is the URL of our account?
|
|
PAYTO_URI = "payto://x-taler-bank/localhost/42"
|
|
# ENABLE_CREDIT = YES
|
|
|
|
[exchange-accountcredentials-1]
|
|
WIRE_GATEWAY_URL = "http://localhost:9081/42/"
|
|
|
|
[exchange-account-2]
|
|
# What is the bank account (with the "Taler Bank" demo system)?
|
|
PAYTO_URI = "payto://x-taler-bank/localhost/2"
|
|
ENABLE_DEBIT = YES
|
|
ENABLE_CREDIT = YES
|
|
|
|
[exchange-accountcredentials-2]
|
|
WIRE_GATEWAY_AUTH_METHOD = basic
|
|
USERNAME = Exchange
|
|
PASSWORD = x
|
|
WIRE_GATEWAY_URL = "http://localhost:9081/2/"
|
|
|
|
[bank]
|
|
HTTP_PORT = 9081
|
|
|
|
# Enabled extensions
|
|
[exchange-extension-age_restriction]
|
|
ENABLED = YES
|
|
# default age groups:
|
|
#AGE_GROUPS = "8:10:12:14:16:18:21"
|
|
|
|
# Sections starting with "coin_" specify which denominations
|
|
# the exchange should support (and their respective fee structure)
|
|
[coin_eur_ct_1]
|
|
value = EUR:0.01
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.00
|
|
fee_deposit = EUR:0.00
|
|
fee_refresh = EUR:0.01
|
|
fee_refund = EUR:0.01
|
|
CIPHER = CS
|
|
|
|
[coin_eur_ct_10]
|
|
value = EUR:0.10
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.01
|
|
fee_deposit = EUR:0.01
|
|
fee_refresh = EUR:0.03
|
|
fee_refund = EUR:0.01
|
|
CIPHER = CS
|
|
|
|
[coin_eur_1]
|
|
value = EUR:1
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.01
|
|
fee_deposit = EUR:0.01
|
|
fee_refresh = EUR:0.03
|
|
fee_refund = EUR:0.01
|
|
CIPHER = CS
|
|
|
|
[coin_eur_5]
|
|
value = EUR:5
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.01
|
|
fee_deposit = EUR:0.01
|
|
fee_refresh = EUR:0.03
|
|
fee_refund = EUR:0.01
|
|
CIPHER = CS
|
|
|
|
[coin_eur_10]
|
|
value = EUR:10
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.01
|
|
fee_deposit = EUR:0.01
|
|
fee_refresh = EUR:0.03
|
|
fee_refund = EUR:0.01
|
|
CIPHER = CS
|
|
|
|
[coin_eur_ct_1_age_restricted]
|
|
value = EUR:0.01
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.00
|
|
fee_deposit = EUR:0.00
|
|
fee_refresh = EUR:0.01
|
|
fee_refund = EUR:0.01
|
|
age_restricted = YES
|
|
CIPHER = CS
|
|
|
|
[coin_eur_ct_10_age_restricted]
|
|
value = EUR:0.10
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.01
|
|
fee_deposit = EUR:0.01
|
|
fee_refresh = EUR:0.03
|
|
fee_refund = EUR:0.01
|
|
age_restricted = YES
|
|
CIPHER = CS
|
|
|
|
[coin_eur_1_age_restricted]
|
|
value = EUR:1
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.01
|
|
fee_deposit = EUR:0.01
|
|
fee_refresh = EUR:0.03
|
|
fee_refund = EUR:0.01
|
|
age_restricted = YES
|
|
CIPHER = CS
|
|
|
|
[coin_eur_5_age_restricted]
|
|
value = EUR:5
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.01
|
|
fee_deposit = EUR:0.01
|
|
fee_refresh = EUR:0.03
|
|
fee_refund = EUR:0.01
|
|
age_restricted = YES
|
|
CIPHER = CS
|
|
|
|
[coin_eur_10_age_restricted]
|
|
value = EUR:10
|
|
duration_withdraw = 7 days
|
|
duration_spend = 2 years
|
|
duration_legal = 3 years
|
|
fee_withdraw = EUR:0.01
|
|
fee_deposit = EUR:0.01
|
|
fee_refresh = EUR:0.03
|
|
fee_refund = EUR:0.01
|
|
age_restricted = YES
|
|
CIPHER = CS
|