diff options
author | Özgür Kesim <oec-taler@kesim.org> | 2021-10-17 13:15:36 +0200 |
---|---|---|
committer | Özgür Kesim <oec-taler@kesim.org> | 2021-10-17 13:15:36 +0200 |
commit | 94ae5e5f695d1e6e9e586dd49c34feded7d4510a (patch) | |
tree | 3917afa15bc3c02d135a8a28c55b2ff5296f57f8 | |
parent | 400e586cba631ef54d064c16e9e1f627b77e5e03 (diff) | |
download | docs-94ae5e5f695d1e6e9e586dd49c34feded7d4510a.tar.gz docs-94ae5e5f695d1e6e9e586dd49c34feded7d4510a.tar.bz2 docs-94ae5e5f695d1e6e9e586dd49c34feded7d4510a.zip |
clarify usage of coins without age restrictions
-rw-r--r-- | design-documents/024-age-restriction.rst | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/design-documents/024-age-restriction.rst b/design-documents/024-age-restriction.rst index 48a258d..d9775ea 100644 --- a/design-documents/024-age-restriction.rst +++ b/design-documents/024-age-restriction.rst @@ -396,23 +396,26 @@ Making the payment If the ``ContractTerms`` had a non-zero value in field ``required_minimum_age``, the wallet has to provide evidence of that minimum -age +age by -#. by using coins which are of denominations that have age support enabled +#. *either* using coins which are of denominations that have support for age + restriction enabled -#. *and* ―for each coin― it has the right private key of the restricted age - commitment to the age group into which the required minimum age falls (i.e. - a non-empty entry at the right index in vector of EdDSA keys, see above). + #. and then ―for each such coin― it has the right private key of the + restricted age commitment to the age group into which the required + minimum age falls (i.e. a non-empty entry at the right index in + vector of EdDSA keys, see above). -#. and signs the required minimum age with each coin's private key - corresponding to the age group, + #. and signs the required minimum age with each coin's private key + corresponding to the age group, -#. and sends ―for each coin― the complete age commitment and the signature to - the merchant. + #. and sends ―for each coin― the complete age commitment and the signature + to the merchant. +#. *or* using coins which are of denominations that had *no* age support enabled. -For doing so, the object ``CoinPaySig`` used within a ``PayRequest`` during a -POST to ``[/instances/$INSTANCE]/orders/$ORDER_ID/pay`` is extended as follows: +The object ``CoinPaySig`` used within a ``PayRequest`` during a POST to +``[/instances/$INSTANCE]/orders/$ORDER_ID/pay`` is extended as follows: .. ts:def:: CoinPaySig @@ -447,7 +450,11 @@ The merchant can now verify #. the minimum age requirement by checking the signature in ``minimum_age_sig`` against the public key ``age_commitment[k]`` of the corresponding age group, say, ``k``. (The minimum age must fall into the age group at index ``k`` as - defined by the exchange) + defined by the exchange). + +**Note**: This applies only to coins for denominations that have support for +age restriction. Denominations *without* support for age restriction *always* +fullfill any minimum age requirement. |