Skip to content

Commit f8b9710

Browse files
authored
Merge pull request bitcoin#1022 from AdamISZ/update-jm-bip78
update Joinmarket BIP78 status
2 parents c142b51 + 1fbcd28 commit f8b9710

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

bip-0078.mediawiki

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,7 @@ The receiver needs to do some check on the original PSBT before proceeding:
249249
===Sender's payjoin proposal checklist===
250250

251251
The sender should check the payjoin proposal before signing it to prevent a malicious receiver from stealing money.
252-
252+
253253
* Verify that the absolute fee of the payjoin proposal is equals or higher than the original PSBT.
254254
* If the receiver's BIP21 signalled <code>pjos=0</code>, disable payment output substitution.
255255
* Verify that the transaction version, and the nLockTime are unchanged.
@@ -325,7 +325,7 @@ Because the receiver needs to bump the fee to keep the same fee rate as the orig
325325

326326
The validation (policy and consensus) of the original transaction is optional: a receiver without a full node can decide to create the payjoin transaction and automatically broadcast the original transaction after a timeout of 1 minute, and only verify that it has been propagated in the network.
327327

328-
However, non-interactive receivers (like a payment processor) need to verify the transaction to prevent UTXO probing attacks.
328+
However, non-interactive receivers (like a payment processor) need to verify the transaction to prevent UTXO probing attacks.
329329

330330
This is not a concern for interactive receivers like Wasabi Wallet, because those receivers can just limit the number of original PSBT proposals of a specific address to one. With such wallets, the attacker has no way to generate new deposit addresses to probe the UTXOs.
331331

@@ -498,7 +498,7 @@ public async Task<PSBT> RequestPayjoin(
498498
if (proposedPSBTInput.NonWitnessUtxo != null || proposedPSBTInput.WitnessUtxo != null)
499499
throw new PayjoinSenderException("The receiver added non_witness_utxo or witness_utxo to one of our inputs");
500500
sequences.Add(proposedTxIn.Sequence);
501-
501+
502502
// Fill up the info from the original PSBT input so we can sign and get fees.
503503
proposedPSBTInput.NonWitnessUtxo = input.SignedPSBTInput.NonWitnessUtxo;
504504
proposedPSBTInput.WitnessUtxo = input.SignedPSBTInput.WitnessUtxo;
@@ -660,7 +660,7 @@ A successful exchange with:
660660
* [[https://github.com/BlueWallet/BlueWallet|BlueWallet]] is in the process of implementing the protocol.
661661
* [[https://github.com/btcpayserver/btcpayserver|BTCPay Server]] has implemented sender and receiver side of this protocol.
662662
* [[https://github.com/zkSNACKs/WalletWasabi/|Wasabi Wallet]] has merged sender's support.
663-
* [[https://github.com/JoinMarket-Org/joinmarket-clientserver|Join Market]] is in the process of implementing the protocol.
663+
* [[https://github.com/JoinMarket-Org/joinmarket-clientserver|Join Market]] has implemented sender and receiver side of this protocol.
664664
* [[https://github.com/bitcoinjs/payjoin-client|JavaScript sender implementation]].
665665
666666
==Backward compatibility==

0 commit comments

Comments
 (0)