<oembed><type>rich</type><version>1.0</version><title>Bugtus wrote</title><author_name>Bugtus (npub1se…mnhp3)</author_name><author_url>https://yabu.me/npub1sezgmhk40mk5znnqse5jz4mjx40vszz45zwqnf7wyxqvdz0t8wnq9mnhp3</author_url><provider_name>njump</provider_name><provider_url>https://yabu.me</provider_url><html>I don&#39;t think *this* is a problem. If Alice and the Mint collude they can always unblind C_, so this isn&#39;t really a downgrade from standard cashu.&#xA;&#xA;&#xA;However, there is an attack where Alice just lets the Mint sign Y twice. Once with Carol&#39;s public key B_ = Y + r * F and once the standard way with B_&#39; = Y + rG.&#xA;&#xA;Now, (x, r_, C_, DLEQ) looks like a valid token to Carol even when offline. However if Alice spends her token before Carol, Carol&#39;s token will get denied because the secret x is already in the Mint&#39;s spent set.&#xA;&#xA;&#xA;An idea to fix this:&#xA;&#xA;1. Carol generates a bunch of secrets x, blinds them (B=Y+rG), and publishes these &#34;Blank Checks&#34; (B_&#39;s) somewhere. She can then go offline.&#xA;2. Alice grabs a B_, pays the Mint to sign it (C_), and sends it to Carol. Alice cannot have Y signed twice (like in the prior attack) because she doesn&#39;t know x.&#xA;3. Carol receives C_ and the DLEQ proof. She verifies the proof against her original blank checks and the Mint&#39;s public key. If one of them passes, she has cryptographic proof that C_ is the valid signature for her specific B_. Since only she holds the secret x, she knows the token is safe and unspent. She can unblind it later when she is back online.&#xA;&#xA;&#xA;Not sure if I&#39;m making any mistakes or the first step defies the purpose you want to use this for. I&#39;m pretty new to all of this myself. Would love to hear what you think!</html></oembed>