Slide 20
Slide 20 text
Redemption, in detail
1. User calculates request binding data R for the request they want to make
2. User chooses unspent token t to redeem and retrieves (t, N)
3. User calculates a shared key sk = Hash(t || N)
4. User sends a pass (t, HMAC(sk, R)) to the server with the HTTP request
5. Server calculates R’ from observed request data
6. Server checks the double-spend list for t
7. Server calculates T = HashToGroup(t), N = xT and sk = Hash(t || N)
8. Server checks that HMAC(sk, R’) matches the user-supplied value
9. If HMAC matches, server processes the request and stores a record of t