h/t Dan Gould, here is a paper on UIH heuristics in payjoin:
Those two mobile phones controlled 7+ BTC together.
---
RT @samouraidev
#Stowaway #PayJoin meetup w/@LaurentMT My wallet paid his. Make every spend a coinjoin. #SamouraiWallet #Under30SecondMix challenge ;) #Cahoots https://blockstream.info/testnet/tx/8b4a62f24444b5b65151b2319569f293a522b6778199a267d469e04162faf7d8
https://twitter.com/SamouraiDev/status/1090989740537585664
#cahoots #under30secondmix #samouraiwallet #payjoin #stowaway
I'd love to know if any 'chain watchers' out there could update the now very-old stats that LaurentMT collected on UIH violation probabilities; see the definition of UIH here and Laurent's stats in a lower-down comment:
Looks like someone's been working on an experimental payjoin feature hooked up to lnd, nice idea:
Sparrow wallet looks like an interesting bitcoin wallet project:
https://sparrowwallet.com/docs/
They have payjoin/BIP78 support since 0.9.7 ; I'm not sure but I think they don't yet have receiving support, only sending.
Anyway it looks cool (some focus on coldcard support), but disclaimer I have not yet used it.
Learned of this via TFTC h/t @mattodell ;
https://github.com/armins88/Onion78
there's a short video demo and a slide deck, basically this is a mobile-to-mobile BIP78 payment implementation (interestingly, seems to be iPhone) using onion service for receiver as Joinmarket does. Was part of an MIT hackathon.
Most interesting if this BIP78 implementation makes its way into production mobile wallets, will be a great selling point ...
In this PR @kristapsk makes an interesting point (as best I understand it) - what if the receiver in a payjoin contributes an unconfirmed utxo? BIP78 doesn't mention it afaik. Perhaps something should be added in regard to this?
@NicolasDorier @kukks thoughts?
https://github.com/JoinMarket-Org/joinmarket-clientserver/pull/846#issuecomment-812549859
Finally how to receive a #payjoin from the @joinmarket QT GUI:
* Load and unlock a wallet
* -> Wallet menu -> Receive payjoin...
* choose the amount and mixdepth
* Generate request
* share the link or the QRcode
Sending:
* paste the payment link
* choose the mixdepth and start
Shall not stop there since it is even more fun the other way around.
Just sent a #payjoin from the @BTCPayServer wallet and received in @joinmarket.
See the guide for BTCPay: https://docs.btcpayserver.org/Payjoin/#paying-to-payjoin-as-a-user
for JM CLI: https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/PAYJOIN.md#receiving
(available in the QT GUI and #JoininBox also)
Having fun testing #payjoin-s on signet to a @BTCPayServer shop from a @joinmarket wallet.
Now can select a custom miner fee in the #JoininBox menu as well.
Transaction on @mempool:
https://mempool.space/signet/tx/63d56c2da7646891a503f39e339ce54fd7d37b285871d6c1df63aa24bcdaf19bn:
BTCPay test shop: https://signet.demo.btcpayserver.org/apps/3XRQQi3WhWZLX9yVGH5zAQJypXuC/pos
RT @openoms
@chris_belcher_ @BTCPayServer @WasabiWallet @SparrowWallet @bluewalletio @ElectrumWallet Added @BTCPayServer to the wallets able to SEND and RECEIVE #PAYJOIN transactions.
Being compatible across implementations is hugely important.
BTCPay:
https://docs.btcpayserver.org/Payjoin/
@joinmarket QT GUI video demo: https://video.autizmo.xyz/videos/watch/7081ae10-dce0-491e-9717-389ccc3aad0d
CLI:
https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/PAYJOIN.md#doing-a-payjoin-payment
Also in #JoininBox
Been fine tuning some payjoin details in the JM code last week; it still tests out correctly with btcpayserver on mainnet, but I'd like to test either sender or receiver with one or two other wallets, does anyone know an example that's practical? ideally with signet support but I can do mainnet.
3.2.1
---
RT @COLDCARDwallet
Coldcard 3.2.1 Firmware Release ๐โซ
-Major Multisig Improvements! Now tracks derivation path for each co-signer;Blocks multiple instances of same XFP;Show Ypub/Zpub...
- #Payjoin PSBT BIP78
- And many-many more things, a literal wall of text.
-Learn more https://blog.coinkite.com/version-3.2.1-released/
https://twitter.com/COLDCARDwallet/status/1347587788082974722
RT @COLDCARDwallet
Coldcard 3.2.1 Firmware Release ๐โซ
-Major Multisig Improvements! Now tracks derivation path for each co-signer;Blocks multiple instances of same XFP;Show Ypub/Zpub...
- #Payjoin PSBT BIP78
- And many-many more things, a literal wall of text.
-Learn more https://blog.coinkite.com/version-3.2.1-released/
RT @COLDCARDwallet
Coldcard 3.2.1 Firmware Release ๐โซ
-Major Multisig Improvements! Now tracks derivation path for each co-signer;Blocks multiple instances of same XFP;Show Ypub/Zpub...
- #Payjoin PSBT BIP78
- And many-many more things, a literal wall of text.
-Learn more https://blog.coinkite.com/version-3.2.1-released/
Been experimenting with btcpayserver, pleased to see that it's actually not too hard to set up a full node with btc and lightning support, and pretty trivial to add things like donation pages, a *lot* of functionality under the hood. I'm also using it exclusively over Tor HS for now, i.e. no domains (which are always a bit annoying).
You can even donate using payjoin at the link on https://joinmarket.me .. I tested it and it worked first time :)
LN next :)
#bitcoin #payjoin #btcpayserver
@kukks
I think I tried about 12-15 different merchants and none of them are offering Payjoin URIs.
I'm guessing it's not only because you need the ~latest version of btcpayserver, but probably also because it has to be explicitly selected and I suppose few do select it.
I'm also tending to think it's because of the hot wallet requirement (that was always my concern with the idea).
Does anyone know a merchant accepting BIP78 payjoins?
RT @chris_belcher_
What are surveillance companies going to do when privacy-enhancing technologies become invisible and undetectable? #coinswap #payjoin https://twitter.com/RainDogDance/status/1296394940361199618
Just bought a virtual Green Tea from @MrKukks on https://demo.payjoin.kukks.org/apps/eFtHvBGQAkbyc7GQAN3hQBEnRQe/pos with a #PayJoin from a bech32 @joinmarket wallet on the #Bitcoin Testnet.
It is beautiful seeing these different implementations working together.
https://blockstream.info/testnet/tx/d57f86a2435a08c8b7ddca04cb1dbf1a522b869139a48afba427bb9ff119d2dd
So BIP78 has been merged (no, don't ask me what that means!) and even has a test vector:
https://github.com/bitcoin/bips/blob/master/bip-0078.mediawiki#span_idtestvectorsspanTest_vectors
It's interesting how much debate there was about tiny subtleties of fee choice and restriction, and what each side checks - even the most trivial 2 party protocol can be hugely complex with interactivity.