Cashu wallet
Cashu mint
Cashu wallet
Cashu mint
random secretrandom blinding factorhashToCurve(x)=YrBlinding factor: rSecret: xCashu wallet
Cashu mint
blindedmessageYr+G= B_
Blinding factor: rSecret: xCashu wallet
Cashu mint
blindedmessageYr+G= B_
blindedsignaturekB_
= C_
Public Key: KPrivate Key: kBlinding factor: rSecret: xCashu wallet
Cashu mint
blindedmessageYr+G= B_
blindedsignaturekB_
= C_
Public Key: KPrivate Key: kblindly signed ecash
C_
r-
K= C
Blinding factor: rSecret: xCashu wallet
Cashu mint
blindedmessageYr+G= B_
blindedsignaturekB_
= C_
Public Key: KPrivate Key: kblindly signed ecash
C_
r-
K= C
{x,C}
Blinding factor: rSecret: xBlinding factor: rSecret: xCashu wallet
Cashu mint
blindedmessageYr+G= B_
blindedsignaturekB_
= C_
Public Key: KPrivate Key: kblindly signed ecash
C_
r-
K= C
{x,C}
Blinding factor: rSecret: xBlinding factor: rSecret: xkY
== C
hashToCurve(x)=Yverify
Cashu wallet
Cashu mint
blindedmessageYr+G= B_
blindedsignaturekB_
= C_
Public Key: KPrivate Key: kblindly signed ecash
C_
r-
K= C
{x,C}
Blinding factor: rSecret: xBlinding factor: rSecret: xkY
== C
hashToCurve(x)=Yverify
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicCashu wallet
Cashu mint
blindedmessageYr+G= B_
blindedsignaturekB_
= C_
Public Key: KPrivate Key: kblindly signed ecash
C_
r-
K= C
{x,C}
Blinding factor: rSecret: xBlinding factor: rSecret: xkY
== C
hashToCurve(x)=Yverify
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicm/129372'/0'/${kID}'/${counter}'/0
m/129372'/0'/${kID}'/${counter}'/1
bip32 derivationCashu wallet
Cashu mint
blindedmessageYr+G= B_
blindedsignaturekB_
= C_
Public Key: KPrivate Key: kblindly signed ecash
C_
r-
K= C
{x,C}
Blinding factor: rSecret: xBlinding factor: rSecret: xkY
== C
hashToCurve(x)=Yverify
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicm/129372'/0'/${kID}'/${counter}'/0
m/129372'/0'/${kID}'/${counter}'/1
bip32 derivationcounterseedCashu wallet
Cashu mint
restore
Cashu wallet
Cashu mint
restore
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicCashu wallet
Cashu mint
restore
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicderive n blinded messagesCashu wallet
Cashu mint
restore
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicderive n blinded messages| blinded message | blinded signature |
|---|---|
send and matchsend and matchCashu wallet
Cashu mint
restore
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicderive n blinded messages| blinded message | blinded signature |
|---|---|
send and matchreturn signatures if unspentsend and matchCashu wallet
Cashu mint
restore
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicderive n blinded messages| blinded message | blinded signature |
|---|---|
send and matchreturn signatures if unspentr,xr,xr,xsend and matchmatch signatures with x, rCashu wallet
Cashu mint
restore
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicderive n blinded messages| blinded message | blinded signature |
|---|---|
send and matchreturn signatures if unspentr,xr,xr,xrestored ecash, but doxxed our history to the mint
send and matchmatch signatures with x, rCashu wallet
Cashu mint
restore
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicderive n blinded messages| blinded message | blinded signature |
|---|---|
send and matchreturn signatures if unspentr,xr,xr,xrestored ecash, but doxxed our history to the mint
send and matchmatch signatures with x, rCheck if spent| spent secrets |
|---|
Cashu wallet
Cashu mint
restore
security rifle eye add medal giant infant coffee balance involve naive hole
bip39 menmonicderive n blinded messages| blinded message | blinded signature |
|---|---|
r,xr,xr,xrestored ecash without doxxing, but requires large payload download
match signatures with x, rdownload all and matchCheck if spent| spent secrets |
|---|
delayed and spread to avoid corelation