[bisq-network/proposals] Using PoW for the P2P network messages as dos protection (#268)

Manuel notifications at github.com
Sat Nov 28 20:10:01 CET 2020


> Here was the latest version in detail: https://docs.google.com/document/d/1sTbm7SuIGQ5HWCwbxYfnklyMHB_-jIr7kAM9-ZSzzH8/edit

Yeah, I remember reviewing it some time ago, but I have a hard time following it :$ Sorry.

Privacy is a very difficult problem to solve because I've always thought that an undercover agent could harvest tons of information in fiat payment methods anyway (this is also pointed out in the comments of the document).

However, I agree that despite the above, it is our duty to make it as private as possible. If I correctly understood the privacy document of the off-chain protocol, what I am going to propose below is basically the same solution but with the difference that the bond-id is renewed when a trade is completed.

The info in the "hidden" order book could be blinded by combining also a bond id into the hash of the live offers, and by automatically renewing the bond id every time an offer is opened (only the hash of the bond id would be public). So only a third user that engages in a trade with Alice and Bob could know the bond id of both bonds and identify both parties for that specific trade. But if we limit to only one concurrent offer, this would be a rare event and could only happen because of a bug or if both traders are trying to break the rules, but it would not be a privacy issue for normal honest users that don't tweak Bisq code in order to overuse their bonds.

To prevent a user could quickly fake a trade confirmation and open another offer to get a new bond-id and try to overuse his bond, the prior bond-id hash must also be provided in the trade.   The new bond-id hash should include the previous hashed bond-id + current trade number (as far as I know the trade number is not public, right?).  If it is the first trade, the previous bond id would be an initial Bond set up not linked to any trade. 

If the above makes any sense, a workaround to allow concurrent trades is to have several separate bonds linked to the same payment account as @sqrrm suggests in the doc, and only one bond could be used for each trade.   I think that using the same bond for more than one trade makes the protocol much more complex.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/bisq-network/proposals/issues/268#issuecomment-735278144
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20201128/03172a5b/attachment.htm>


More information about the bisq-github mailing list