Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)AN
Posts
4
Comments
325
Joined
2 yr. ago

  • I think that would work, and that's essentially what I was trying to say when I'd said

    What you would want instead is for everyone to post a (salted) hash, and after the hashes are posted, reveal what the original numbers were and then publicly add them. Everyone could verify everyone else's numbers against those hashes.

    comment, as well as my other https://beehaw.org/comment/3531769

  • How do you do fair random pairing, though? If you are able to safely do that randomly, you might as well use that same method to do the random flip.

    Edit: And even ignoring collusion, there's still the issue of lying (or lying about lying). Only one of a pair would need to be a cheater for the system to fail, if the rest of the group is unable to determine which is the cheater.

  • I think you run into other issues, depending on OP's meaning of "untrusted." If people are paired off, whoever is in the last group to report can control the outcome. Either if there is a risk of collusion within the group or if one member doesn't like what the outcome is going to be they can claim whichever of them is reporting the group outcome is lying, or the person reporting actuality could lie.

    I think this vulnerability will come up most of the time when information is shared with only part of the group and not the entire group.

  • The last person would still decide the outcome. They could keep choosing values for whatever function until it produces their desired result and then post that.

    What you would want instead is for everyone to post a (salted) hash, and after the hashes are posted, reveal what the original numbers were and then publicly add them. Everyone could verify everyone else's numbers against those hashes.

  • I would go further to say that if "making someone do something" is the definition, literally any action taken by any government is authoritarian. If a government did not make people do things, it would functionally cease to be.

  • Specifically one of the imperfections is that the server and players are not trusted. If a player doesn't like the result, they could claim the server lied about what number they had picked, or the server could actually lie. The remaining players wouldn't know which one is telling the truth.

  • I think the responses with an encrypted/committed guess being made public, a public result, and then a reveal of the key, have it right for the scenario of people making guesses as to the result of a flip.

    Re-reading your question, though, refers more to there being an agreed result for a group of people as opposed to checking a guess. I think this would require a bit of a variation. The trivial method would be to use the previous method and assign "correct guess" to heads and "incorrect guess" as tails, but this only works if you don't believe that any two members are colluding with each other.

    Another solution would be to have each member generate a random number and encrypt it, and post the encrypted value. After all have been posted, everyone posts the key to decrypt their number, and adds up all the numbers together and takes the sum modulo the number of options (2 in the case of a coin) and matches it with a predetermined mapping. For instance, if 1 is heads and 0 is tails, and the sum of the numbers is 63752, 63752 % 2 = 0 which is tails.

    There are a couple gotchas to prevent errors. There has to be an agreed upon maximum number which is one less than a multiple of the number of options. For instance, if random numbers are allowed from 0 to 2 inclusively, there is a bias towards tails (0 % 2 == 0, 1 %2 == 1, 2 % 2 == 0). The other is the encryption algorithm would need to be chosen such that multiple keys can't easily be created to provide different valid decrypts. This would also likely require some padding to the clear text, which could be achieved by some member of the group posting some arbitrary text first, and then all members appending that text to their number before encrypting it.

  • You realize that distance is 4,700km, the distance between Lisbon and Moscow. It takes 3 days by train without a stopover. Public transportation doesn't make meetings any easier.

  • I don't think it's still going strong. SteamOS 2.0, the Debian based one that was on the old steam machines has been discontinued and is no longer supported. SteamOS 3.0, on the deck, is Arch based and is not yet officially supported on anything other than a Steam Deck.

  • The value isn't for existing PC gamers. It would be for people who are not tech literate, do not know how to build a PC, install an OS, or even tell if a given computer is powerful enough to run a particular game.

    I think that's the real strength (and more importantly, intent) of the Steam deck: to get people who aren't PC gamers to become PC gamers by making it as simple as a traditional console. Steam machines could provide a similar thing if there were a Steam Machine 1 Verified flag next to games.