dashpay / dash

Dash - Reinventing Cryptocurrency
https://www.dash.org
MIT License
1.49k stars 1.2k forks source link

CoinJoin for SPV: Modify DSQ message #4966

Closed HashEngineering closed 1 year ago

HashEngineering commented 2 years ago

Describe the issue

For the dsq message, there is one field that is missing that would make this message useful and verifiable to an SPV client that obtains masternode lists from getqrinfo or getmnlistd.

The missing field is proTxHash for the masternode -- while this message does contain masternodeOutPoint to identify a masternode, SPV clients (via mnlistdiff and qrinfo) do not have access to the masternode outpoints for each masternode.

SPV clients could get around this by having a static list that correlates proTxHash to masternodeOutPoint, but over time this list would get out of date. Or the SPV client could check the dsq signature against masternodes, but this may prove to take too long.

HashEngineering commented 2 years ago

The dstx message may require the same changes as dsq