lsd0009

LSD0009: The GNU Taler Protocol
Log | Files | Refs | README

commit e5df38663326b30598eacbfee76857c43992892f
parent 389c0ded4cb93c8d8df050216e0c45650cfabaff
Author: Mikolai Gütschow <mikolai.guetschow@tu-dresden.de>
Date:   Thu, 30 Apr 2026 17:47:27 +0200

test-vectors: generate skeleton

Diffstat:
Mdraft-guetschow-taler-protocol.md | 104++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
Mdraft-guetschow-taler-protocol.xml | 639+++++++++++++++++++++++++++++++++++++++++++++++--------------------------------
2 files changed, 475 insertions(+), 268 deletions(-)

diff --git a/draft-guetschow-taler-protocol.md b/draft-guetschow-taler-protocol.md @@ -1357,7 +1357,13 @@ if ⟨blind_sigᵢ⟩ returned: // todo -## Wallet-to-Wallet Payments {#w2w} +## Transfer of E-Cash {#w2w} + +// todo: introductory text + +Transactions in E-Cash between wallets. +Commonly referred to as peer-to-peer transactions. +In Taler, interaction with exchange, therefore called wallet-to-wallet transactions. ### Account Creation {#w2w-account} @@ -1386,12 +1392,98 @@ They are generated by going through the protocol operations in the following ord 1. Withdraw two coins `coin₀` and `coin₁` from a single `reserve` (cf. {{withdraw}}). 2. Pay for one `order` with the full value of `coin₀` and a partial value of `coin₁` (cf. {{payment}}). -3. Refresh the now-dirty `coin₁` to two new coins `coin₂` and `coin₃` (cf. {{refresh}}). -4. Regenerate `coin₂` and `coin₃` with the knowledge of `coin₁` (cf. {{link}}). -5. Obtain a partial refund for `coin₀` used in `order` (cf. {{refund}}). -6. Refresh the partially refunded `coin₀` into one new `coin₄` (cf. {{refresh}}). // todo: actually needed? +3. Obtain a partial refund for `coin₀` used to pay for the `order` (cf. {{refund}}). +4. Refresh the now-dirty `coin₁` to two new coins `coin₂` and `coin₃` (cf. {{refresh}}). +5. Regenerate `coin₂` and `coin₃` with the knowledge of `coin₁` (cf. {{link}}). +6. Create an `account` for w2w transfers (cf. {{w2w-account}}). +7. Send a payment to `account` with the full value of `coin₂`, obtaining `coin₅` (cf. {{w2w-push}}). +8. Request a payment to `account`, which is paid with the full value of `coin₅`, obtaining `coin₆` (cf. {{w2w-pull}}). +9. Recoup the value of `coin₆` obtained via withdrawal from `account` (cf. {{withdraw-recoup}}). +10. Recoup the value of `coin₃` obtained via refresh from `coin₁` (cf. {{refresh-recoup}}). + +The test vectors in this document have been generated by the GNU Taler reference implementation written in C. +All binary data is provided in hexadecimal notation. + +## Test Case 1 + +~~~ +denom₀.priv = XXX +denom₀.pub = XXX +denom₀.value = XXX +denom₀.fee_withdraw = XXX +denom₁.priv = XXX +denom₁.pub = XXX +denom₁.value = XXX +denom₁.fee_withdraw = XXX +~~~ + + +### Withdrawal {#tc1-withdraw} + +~~~ +(W1) reserve key generation (wallet) + +reserve.priv = XXX +reserve.pub = XXX +reserve.balance = XXX +~~~ + +~~~ +(W2) coin generation and blinding (wallet) + +batch_seed = XXX +coin_seed₀ = XXX +coin_seed₁ = XXX +blind_secret₀ = XXX +blind_secret₁ = XXX +coin₀.priv = XXX +coin₁.priv = XXX +coin₀.pub = XXX +coin₁.pub = XXX +h_denom₀ = XXX +h_denom₁ = XXX +planchet₀ = XXX +planchet₁ = XXX +h_planchet₀ = XXX +h_planchet₁ = XXX +msg = XXX +sig = XXX +~~~ + +~~~ +(E1) coin issuance and signing (exchange) + +total = XXX +blind_sig₀ = XXX +blind_sig₁ = XXX +~~~ + +~~~ +(W3) coin unblinding (wallet) + +coin₀.sig = XXX +coin₁.sig = XXX +~~~ + +### Payment and Deposit {#tc1-payment} + +### Refund {#tc1-refund} + +### Refresh {#tc1-refresh} + +### Link {#tc1-link} + +### Account Creation {#tc1-w2w-account} + +### Push Payment {#tc1-w2w-push} + +### Pull Payment {#tc1-w2w-pull} + +### Recoup Withdrawal {#tc1-withdraw-recoup} + +### Recoup Refresh {#tc1-refresh-recoup} -// todo: still missing: recoup and w2w transfers +## Test Case 2 # Change log diff --git a/draft-guetschow-taler-protocol.xml b/draft-guetschow-taler-protocol.xml @@ -1213,7 +1213,11 @@ if ⟨blind_sigᵢ⟩ returned: </section> </section> <section anchor="w2w"> - <name>Wallet-to-Wallet Payments</name> + <name>Transfer of E-Cash</name> + <t>// todo: introductory text</t> + <t>Transactions in E-Cash between wallets. +Commonly referred to as peer-to-peer transactions. +In Taler, interaction with exchange, therefore called wallet-to-wallet transactions.</t> <section anchor="w2w-account"> <name>Account Creation</name> </section> @@ -1341,7 +1345,7 @@ if ⟨blind_sigᵢ⟩ returned: <refcontent>National Institute of Standards and Technology (U.S.)</refcontent> </reference> </references> - <?line 1380?> + <?line 1386?> <section anchor="test-vectors"> <name>Test Vectors</name> @@ -1354,19 +1358,119 @@ They are generated by going through the protocol operations in the following ord <t>Pay for one <tt>order</tt> with the full value of <tt>coin₀</tt> and a partial value of <tt>coin₁</tt> (cf. <xref target="payment"/>).</t> </li> <li> + <t>Obtain a partial refund for <tt>coin₀</tt> used to pay for the <tt>order</tt> (cf. <xref target="refund"/>).</t> + </li> + <li> <t>Refresh the now-dirty <tt>coin₁</tt> to two new coins <tt>coin₂</tt> and <tt>coin₃</tt> (cf. <xref target="refresh"/>).</t> </li> <li> <t>Regenerate <tt>coin₂</tt> and <tt>coin₃</tt> with the knowledge of <tt>coin₁</tt> (cf. <xref target="link"/>).</t> </li> <li> - <t>Obtain a partial refund for <tt>coin₀</tt> used in <tt>order</tt> (cf. <xref target="refund"/>).</t> + <t>Create an <tt>account</tt> for w2w transfers (cf. <xref target="w2w-account"/>).</t> + </li> + <li> + <t>Send a payment to <tt>account</tt> with the full value of <tt>coin₂</tt>, obtaining <tt>coin₅</tt> (cf. <xref target="w2w-push"/>).</t> + </li> + <li> + <t>Request a payment to <tt>account</tt>, which is paid with the full value of <tt>coin₅</tt>, obtaining <tt>coin₆</tt> (cf. <xref target="w2w-pull"/>).</t> </li> <li> - <t>Refresh the partially refunded <tt>coin₀</tt> into one new <tt>coin₄</tt> (cf. <xref target="refresh"/>). // todo: actually needed?</t> + <t>Recoup the value of <tt>coin₆</tt> obtained via withdrawal from <tt>account</tt> (cf. <xref target="withdraw-recoup"/>).</t> + </li> + <li> + <t>Recoup the value of <tt>coin₃</tt> obtained via refresh from <tt>coin₁</tt> (cf. <xref target="refresh-recoup"/>).</t> </li> </ol> - <t>// todo: still missing: recoup and w2w transfers</t> + <t>The test vectors in this document have been generated by the GNU Taler reference implementation written in C. +All binary data is provided in hexadecimal notation.</t> + <section anchor="test-case-1"> + <name>Test Case 1</name> + <artwork><![CDATA[ +denom₀.priv = XXX +denom₀.pub = XXX +denom₀.value = XXX +denom₀.fee_withdraw = XXX +denom₁.priv = XXX +denom₁.pub = XXX +denom₁.value = XXX +denom₁.fee_withdraw = XXX +]]></artwork> + <section anchor="tc1-withdraw"> + <name>Withdrawal</name> + <artwork><![CDATA[ +(W1) reserve key generation (wallet) + +reserve.priv = XXX +reserve.pub = XXX +reserve.balance = XXX +]]></artwork> + <artwork><![CDATA[ +(W2) coin generation and blinding (wallet) + +batch_seed = XXX +coin_seed₀ = XXX +coin_seed₁ = XXX +blind_secret₀ = XXX +blind_secret₁ = XXX +coin₀.priv = XXX +coin₁.priv = XXX +coin₀.pub = XXX +coin₁.pub = XXX +h_denom₀ = XXX +h_denom₁ = XXX +planchet₀ = XXX +planchet₁ = XXX +h_planchet₀ = XXX +h_planchet₁ = XXX +msg = XXX +sig = XXX +]]></artwork> + <artwork><![CDATA[ +(E1) coin issuance and signing (exchange) + +total = XXX +blind_sig₀ = XXX +blind_sig₁ = XXX +]]></artwork> + <artwork><![CDATA[ +(W3) coin unblinding (wallet) + +coin₀.sig = XXX +coin₁.sig = XXX +]]></artwork> + </section> + <section anchor="tc1-payment"> + <name>Payment and Deposit</name> + </section> + <section anchor="tc1-refund"> + <name>Refund</name> + </section> + <section anchor="tc1-refresh"> + <name>Refresh</name> + </section> + <section anchor="tc1-link"> + <name>Link</name> + </section> + <section anchor="tc1-w2w-account"> + <name>Account Creation</name> + </section> + <section anchor="tc1-w2w-push"> + <name>Push Payment</name> + </section> + <section anchor="tc1-w2w-pull"> + <name>Pull Payment</name> + </section> + <section anchor="tc1-withdraw-recoup"> + <name>Recoup Withdrawal</name> + </section> + <section anchor="tc1-refresh-recoup"> + <name>Recoup Refresh</name> + </section> + </section> + <section anchor="test-case-2"> + <name>Test Case 2</name> + </section> </section> <section anchor="change-log"> <name>Change log</name> @@ -1379,263 +1483,274 @@ Education and Research (BMBF) within the project Concrete Contracts.</t> </section> </back> <!-- ##markdown-source: -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 -oWmAbwXDLGYbZtLtNslBmzvp1pn2vDUB8jZzvvk66w/c2URPSz3hvmhiUvhx -qalVgEIlFN08tM3tVuJxfTZtHWwpUsZFMcVkEyKkNi7fO0QNMM71/NKiX2v+ -OG+7pHwbcixY1mJxanriJrmjMDtNl+6LG5uz/mBVj6onaZjsHmnhSXx0vNeh -cxrVcTB1wY7HdGP2TvEZveygavGhDS11gyqBUWdvenUBqYVjFaNVR39Eru9C -K162mGHnfqGSQQLOdCdlLtBqTiHR/SBt9abSWDpemZ1xuhi7X6rwDLrtr1Bf -AxuKrqnj8kGbBjM2OKfZ0iotRN18kqDXJspdRpoWzh3jfWp0I6KXCNR3ii8H -6YztSfKNKp/lOD4bkTqndEl141ZPgjnYOkctmdk6mtoAhIweoomUGLu1dUUZ -3U6kyh38sP9w7/Dbg/4kK8q+Rk+fDO8emJ9o7PcJ6WAlZVO0mtkhR6hi4vgh -GnctMD+GYFbPFmAEGcuwzaqjo2KeYVCGoz4h0U2J1axTNfCQa2NcG96SRb8N -zkGvQCjoxHJlwMWYQG66dsQGV9uoGMTHzn5k7jZtdOiqhnAQzePa0/x0Z3vn -hZpaa5L1Jjt3tp0mTcm9dn+cddTXyikupGYJw1Nso48ibuQGorU5a02KGHDX -oixh/Z6mdQdttqCdrm3PHIkYwADZXMEOkrmDirbVEYW1h/65XaF9gN/vPX58 -cNI/Ojg+OPrNQf/7RycP7x/tfd8h4QaWufJxaFBJZKCC/2ruFZhShqm1Pv+q -Mu0JNhcWY+RjuuDm1aZj88/91W6rIKiTbm30A5N2zfKMeH/5WdvSJgyw/lqo -g7kNuuc3gMUzlZOpGtP4I0w75YcDiPBWjEadL6/oqvabMsRfMXkZP7UcckcB -NLnkqq0+7r77cR8dmOW0ENk5WuWIUfatemz97y5e6ycr11pzN2mQhgGuFw5S -mqI9zxK2omRJCb4n0EQ+JYK0vLWOUHP2XKI7T14FeDh+LQrQGJKIzzCAET0L -dC8ZQYETJQlmX1v7oUlDqsR/o0hHoHjb1fMH7MWtId2YYLUgd7OktOadH0e/ -VDsLAHP2mH5twwNt6geJjU/QMYIL6TSh2LV1HAZJLoPI8gx/bWjkuMKqqPGR -DDMQAZVnDVQ6fFI5DMk194xLPfERb3vn9AsUD/clhYfR7chPXS9dRu69glzs -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 -EEU/LlTBKUGc36Su5VfpRXyfbxiE5107G0plxAGGQsm53zByLsGYUhRUfyIF -qzkUKQpd1xTejLkemQcjKAimKdDlPBjGSVxiPvgjYBashFFWswMNZHJKq+ME -HIUyGMTJuOl4MfMrfVihlhJUc9kAcEl2aeefx6fsmsEMLHTBgBrZMR8CKsp8 -GrILx3XvUA2pYNbT2k2Lvi2lS2AMZXmJTKsvk1Y7BD8HpvN33lFCkI4FzrVb -nQqkVtNX5z0/NGfAop/FzkrEkqWbvGPv8HzcbdU45sqivV0a4oDvC551G649 -TmOIWC33jYLEomWdOteHZ0XDNx9noX++IetqjSQwhSISfFxqtym29x7gqQG3 -/PX64WFBN22AK6zdaTPGdSDiigFktthhYvT2X39tc6Fh8ltdb3UrXt9w8PUG -osMK7+8mOPyXiA1j6NBVrjUlEaK/tnSR7YpCWXoa61zwv6Z0EY7q6toeYDXx -gpQ/keG4Prbtzbp+spB7XcAx1OijNlRgjpwL47ik6wFrj7xiATeZS7ptqQ2o -ef8t5JJe8yatXbUaYx1/+o9f//wv/0PlfVc1uptUrDcNLs1Vy142b/NBPu/n -tkCo3J+6Ywa9hon0lE+b3Vpuzr17R80E+WK8+fn1mnfb5n2W+lTFuDvDouxL -s32KSUL3S8BKmjW5V43T4OjgwfPD+9q1Wnfs2Nc5X8GxDf8zc9d8nQqQJUGR -eccHRTSuRbe5IzGoi17bz+7aLAuIUSHNGP5DadWmUiYrfzBR2084LRl7pCt9 -ZOKPFbp0bcia3bSUwmgHrUeqm6DTen4hJ/pkVXrCob/abRrb3Bl0dgl90igj -jzA5C42LuAqT53IMxnZvOkF3htAe5cht742DnDHNKEYPQIr+hHIl6sgzpuWI -JmW7XTEAxoLp+j1/IE2LN84rCCgJ4udNr5m75x241+fuReqELZfmZMZ7WvWC -EMWcn9ThFyEUMV1/GTw3SgbG8iorQV9zRAvBiX6gjG177IvapYtngEfdz9wI -XPvYaTqil9zQXBtCI5ExJqTWrkUJfh2rSuZxvounXWeNlxytumLaM5boL1cb -Xy11J2ctOd2aLy6mA5Bxl4tvAC6/+ecBQoxfUX/RKEuwJi0MMzeAGNBfDUXI -ulZZRy7blsug4LKN1v05I46jjD7ouON5W91lyFBOZi6aQRX4AqdEL4J5u1AO -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 -->