The thing I absolutely love about…

The thing I absolutely love about Nostr Wallet Connect (NWC) is that the secret used to communicate to the service gets transformed into the corresponding npub to which the calls are sent.

So not only does outside observer not know the secret, they don’t know the address to which the client is communicating. Further, the outside observer does not know what process is listening to carry out the requests - impossible to track.

In my #nostr #safebox implementation I have extended NWC to handle additional directives. Currently the directive I have implemented are: pay_invoice, get_balance, list_transactions. I have added to NWC pay_ecash and offer_record to support nfc card transactions for paying and offering records to another #safebox.

I’ve replicated, using NWC, what is used for tokenized payments on the existing card networks (Mastercard, Visa), but there is no centralized vault - your home server is the card issuer. I’ve also added the capability (open by default) to lock down which servers you are prepared to trust (just a list of server npubs) - the payload gets cryptographically verified first, and then you check against a whitelist, if you have one. That way it’s easy to set up a closed payment network, first, then open it up gradually. The users never see any of this stuff, except that their card might not be accepted by a ‘closed’ network, described above.

Eventually, I want to bump up NWC to NIP-44/59/17 - but that can wait. I also want to bump up the security for the card, adding a PIN, or using a smart card - but this can wait as I see this becoming a decentralized alternative to the existing card payment networks.

Onward!

This post and comments are published on Nostr.