sesame-withdraw.puml (902B)
1 @startuml sesame-withdraw 2 ' Token withdrawal via fountain for DD 97 (Project Sesame). 3 ' Regenerate with: java -jar plantuml.jar -tsvg sesame-*.puml 4 !include taler-style.iuml 5 autonumber 6 7 participant "Taler Wallet" as wallet 8 participant "Merchant\nbackend" as merchant 9 10 wallet -> merchant : GET /fountain/info\nAuthorization: Bearer $FOUNTAIN_SECRET 11 merchant --> wallet : {poll_freq, grants with\ntoken family issue keys} 12 wallet -> wallet : prepare blinded envelopes\nfor granted families 13 wallet -> merchant : POST /fountain/withdraw\n{fountain_secret, grants: [{token_family_slug,\nvalid_at, envelopes}]} 14 merchant -> merchant : per entry: check grant and\nper-period limit for the slot 15 merchant -> merchant : blind-sign the envelopes\nwith the slot's issue key 16 merchant --> wallet : {grants: [{token_family_slug,\nh_issue, blind_sigs}]} 17 wallet -> wallet : unblind and store\none token per group 18 @enduml