taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit d0d42be33fc60dfb12869a2fa0c6529855572039
parent 375d7bcce35d1a8c3e1dd6a732261759b61f58fb
Author: Özgür Kesim <oec-taler@kesim.org>
Date:   Sat, 12 Apr 2025 21:31:44 +0200

[dd:pq-refresh] add master seed and note on link-protocol

Diffstat:
Mdesign-documents/062-pq-refresh.rst | 20++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/design-documents/062-pq-refresh.rst b/design-documents/062-pq-refresh.rst @@ -61,14 +61,19 @@ all of the other. Protocol Modifications ^^^^^^^^^^^^^^^^^^^^^^ +Here is a short description of the main steps. We will fill-in the details, +once the paper is published. + 1. **Melting/Commit Phase**: - - Client generates κ refresh blinded coin candidates m_1,... m_κ. - - Sends dirty coin, new denomination and all m_i to the exchange, signed with diry coins' private key + - Client chooses a master seed r and derives κ nonces r_1, ... r_κ. + - Client generates κ refresh blinded coin candidates m_1,... m_κ from them. + - Sends dirty coin, r, all m_i and new denom-info to the exchange, with signature + σ_c of the dirty coins' private key over the request. - Exchange verifies the request. - Exchange calculates h_m = H(m_1,...m_κ) - - Exchange chooses γ from 1...K and signs m_γ. - - Exchange persists h_m → (γ, m_γ, σ_γ) and returns γ to the client. + - Exchange chooses γ from 1...K and signs m_γ, resulting in σ_γ. + - Exchange persists h_m → (r, γ, m_γ, σ_γ, σ_c) and returns γ to the client. 2. **Reveal Phase**: @@ -85,6 +90,13 @@ necessary such that the exchange can sign the request with a valid denomination key *at the moment of melting*. This ensures idempotency of the melting/commit request and that caries over to the reveal phase. +Note that for the Linking protocol, given the dirty coin's public key, +the Exchange simply returns the master seed r and the dirty coins' signature +σ_c over the original refresh request. The owner of the private key of the +dirty coin can then replay the refresh protocol and can be sure that the master +seed was of its own origin. + + Database Changes ^^^^^^^^^^^^^^^^