xaya / libxayagame

MIT License
21 stars 19 forks source link

Hash commonly-known state in game channels #135

Open domob1812 opened 7 months ago

domob1812 commented 7 months ago

When participants in a game channel distribute state proofs to each other (when they send moves around), it is not necessary to include/sign full states, which might be big. Instead, signatures can be made on hashes of states, and states that are known to every participant already can be left out, too.

When putting data on chain for a dispute, the participant filing it can fill in any states matching the signed hashes. This would save bandwidth on the off-chain communication.

Note that this requires deterministic serialisation of states (instead of ParsedBoardState::Equals to allow for non-deterministic serialisation of e.g. protocol buffers), so that the signing of hashes works.