kukks on Nostr: On July 28th, I submitted my proposal to @HRF for the Serverless Payjoin bounty: ...
On July 28th, I submitted my proposal to @HRF for the Serverless Payjoin bounty: Payjoin over Nostr.
You can read the protocol addendum here: https://github.com/Kukks/BTCPayServer.BIP78/blob/nostr/BTCPayServer.BIP78.Nostr/README.md
The proposal is incredibly simple in nature, just as BIP78 was designed to be, to increase adoption chances. All logic within the Payjoin protocol stays the same, so the version is still 1. It is asynchronous (receiver can process later when back online), encrypted (communication is end-to-end encrypted), and lightweight (no server requirement, leverages existing Nostr network).
In addition to this, I also added building blocks for a new experimental addition: Nostr Payjoin Market.
If your wallet supports receiving Payjoin, you can share a static payjoin endpoint using the Nostr Coinjoin Discovery protocol (https://github.com/nostr-protocol/nips/pull/384). Other wallets, which support Payjoin but want to send money to wallets that don't, can use these static endpoints to enhance their transactions. The goal? Make every transaction to every wallet a coinjoin.
See the sample wallet code and additional detailed description: https://github.com/Kukks/BTCPayServer.BIP78/tree/nostr/BIP78SampleWallet
See quick video demo of prototype:
https://youtu.be/WASFXMue2tI
You can read the protocol addendum here: https://github.com/Kukks/BTCPayServer.BIP78/blob/nostr/BTCPayServer.BIP78.Nostr/README.md
The proposal is incredibly simple in nature, just as BIP78 was designed to be, to increase adoption chances. All logic within the Payjoin protocol stays the same, so the version is still 1. It is asynchronous (receiver can process later when back online), encrypted (communication is end-to-end encrypted), and lightweight (no server requirement, leverages existing Nostr network).
In addition to this, I also added building blocks for a new experimental addition: Nostr Payjoin Market.
If your wallet supports receiving Payjoin, you can share a static payjoin endpoint using the Nostr Coinjoin Discovery protocol (https://github.com/nostr-protocol/nips/pull/384). Other wallets, which support Payjoin but want to send money to wallets that don't, can use these static endpoints to enhance their transactions. The goal? Make every transaction to every wallet a coinjoin.
See the sample wallet code and additional detailed description: https://github.com/Kukks/BTCPayServer.BIP78/tree/nostr/BIP78SampleWallet
See quick video demo of prototype:
https://youtu.be/WASFXMue2tI