A peer-to-peer, cheating-proof multiplayer game
Go to file
2023-01-31 00:14:28 -05:00
src Add a brief description of the algorithm 2023-01-31 00:14:28 -05:00
.gitignore Add a brief description of the algorithm 2023-01-31 00:14:28 -05:00
Cargo.toml Add a brief description of the algorithm 2023-01-31 00:14:28 -05:00
LICENSE Initial commit 2023-01-31 05:05:22 +00:00
README.md Add a brief description of the algorithm 2023-01-31 00:14:28 -05:00

consensus

A peer-to-peer, cheating-proof multiplayer game

Algorithm

First, each player generates a private and public key, and shares their public key with everyone. When a player receives a public key, they share it with everyone too, to ensure that players send the same public key to everyone. This requires O(N^3) messages.

Next, each player chooses a number and signs it along with a timestamp and shares this signature with everyone. Again, when a player receives a signature, they should share it with everyone too. This ensures all players choose their number before seeing anyone else's choices. This also requires O(N^3) messages.

Once all signatures have been received, a player sends out their number and timestamp to everyone. Once again, when a player recieves a number and timestamp, they should share it with everyone.