|
2 months ago | |
---|---|---|
src | 2 months ago | |
.gitignore | 2 months ago | |
Cargo.toml | 2 months ago | |
LICENSE | 2 months ago | |
README.md | 2 months ago |
README.md
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.