Rob Woodgate's avatar
Rob Woodgate
rob@nostrly.com
npub1emq0...a3jz
Entrepreneur, software developer and marketer. Working on #nostr #cashu 🫑 My better half: https://www.heidiwoodgate.com ⚑️Nostrly: https://www.nostrly.com ⚑️Github: https://github.com/robwoodgate ⚑️AWtomator: https://www.awtomator.com ⚑️ListLockr: https://www.listlockr.com
Rob Woodgate's avatar
robwoodgate 9 months ago
A busy day coding and testing today - Cachu Redeem now supports redemption of Cashu tokens demoninated in fiat currencies (like those from the Stablenut mint). Cashu Cache now reads legacy kind:37375 wallets and upgrades them to be NIP-60 compliant. Cashu Witness now also supports fiat currency denominated tokens Time for a well earned beer, I think. Cheers!
Rob Woodgate's avatar
robwoodgate 9 months ago
Introducing Cashu Gather - the easy way to gather up NutZaps sent to your NIP-61 public key. It scours your relays for unclaimed NutZaps, organizes them by mint, and presents a token containing all the valid proofs it finds from each mint. For example, if you received 100 NutZaps from MiniBits, each for 5 sats, you'd get a single 500 sat token to cash in. It supports NutZaps in multiple currencies, and stores a history of collected tokens, so you don't lose them. image
Rob Woodgate's avatar
robwoodgate 9 months ago
Cashu Witness now fully supports tokens NutLocked to a NIP-61 (NutZap) public key... It can even reverse lookup and tell you who it belongs to if the user's wallet supports it. [*] And signing NIP-61 locked tokens is secure too... you simply use a regular NIP-07 extension! image [*] User's kind:10019 NutZap event must include the 'k' tag. If you create your NutZap wallet with NutZapMe, this is taken care of for you.
Rob Woodgate's avatar
robwoodgate 9 months ago
A whole new generation of bitcoiners gets to experience a block size war. Block War II
Rob Woodgate's avatar
robwoodgate 9 months ago
NutZaps got overhauled in Nostr back in February, and I couldn't find a client that works according to the revised spec. So I built NutZapMe. It lets you create a NIP-60 compliant Cashu Wallet, a backup wallet, and a NIP-61 NutZap informational event to tell people how to send you ecash. Once setup, you can also use your NIP-60 wallet to NutLock tokens, and unlock them using any regular Nostr signer extension. I built it because I wanted to add NIP-60 support to Cashu Witness, and needed to set up my own NutZap wallet for testing. image
Rob Woodgate's avatar
robwoodgate 10 months ago
Cashu MultiSig just dropped... opening up atomic swaps and escrow. Meet Cashu Witness. Imagine @calle and @heidi-E want to do a deal, but they don't trust each other. They do, however, both trust me. Calle can lock his payment token to all three of us, requiring 2-of-3 signatures to redeem... and specify a time limit for performance. πŸ₯œσ …“σ …‘σ …£σ …˜σ …₯σ „²σ …Ÿσ „’σ „Άσ …€σ …•σ „³σ „Ίσ …Ÿσ …”σ „Έσ …‚σ …§σ …“σ …ͺσ …Ÿσ …¦σ „Όσ „’σ „‘σ … σ …’σ …žσ …σ …₯σ …’σ …‡σ …œσ …₯σ …‘σ …‡σ „Ίσ … σ …”σ „Έσ „½σ …₯σ …‰σ „’σ „Άσ …ͺσ …‘σ „³σ „©σ „³σ …‘σ …ˆσ …‚σ …šσ …’σ „’σ …œσ …₯σ …‰σ …ˆσ …†σ …šσ …“σ „’σ „Άσ „ σ …‰σ …ˆσ …ƒσ „²σ …Ÿσ …σ „Άσ … σ …ƒσ „±σ „²σ …σ „²σ …†σ „΄σ …§σ …ƒσ ……σ „Άσ „·σ …‰σ …ˆσ „³σ „³σ … σ „·σ „Άσ …˜σ „±σ …σ „Άσ …ͺσ …•σ …σ „·σ „‘σ …‡σ …©σ „Ίσ …σ „½σ …œσ „²σ „Όσ „Ήσ …™σ …¨σ „§σ „Ήσ …σ „₯σ …¦σ …’σ …σ „Ύσ …œσ „Ήσ …šσ …Ÿσ …™σ „½σ …„σ …σ „€σ …‰σ …šσ „Ύσ …›σ „Ύσ …‡σ ……σ …ͺσ „½σ …‡σ „Άσ …šσ …Šσ …‡σ „΅σ …§σ …‰σ …šσ …‰σ „’σ „Ύσ …ͺσ …“σ „‘σ „Ύσ …ͺσ ……σ …©σ „Ύσ „΄σ …‰σ „₯σ …Šσ …„σ …“σ …ͺσ „Ύσ „΄σ ……σ „₯σ …Šσ „·σ „΅σ „£σ „Ύσ …σ „Ήσ …¨σ „Ύσ …šσ …›σ …ͺσ …Šσ …šσ …›σ „€σ …Šσ „·σ …†σ …œσ …Šσ …šσ …Šσ …šσ …‰σ …ͺσ „Ίσ …œσ „Ώσ …„σ …—σ …¨σ „½σ …ͺσ …†σ …›σ …Šσ „΄σ …—σ „£σ „Ώσ „³σ „Ήσ …£σ „Ήσ …σ …‚σ …˜σ …”σ „·σ „΅σ …™σ „Ώσ …™σ „Ήσ …§σ „½σ …σ „Ύσ …œσ …‰σ …ͺσ „²σ …σ „Ύσ „΄σ …‚σ …›σ „½σ „·σ …σ „’σ „Ύσ „·σ …σ „’σ …Šσ „΄σ …œσ …›σ „Ύσ „’σ „΅σ …¨σ …‰σ …ͺσ …—σ „ σ …‰σ …ͺσ „½σ …ͺσ „½σ „·σ …‰σ „‘σ „Ύσ „΄σ …‰σ „£σ …Šσ …„σ …“σ „‘σ „½σ …σ „Ύσ …šσ „Ώσ „·σ „Ήσ …§σ „Ύσ …šσ …†σ …σ „Ύσ …ͺσ „Ήσ …§σ …Šσ …„σ …—σ „£σ „Ύσ „·σ „΅σ …§σ …‰σ …σ …†σ …›σ „½σ …‡σ „½σ „‘σ „Ύσ „΄σ „΅σ „’σ …Šσ „΄σ „Ήσ …™σ „Όσ „³σ „Ίσ „ σ …‰σ …‡σ …”σ …ͺσ „Ήσ …šσ … σ …’σ …‡σ …©σ „Ίσ …£σ …’σ „’σ „Ύσ …’σ …”σ „·σ …œσ …€σ …Šσ …ƒσ „Ήσ …£σ „½σ …„σ …“σ „ σ „Ύσ „΄σ ……σ „€σ „Ύσ …„σ „΅σ „ σ „½σ „Άσ „ σ …£σ …‡σ …©σ „Ίσ …§σ …”σ …‡σ „Ίσ …’σ …Šσ …ˆσ …œσ …ͺ󠄹󠅙󠅧󠅙󠄽󠄴󠄹󠄑󠄽󠄷󠅁σ „₯σ „Ύσ „·σ …Šσ …šσ „½σ …σ …σ „€σ „Ύσ …„σ …—σ …§σ …‰σ …ͺ󠅉󠄀󠄽󠅝󠄹󠅧󠄾σ …ͺσ „Άσ …˜σ „Ύσ …„σ …σ …©σ …Šσ …šσ …˜σ …™σ „½σ …‡σ ……σ …ͺσ „½σ …‡σ „΅σ …©σ „½σ „΄σ „²σ …™σ „½σ „΄σ ……σ …§σ „Ώσ „·σ „Ίσ …˜σ …‰σ …šσ …›σ „‘σ …‰σ …„σ „½σ …ͺσ …‰σ …σ …†σ …σ „½σ „΄σ …—σ „‘σ „Ύσ …‡σ …‚σ …σ „½σ …šσ …—σ …¨σ …Šσ „΄σ …‰σ …ͺσ „Ήσ …™σ …§σ …™σ „½σ „΄σ „Ίσ …œσ „Ώσ …‡σ ……σ „‘σ „Ύσ „’σ …‰σ „£σ „Ύσ „΄σ …σ „‘σ „½σ …„σ ……σ „£σ „½σ …σ „Ήσ „₯σ …Šσ …‡σ „΅σ …§σ „Ύσ …‡σ „½σ „’σ …Šσ …„σ „²σ …σ „½σ …„σ …Šσ …σ …Šσ „΄σ …‰σ …§σ …‰σ …šσ „½σ „₯σ …Šσ „·σ …Šσ …›σ „Ώσ „΄σ „Ήσ „₯σ „½σ „’σ „Άσ …›σ „½σ …šσ …Šσ …˜σ „½σ „’σ „½σ …§σ „½σ …ͺσ …›σ „ σ …Šσ „΄σ „΅σ …¨σ „½σ …„σ „²σ …σ …Šσ …„σ …“σ „‘σ …Šσ …σ …†σ …™σ „Ήσ …œσ „ σ …£σ …‡σ …©σ „Ίσ …₯σ …ˆσ „£σ „Ύσ … σ …Šσ „£σ „½σ …™σ „Όσ „΄σ „Άσ …”σ „Όσ „Άσ …£σ …™σ …“σ …σ …†σ …σ …”σ …‡σ „₯󠅛󠄹󠅙󠅧󠅙󠄽󠄴󠄹󠄑󠄽󠄷󠅁σ „₯σ „Ύσ „·σ …Šσ …šσ „½σ …σ …σ „€σ „Ύσ …„σ …—σ …§σ …‰σ …ͺ󠅉󠄀󠄽󠅝󠄹󠅧󠄾σ …ͺσ „Άσ …˜σ „Ύσ …„σ …σ …©σ …Šσ …šσ …˜σ …™σ „½σ …‡σ ……σ …ͺσ „½σ …‡σ „΅σ …©σ „½σ „΄σ „²σ …™σ „½σ „΄σ ……σ …§σ „Ώσ „·σ „Ίσ …˜σ …‰σ …šσ …›σ „‘σ …‰σ …„σ „½σ …ͺσ …‰σ …σ …†σ …σ „½σ „΄σ …—σ „‘σ „Ύσ …‡σ …‚σ …σ „½σ …šσ …—σ …¨σ …Šσ „΄σ …‰σ …ͺσ „Ήσ …œσ „‘σ …”σ …–σ …†σ „‘σ …˜σ …‰σ „‘σ …—σ …˜σ „±σ „©σ „·σ „₯σ …σ …σ …„σ …–σ …σ ……σ …–σ „³σ …’σ „Ίσ …σ …™σ …šσ …€σ …σ „©σ …‰σ „·σ …žσ ……σ …†σ „Όσ …σ „£σ …£σ …’σ …Ÿσ …”σ „©σ …¦σ „±σ „΄σ …¦σ „Ώσ „ σ „²σ …’σ „¨σ …σ …’σ …‰σ …‡σ …ƒσ …šσ …‰σ …‡σ …†σ …‰σ „Ήσ „²σ …σ …₯σ „Ίσ „²σ …‚σ „£σ „»σ …₯󠅂󠄾󠄼󠅅󠄸󠄦󠄱󠅦󠄴σ …₯σ „₯σ …˜σ …©σ „±σ …‘σ …©σ „Ίσ …σ „Ίσ …–σ „΄σ „¦σ …Šσ …‡σ „΅σ „΅σ „σ …“σ „¦σ „©σ „Ίσ …σ „½σ „Έσ …‰σ …ˆσ „Ύσ …‰σ „Ήσ „³σ …“σ …žσ „΅σ …€σ …˜σ „ σ „΅σ „¦σ …žσ „³σ …˜σ …’σ „‘σ …€σ „²σ „Ήσ …σ …†σ „Ήσ „₯σ „Ήσ …œσ „¦σ …σ „Ήσ „₯σ „Άσ …‰σ …©σ …‘σ …£σ …–σ „¨σ …‚σ …Šσ „Ώσ „©σ …€σ …σ „Όσ …‚σ …£σ …‰σ …ˆσ „Ίσ …‰σ „Ήσ „Ήσ …—σ ……σ „±σ …œσ …—σ „ σ …‡σ „‘σ „₯σ „Ήσ „§σ …₯σ …‚σ „‘σ „»σ …§σ …“σ „³σ „΅σ …¦σ …“σ „Όσ …€σ „Ήσ …§σ …’σ „ σ „’σ …‡σ …”σ „₯σ „±σ „Έσ …“σ …σ „Ύσ „½σ „σ „΄σ „¨σ „³σ …Šσ … σ „·σ „Άσ …˜σ „³σ „·σ „Άσ …ͺσ …•σ …σ „·σ „‘σ …‡σ …©σ „Ίσ …σ „½σ …œσ „²σ „Όσ „Ήσ …™σ …¨σ „§σ „Ήσ …σ „₯σ …¦σ …’σ …σ „Ύσ …œσ „Ήσ …šσ …Ÿσ …™σ „Ύσ …σ „΅σ …©σ „½σ …ͺσ …“σ „‘σ „½σ …šσ „²σ …σ …Šσ „΄σ …—σ …¨σ „½σ …‡σ „Άσ …σ …Šσ …šσ „²σ …™σ „Ύσ „΄σ …”σ …σ „Ώσ „΄σ …”σ …σ „½σ …šσ …—σ „£σ …‰σ …šσ „Άσ …σ „Ύσ …šσ …˜σ …šσ …‰σ …σ „Ήσ …ͺσ „½σ …ͺσ „Ύσ …σ …Šσ …šσ „Ήσ …§σ „Ώσ „΄σ „Άσ …›σ …‰σ …„σ …—σ …§σ …Šσ „΄σ „΅σ „₯σ „½σ …„σ …‰σ „’σ „½σ …šσ …“σ „’σ „½σ „΄σ …—σ …©σ „Ύσ „’σ …Šσ …›σ „½σ …ƒσ „Ήσ …£σ „Ήσ …σ …‚σ …˜σ …”σ „·σ „΅σ …™σ „Ώσ …™σ „Ήσ …§σ „½σ …σ „Ύσ …œσ …‰σ …ͺσ „²σ …σ „Ύσ „΄σ …‚σ …›σ „½σ „·σ …σ „’σ „Ύσ „·σ …σ „’σ …Šσ „΄σ …œσ …›σ „Ύσ „’σ „΅σ …¨σ …‰σ …ͺσ …—σ „ σ …‰σ …ͺσ „½σ …ͺσ „½σ „·σ …‰σ „‘σ „Ύσ „΄σ …‰σ „£σ …Šσ …„σ …“σ „‘σ „½σ …σ „Ύσ …šσ „Ώσ „·σ „Ήσ …§σ „Ύσ …šσ …†σ …σ „Ύσ …ͺσ „Ήσ …§σ …Šσ …„σ …—σ „£σ „Ύσ „·σ „΅σ …§σ …‰σ …σ …†σ …›σ „½σ …‡σ „½σ „‘σ „Ύσ „΄σ „΅σ „’σ …Šσ „΄σ „Ήσ …™σ „Όσ „³σ „Ίσ „ σ …‰σ …‡σ …”σ …ͺσ „Ήσ …šσ … σ …’σ …‡σ …©σ „Ίσ …£σ …’σ „’σ „Ύσ …’σ …”σ „·σ …œσ …€σ …Šσ …ƒσ „Ήσ …£σ „½σ …„σ …“σ „ σ „Ύσ „΄σ ……σ „€σ „Ύσ …„σ „΅σ „ σ „½σ „Άσ „ σ …£σ …‡σ …©σ „Ίσ …§σ …”σ …‡σ „Ίσ …’σ …Šσ …ˆσ …œσ …ͺ󠄹󠅙󠅧󠅙󠄽󠄴󠄹󠄑󠄽󠄷󠅁σ „₯σ „Ύσ „·σ …Šσ …šσ „½σ …σ …σ „€σ „Ύσ …„σ …—σ …§σ …‰σ …ͺ󠅉󠄀󠄽󠅝󠄹󠅧󠄾σ …ͺσ „Άσ …˜σ „Ύσ …„σ …σ …©σ …Šσ …šσ …˜σ …™σ „½σ …‡σ ……σ …ͺσ „½σ …‡σ „΅σ …©σ „½σ „΄σ „²σ …™σ „½σ „΄σ ……σ …§σ „Ώσ „·σ „Ίσ …˜σ …‰σ …šσ …›σ „‘σ …‰σ …„σ „½σ …ͺσ …‰σ …σ …†σ …σ „½σ „΄σ …—σ „‘σ „Ύσ …‡σ …‚σ …σ „½σ …šσ …—σ …¨σ …Šσ „΄σ …‰σ …ͺσ „Ήσ …™σ …§σ …™σ „½σ „΄σ „Ίσ …œσ „Ώσ …‡σ ……σ „‘σ „Ύσ „’σ …‰σ „£σ „Ύσ „΄σ …σ „‘σ „½σ …„σ ……σ „£σ „½σ …σ „Ήσ „₯σ …Šσ …‡σ „΅σ …§σ „Ύσ …‡σ „½σ „’σ …Šσ …„σ „²σ …σ „½σ …„σ …Šσ …σ …Šσ „΄σ …‰σ …§σ …‰σ …šσ „½σ „₯σ …Šσ „·σ …Šσ …›σ „Ώσ „΄σ „Ήσ „₯σ „½σ „’σ „Άσ …›σ „½σ …šσ …Šσ …˜σ „½σ „’σ „½σ …§σ „½σ …ͺσ …›σ „ σ …Šσ „΄σ „΅σ …¨σ „½σ …„σ „²σ …σ …Šσ …„σ …“σ „‘σ …Šσ …σ …†σ …™σ „Ήσ …œσ „ σ …£σ …‡σ …©σ „Ίσ …₯σ …ˆσ „£σ „Ύσ … σ …Šσ „£σ „½σ …™σ „Όσ „΄σ „Άσ …”σ „Όσ „Άσ …£σ …™σ …“σ …σ …†σ …σ …”σ …‡σ „₯󠅛󠄹󠅙󠅧󠅙󠄽󠄴󠄹󠄑󠄽󠄷󠅁σ „₯σ „Ύσ „·σ …Šσ …šσ „½σ …σ …σ „€σ „Ύσ …„σ …—σ …§σ …‰σ …ͺ󠅉󠄀󠄽󠅝󠄹󠅧󠄾σ …ͺσ „Άσ …˜σ „Ύσ …„σ …σ …©σ …Šσ …šσ …˜σ …™σ „½σ …‡σ ……σ …ͺσ „½σ …‡σ „΅σ …©σ „½σ „΄σ „²σ …™σ „½σ „΄σ ……σ …§σ „Ώσ „·σ „Ίσ …˜σ …‰σ …šσ …›σ „‘σ …‰σ …„σ „½σ …ͺσ …‰σ …σ …†σ …σ „½σ „΄σ …—σ „‘σ „Ύσ …‡σ …‚σ …σ „½σ …šσ …—σ …¨σ …Šσ „΄σ …‰σ …ͺσ „Ήσ …œσ „‘σ …”σ …–σ …†σ „‘σ …˜σ …‰σ „‘σ …—σ …˜σ „±σ „©σ „©σ „€σ …—σ …›σ …σ …§σ „±σ „Ήσ „½σ …Ÿσ …ͺσ …©σ …Ÿσ „§σ …•σ „Ίσ „§σ …—σ …‘σ …’σ …§σ …€σ „§σ „σ …€σ „Ώσ …’σ „£σ „±σ „½σ „‘σ „·σ …žσ „Ώσ …™σ …’σ „Ίσ …†σ …‰σ …Ÿσ „₯σ „²σ …‰σ …‡σ …ƒσ …šσ …‰σ …‡σ …†σ …‰σ „Ήσ „Ήσ …‘σ „΅σ …₯σ …§σ …Ÿσ „¦σ …‘σ „Όσ …¦σ „¦σ … σ …“σ „Άσ …ˆσ „§σ „¨σ …˜σ …Šσ …šσ „ σ …šσ „€σ …›σ …©σ …Šσ …§σ …€σ …‘σ …†σ „‘σ …“σ …Ÿσ …£σ „΄σ „€σ „΅σ …”σ …‘σ …£σ „Έσ …œσ …§σ …‰σ …ˆσ „Ύσ …‰σ „Ήσ …€σ …˜σ „³σ …—σ „·σ …œσ „€σ …σ „’σ …•σ …’σ „©σ …§σ ……σ …¦σ …•σ …‡σ „»σ …§σ …€σ …‘σ …˜σ …‚σ „Όσ „¦σ …Ÿσ „σ „‘σ …€σ …šσ …σ „ σ …‰σ „·σ …₯σ … σ …€σ …ƒσ …Šσ „Έσ …¨σ …—σ …—σ …‰σ …ˆσ „Ίσ …‰σ „Ήσ „Ώσ …šσ …„σ …Ÿσ …—σ …’σ …‰σ … σ …„σ …σ …™σ „³σ …šσ …Ÿσ „Ήσ …ˆσ …Šσ …§σ …œσ …ƒσ „Ήσ …„σ …’σ …€σ „Ίσ …˜σ …™σ …€σ ……σ „²σ ……σ „Ύσ …žσ …σ „‘σ …¨σ …ͺσ …—σ „‘σ …¦σ …σ …‘σ …˜ The token can be sent up front, and all parties can see the lock using Cashu Witness. If the deal goes through, I can witness the token and send it on to HeidE, who can then sign and swap it for an unlocked token she can spend (again using Cashu Witness). If the deal falls through, I witness the token and send it back to Calle to cash in. if I get hit by a bus or the deal isn't done in time, Calle can cash in the token when the the token lock expires. image
Rob Woodgate's avatar
robwoodgate 10 months ago
My MacBook Air keyboard has gone screwy... 😭 Thank goodness I got all my PRs submitted for #cashu beforehand.
Rob Woodgate's avatar
robwoodgate 10 months ago
The latest update to Nostrly Cashu Redeem lets you see which Nostr user an ecash token is locked to, and when the lock expires. It also lets you redeem NutLocked tokens using a NIP-07 signer. #cashu #ecash #p2pk #npub #nostr image
Rob Woodgate's avatar
robwoodgate 10 months ago
Image upload seems broken on #primal today. Is it just me?
Rob Woodgate's avatar
robwoodgate 10 months ago
Cashu NutLock is now live... It lets you create time-limited, npub-locked Cashu tokens πŸ₯œ πŸ‘‰ Clawback Nostr tips if they go unclaimed πŸ‘‰ Offline payments that can’t be double-spent until lock expires πŸ‘‰ Create "inheritance" tokens πŸ‘‰ Simple time-locked escrow with 3rd-party refunds πŸ‘‰ Tokens that can be spent by anyone after a certain time Let the #Nostr fun and games commence! Beta live: Enabled by @calle @fiatjaf Nostr❀️ Cashu #cashu #nutlock #ecash #bitcoin
↑