[bisq-network/bisq] Hash of ProtectedStoragePayload is non-deterministic (#3367)

Justin Carter notifications at github.com
Wed Oct 9 20:49:00 UTC 2019


> Still no explaination why it does not cause many of failed RefreshOfferMessage processing.

Just a thought: The original bytes we receive are in the way they were serialized from the last hop that the message takes towards us. So just because we receive them in a way that indicates a different hash in the sender, doesn't mean that `RefreshOfferMessage` has to be wrong because the sender we received the message from probably != the person who opened the offer.

In other words:
Alice opens Offer A -> aliceBytes -> Bob receives aliceBytes to Offer A and re-serializes (in order to relay) as bobsBytes -> Dan receives bobsBytes again deserializes to Offer A and stores it under hash(dansBytes).

It is possible that aliceBytes == dansBytes (so RefreshOfferMessage will look right) even though bobsBytes != dansBytes (so the bytes we receive would actually hash wrongly).
This plays a role in explaining why number of differences in bytes != bad RefreshOfferMessages.

Number of differences in bytes => indication that a direct peer serializes differently than us
Bad `RefreshOfferMessage` => indication that Offer origin serializes differently than us


-- 
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/bisq/issues/3367#issuecomment-540188388
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20191009/3a97a53c/attachment.html>


More information about the bisq-github mailing list