mirror of
https://github.com/jwinterm/grin-wallet.git
synced 2026-10-21 09:08:32 +02:00
When downgrading a payment proof with no sender address (current -> V5/V4) we emit an all-zero placeholder key. Replace the speculative TODOs with the invariant: it can never be accepted as a real sender because verification binds the sender address into the signed message (contract::proofs::verify_promise_signature and the legacy verify_payment_proof via payment_proof_message), so a proof only validates against the address the verifier supplies. Addresses PR #754 review (slate.rs).