diff --git a/bip-0078.mediawiki b/bip-0078.mediawiki index 5c06c2fd..621e0d92 100644 --- a/bip-0078.mediawiki +++ b/bip-0078.mediawiki @@ -249,13 +249,13 @@ The sender should check the payjoin proposal before signing it to prevent a mali * If the sender's inputs' sequence numbers are all the same, check that the receiver's contributed inputs match those. * If minfeerate was specified, check that the estimated fee rate of the payjoin proposal is not less than this value. * Check that outputs from the original PSBT has not been modified except if: - * The output can contribute to fee (see below) - * The output does not belong to the sender. +** The output can contribute to fee (see below) +** The output does not belong to the sender. -If a fee output exists, (ie, maxadditionalfeecontribution= and additionalfeeoutputindex= have been set by the sender), the sender must checks: - * The amount that was substracted from the output's value is less or equal to maxadditionalfeecontribution. Let's call this amount actual contribution. - * The actual contribution is less or equals to the difference of absolute fee between the payjoin proposal and the original PSBT. (This make sure the contribution actually goes to fee) - * The actual contribution is less or equals to originalPSBTFeeRate * vsize(sender_input_type) * (count(original_psbt_inputs) - count(payjoin_proposal_inputs)). (This make sure the contribution only pays for additional inputs, see [[#fee-output|Fee output]] section) +If a [[#fee-output|fee ouptut]] exists, the sender must checks: +* The amount that was substracted from the output's value is less or equal to maxadditionalfeecontribution. Let's call this amount actual contribution. +* Make sure the contribution are only paying fee: The actual contribution is less or equals to the difference of absolute fee between the payjoin proposal and the original PSBT. +* Make sure the contribution are only paying for fee incurred by additional inputs: actual contribution is less or equals to originalPSBTFeeRate * vsize(sender_input_type) * (count(original_psbt_inputs) - count(payjoin_proposal_inputs)). (see [[#fee-output|Fee output]] section) The sender must be careful to only sign the inputs that were present in the original PSBT and nothing else.