How to certify a secret decision revealed on a delay in a play-by-post game?
up vote
12
down vote
favorite
In a play-by-post game that requires a player to commit to a secret decision and later reveal that decision publicly, how can a player certify that they did so honestly without just relying on good faith? Consider the following example.
- Alice commits to a decision, like pre-programming an action she will take. An onlooker might notice she's doing something but they wouldn't know the particulars.
- Though Bob doesn't know exactly what Alice is up to, he commits to a decision in response to that, like reacting to stop her. Resolving his decision will depend on resolving her decision.
- Alice has to reveal what her committed decision was after the fact in order to resolve it at this point along with Bob's reaction to it. If she's being honest or has a way to certify what her decision was, this is fine. If she is able to lie, she could change her decision retroactively.
Are there common tools, techniques, or conventions to support this? At a table, Alice could simply write her decision in a folded note card and reveal it later; or in a board game, she could play her action card face down and reveal it later. These common table conventions don't translate well to online play. So, how can Alice certify her secret decision to be revealed on a delay?
Assume the game has a GM but that the GM is also a player in need of certifying their decisions and can't act as a proxy for the other players.
play-by-post
add a comment |
up vote
12
down vote
favorite
In a play-by-post game that requires a player to commit to a secret decision and later reveal that decision publicly, how can a player certify that they did so honestly without just relying on good faith? Consider the following example.
- Alice commits to a decision, like pre-programming an action she will take. An onlooker might notice she's doing something but they wouldn't know the particulars.
- Though Bob doesn't know exactly what Alice is up to, he commits to a decision in response to that, like reacting to stop her. Resolving his decision will depend on resolving her decision.
- Alice has to reveal what her committed decision was after the fact in order to resolve it at this point along with Bob's reaction to it. If she's being honest or has a way to certify what her decision was, this is fine. If she is able to lie, she could change her decision retroactively.
Are there common tools, techniques, or conventions to support this? At a table, Alice could simply write her decision in a folded note card and reveal it later; or in a board game, she could play her action card face down and reveal it later. These common table conventions don't translate well to online play. So, how can Alice certify her secret decision to be revealed on a delay?
Assume the game has a GM but that the GM is also a player in need of certifying their decisions and can't act as a proxy for the other players.
play-by-post
Is this a) freeform, b) GMless?
– SevenSidedDie♦
5 hours ago
Edited to explain the nature of the GM. I can't answer whether it's "freeform" without a bit more clarity. What do you mean, and what detail is important about it?
– Bloodcinder
5 hours ago
Freeform is where there’s no rules, just commonly accepted best practices of behaviour. It’s common in forum PbP, especially the tradition that grew out of fandom rather than from existing RPG culture. (It can make a difference, and we have a tag for it, so I wondered.)
– SevenSidedDie♦
48 mins ago
add a comment |
up vote
12
down vote
favorite
up vote
12
down vote
favorite
In a play-by-post game that requires a player to commit to a secret decision and later reveal that decision publicly, how can a player certify that they did so honestly without just relying on good faith? Consider the following example.
- Alice commits to a decision, like pre-programming an action she will take. An onlooker might notice she's doing something but they wouldn't know the particulars.
- Though Bob doesn't know exactly what Alice is up to, he commits to a decision in response to that, like reacting to stop her. Resolving his decision will depend on resolving her decision.
- Alice has to reveal what her committed decision was after the fact in order to resolve it at this point along with Bob's reaction to it. If she's being honest or has a way to certify what her decision was, this is fine. If she is able to lie, she could change her decision retroactively.
Are there common tools, techniques, or conventions to support this? At a table, Alice could simply write her decision in a folded note card and reveal it later; or in a board game, she could play her action card face down and reveal it later. These common table conventions don't translate well to online play. So, how can Alice certify her secret decision to be revealed on a delay?
Assume the game has a GM but that the GM is also a player in need of certifying their decisions and can't act as a proxy for the other players.
play-by-post
In a play-by-post game that requires a player to commit to a secret decision and later reveal that decision publicly, how can a player certify that they did so honestly without just relying on good faith? Consider the following example.
- Alice commits to a decision, like pre-programming an action she will take. An onlooker might notice she's doing something but they wouldn't know the particulars.
- Though Bob doesn't know exactly what Alice is up to, he commits to a decision in response to that, like reacting to stop her. Resolving his decision will depend on resolving her decision.
- Alice has to reveal what her committed decision was after the fact in order to resolve it at this point along with Bob's reaction to it. If she's being honest or has a way to certify what her decision was, this is fine. If she is able to lie, she could change her decision retroactively.
Are there common tools, techniques, or conventions to support this? At a table, Alice could simply write her decision in a folded note card and reveal it later; or in a board game, she could play her action card face down and reveal it later. These common table conventions don't translate well to online play. So, how can Alice certify her secret decision to be revealed on a delay?
Assume the game has a GM but that the GM is also a player in need of certifying their decisions and can't act as a proxy for the other players.
play-by-post
play-by-post
edited 5 hours ago
asked 12 hours ago
Bloodcinder
17.8k258117
17.8k258117
Is this a) freeform, b) GMless?
– SevenSidedDie♦
5 hours ago
Edited to explain the nature of the GM. I can't answer whether it's "freeform" without a bit more clarity. What do you mean, and what detail is important about it?
– Bloodcinder
5 hours ago
Freeform is where there’s no rules, just commonly accepted best practices of behaviour. It’s common in forum PbP, especially the tradition that grew out of fandom rather than from existing RPG culture. (It can make a difference, and we have a tag for it, so I wondered.)
– SevenSidedDie♦
48 mins ago
add a comment |
Is this a) freeform, b) GMless?
– SevenSidedDie♦
5 hours ago
Edited to explain the nature of the GM. I can't answer whether it's "freeform" without a bit more clarity. What do you mean, and what detail is important about it?
– Bloodcinder
5 hours ago
Freeform is where there’s no rules, just commonly accepted best practices of behaviour. It’s common in forum PbP, especially the tradition that grew out of fandom rather than from existing RPG culture. (It can make a difference, and we have a tag for it, so I wondered.)
– SevenSidedDie♦
48 mins ago
Is this a) freeform, b) GMless?
– SevenSidedDie♦
5 hours ago
Is this a) freeform, b) GMless?
– SevenSidedDie♦
5 hours ago
Edited to explain the nature of the GM. I can't answer whether it's "freeform" without a bit more clarity. What do you mean, and what detail is important about it?
– Bloodcinder
5 hours ago
Edited to explain the nature of the GM. I can't answer whether it's "freeform" without a bit more clarity. What do you mean, and what detail is important about it?
– Bloodcinder
5 hours ago
Freeform is where there’s no rules, just commonly accepted best practices of behaviour. It’s common in forum PbP, especially the tradition that grew out of fandom rather than from existing RPG culture. (It can make a difference, and we have a tag for it, so I wondered.)
– SevenSidedDie♦
48 mins ago
Freeform is where there’s no rules, just commonly accepted best practices of behaviour. It’s common in forum PbP, especially the tradition that grew out of fandom rather than from existing RPG culture. (It can make a difference, and we have a tag for it, so I wondered.)
– SevenSidedDie♦
48 mins ago
add a comment |
6 Answers
6
active
oldest
votes
up vote
47
down vote
Have Alice generate and publish an SHA-256 hash of her action.
SHA-256 is a computationally-secure (to reasonable approximation) algorithm that converts a given string into an unintelligible hexadecimal hash. There are online implementations that will compute SHA256 for you, for instance, here.
The idea is this:
- Alice decides her action - say, "I cast Fireball at Bob"
- Alice privately records that exact text
- Alice enters that text into an SHA256 generator, producing a meaningless jumble of characters - A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E
- Alice publicly announces "I've planned an action; its SHA-256 is A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E"
Now, Bob cannot tell what Alice has planned because the SHA-256 is not reversible; there's no way to get from the hash back to the action.
Later, when Alice reveals her plan, she gives the exact text she prepared earlier. If Bob doesn't trust her, he can simply repeat the SHA-256 encryption, and verify that the signatures match.
If Alice suspects that Bob may guess her action, then she can make things harder by adding an extra, irrelevant component to the action before computing the SHA-256. For instance, if Alice records, signs, and later reveals "I cast Fireball at Bob (pistachio)", then Bob would not be able to guess and verify the action without also guessing the extra "(pistachio)". This is known as using a "salt".
I've actually done this in some manner. Not in an rpg setting, but hashing a prepared statement.
– Draco18s
8 hours ago
@Draco18s the term here is SHA commitment.
– svavil
6 hours ago
I know, and that's what I mean: I hashed a prepared statement with the intent of proving a point about behavior (I was predicting what someone would say in response to something I said).
– Draco18s
4 hours ago
2
In ye olde days, scientists used anagrams to prove their priority without disclosing the discovery. See scienceblogs.com/principles/2014/12/10/… . In our time, anagrams would be cracked almost instantly by a program, so hashing (or outright encrypting) is the way to go.
– IMil
3 hours ago
Note that this becomes increasingly insecure the more you have a pretty good idea of what the text will be. If there is a set of 10 common actions, like ‘I cast fireball’ or ‘I cast heal’ it wouldn’t take a long time for someone to compile a list of these and try to hash them, possibly in combination with the other players’ names.
– Sebastiaan van den Broek
4 mins ago
add a comment |
up vote
5
down vote
Send the decisions to a trusted third party.
When the time comes to reveal the action, the third party will then do so.
This has the advantage of being simple and doesn't require any technological know-how.
1
It's not simple at all, as it adds an extra communication channel for every player in the game, and replaces technological know-how with social know-how instead, something that is far less reliable. These are disadvantages!
– Nij
9 hours ago
2
This seems to count as "just relying on good faith."
– Bloodcinder
9 hours ago
add a comment |
up vote
3
down vote
Use a communication system like facebook that allows you to set up visibility on each post.
Post a publicly visible post saying
Alice glances at her spell book then gestures, ready to begin casting a spell.
Post a private post saying
If X happens Alice will cast fireball at Y
If the trigger happens change the privacy of the post to public.
The timestamp and edit history should be able to show that the post has not been modified other than to change the visibility.
If you have a DM or similar in the game then you could also give them access to the private posts for their information.
5
The potential issue with this is that you could just make multiple private posts with different courses of action, and just make public the one that you decide on after the fact.
– V2Blast
7 hours ago
1
@V2Blast not if you provide a link to the (currently) private post in advance - if Facebook works correctly, it shouldn't reveal the post to others until it's made public, but the url won't change
– Zac Faragher
5 hours ago
@ZacFaragher: Ah, interesting idea.
– V2Blast
2 hours ago
add a comment |
up vote
2
down vote
An alternative to hash commitment that requires less technical knowhow: do what scientists used to do to establish priority for an idea until they were ready to publish. Instead of a SHA, publish a signature that is easily derived from the message by a human but can't be easily reversed.
One simple "signature" is just to show how many times each letter appears in the message, but not their order. Then when it's time to reveal, it's easy to verify. So Alice can sign the message
I betray Bob
as
ABBBEIORTY
One obvious problem is that for such a short, straightforward message, Bob can probably guess what is meant: there are a lot of Bs and one O, so it's probably about him. He can also rule out some possibilities he's worried about: the message clearly can't include fireball, because there's no F; but it could include betray.
Alice can prevent this by speaking somewhat more cryptically or using a few more words than necessary. If Alice publishes
AAABDDDDEEEEEFGGGHHHHHHIIIIIILLLLMMNOOOOOORRRRRSSTTTTTTTUUUWW
it's hard to guess that she means
Though allied with Robert, I grow tired of him and sell him out to the guards.
Just for fun, note that this message does leave open the possibility of a fireball, in case Alice thinks that's something Bob would want to rule out.
New contributor
1
I know what your last paragraph means ("Just for fun...") but it would help if you clarified it more, since it's a bit terse and obtuse.
– Bloodcinder
5 hours ago
@Bloodcinder Feel free to make/suggest an edit. I can't fix it because I don't know what it is you think is unclear.
– amalloy
3 hours ago
add a comment |
up vote
1
down vote
Trust
This one isn't always appropriate - but if you play with a constant group of friends, then simply trusting that they are being honest is the way I usually play games. This works for me, because I don't generally play with randoms or at events outside of home.
Obviously this won't always work - not everyone has the required integrity to resist the urge to cheat. But if you're playing a longer campaign with a consistent group, you'll learn pretty quickly using this method whether it's actually viable.
If not, then the other methods mentioned above are steller. However, as far as simplicity and ease to implement is concerned, this is by far the easiest.
add a comment |
up vote
-1
down vote
Alice make decision message -> [D]
Encrypt [D] with random private key [PK], make cryptogram -> [C]
Lots of algorithms can be used here.
Send [C] to Bob.
When event have to occur, Bob request [PK] from Alice.
Alice Send [PK], Bob can translate [C]->[D]
it is hard to make [C] to desired other decision message[D2] with other [PK2]
Show programmer in your team this sequence. He will understand if he have learn.
New contributor
2
And if there's no programmer available, how does this help anybody? The answer seems to be a much worse version of the answer posted by Chowlett hours ago.
– Nij
2 hours ago
add a comment |
6 Answers
6
active
oldest
votes
6 Answers
6
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
47
down vote
Have Alice generate and publish an SHA-256 hash of her action.
SHA-256 is a computationally-secure (to reasonable approximation) algorithm that converts a given string into an unintelligible hexadecimal hash. There are online implementations that will compute SHA256 for you, for instance, here.
The idea is this:
- Alice decides her action - say, "I cast Fireball at Bob"
- Alice privately records that exact text
- Alice enters that text into an SHA256 generator, producing a meaningless jumble of characters - A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E
- Alice publicly announces "I've planned an action; its SHA-256 is A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E"
Now, Bob cannot tell what Alice has planned because the SHA-256 is not reversible; there's no way to get from the hash back to the action.
Later, when Alice reveals her plan, she gives the exact text she prepared earlier. If Bob doesn't trust her, he can simply repeat the SHA-256 encryption, and verify that the signatures match.
If Alice suspects that Bob may guess her action, then she can make things harder by adding an extra, irrelevant component to the action before computing the SHA-256. For instance, if Alice records, signs, and later reveals "I cast Fireball at Bob (pistachio)", then Bob would not be able to guess and verify the action without also guessing the extra "(pistachio)". This is known as using a "salt".
I've actually done this in some manner. Not in an rpg setting, but hashing a prepared statement.
– Draco18s
8 hours ago
@Draco18s the term here is SHA commitment.
– svavil
6 hours ago
I know, and that's what I mean: I hashed a prepared statement with the intent of proving a point about behavior (I was predicting what someone would say in response to something I said).
– Draco18s
4 hours ago
2
In ye olde days, scientists used anagrams to prove their priority without disclosing the discovery. See scienceblogs.com/principles/2014/12/10/… . In our time, anagrams would be cracked almost instantly by a program, so hashing (or outright encrypting) is the way to go.
– IMil
3 hours ago
Note that this becomes increasingly insecure the more you have a pretty good idea of what the text will be. If there is a set of 10 common actions, like ‘I cast fireball’ or ‘I cast heal’ it wouldn’t take a long time for someone to compile a list of these and try to hash them, possibly in combination with the other players’ names.
– Sebastiaan van den Broek
4 mins ago
add a comment |
up vote
47
down vote
Have Alice generate and publish an SHA-256 hash of her action.
SHA-256 is a computationally-secure (to reasonable approximation) algorithm that converts a given string into an unintelligible hexadecimal hash. There are online implementations that will compute SHA256 for you, for instance, here.
The idea is this:
- Alice decides her action - say, "I cast Fireball at Bob"
- Alice privately records that exact text
- Alice enters that text into an SHA256 generator, producing a meaningless jumble of characters - A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E
- Alice publicly announces "I've planned an action; its SHA-256 is A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E"
Now, Bob cannot tell what Alice has planned because the SHA-256 is not reversible; there's no way to get from the hash back to the action.
Later, when Alice reveals her plan, she gives the exact text she prepared earlier. If Bob doesn't trust her, he can simply repeat the SHA-256 encryption, and verify that the signatures match.
If Alice suspects that Bob may guess her action, then she can make things harder by adding an extra, irrelevant component to the action before computing the SHA-256. For instance, if Alice records, signs, and later reveals "I cast Fireball at Bob (pistachio)", then Bob would not be able to guess and verify the action without also guessing the extra "(pistachio)". This is known as using a "salt".
I've actually done this in some manner. Not in an rpg setting, but hashing a prepared statement.
– Draco18s
8 hours ago
@Draco18s the term here is SHA commitment.
– svavil
6 hours ago
I know, and that's what I mean: I hashed a prepared statement with the intent of proving a point about behavior (I was predicting what someone would say in response to something I said).
– Draco18s
4 hours ago
2
In ye olde days, scientists used anagrams to prove their priority without disclosing the discovery. See scienceblogs.com/principles/2014/12/10/… . In our time, anagrams would be cracked almost instantly by a program, so hashing (or outright encrypting) is the way to go.
– IMil
3 hours ago
Note that this becomes increasingly insecure the more you have a pretty good idea of what the text will be. If there is a set of 10 common actions, like ‘I cast fireball’ or ‘I cast heal’ it wouldn’t take a long time for someone to compile a list of these and try to hash them, possibly in combination with the other players’ names.
– Sebastiaan van den Broek
4 mins ago
add a comment |
up vote
47
down vote
up vote
47
down vote
Have Alice generate and publish an SHA-256 hash of her action.
SHA-256 is a computationally-secure (to reasonable approximation) algorithm that converts a given string into an unintelligible hexadecimal hash. There are online implementations that will compute SHA256 for you, for instance, here.
The idea is this:
- Alice decides her action - say, "I cast Fireball at Bob"
- Alice privately records that exact text
- Alice enters that text into an SHA256 generator, producing a meaningless jumble of characters - A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E
- Alice publicly announces "I've planned an action; its SHA-256 is A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E"
Now, Bob cannot tell what Alice has planned because the SHA-256 is not reversible; there's no way to get from the hash back to the action.
Later, when Alice reveals her plan, she gives the exact text she prepared earlier. If Bob doesn't trust her, he can simply repeat the SHA-256 encryption, and verify that the signatures match.
If Alice suspects that Bob may guess her action, then she can make things harder by adding an extra, irrelevant component to the action before computing the SHA-256. For instance, if Alice records, signs, and later reveals "I cast Fireball at Bob (pistachio)", then Bob would not be able to guess and verify the action without also guessing the extra "(pistachio)". This is known as using a "salt".
Have Alice generate and publish an SHA-256 hash of her action.
SHA-256 is a computationally-secure (to reasonable approximation) algorithm that converts a given string into an unintelligible hexadecimal hash. There are online implementations that will compute SHA256 for you, for instance, here.
The idea is this:
- Alice decides her action - say, "I cast Fireball at Bob"
- Alice privately records that exact text
- Alice enters that text into an SHA256 generator, producing a meaningless jumble of characters - A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E
- Alice publicly announces "I've planned an action; its SHA-256 is A0FC4543FDBA266006F1F9FA818183710A8C5CA80613DA109B8A9DBA194DEC4E"
Now, Bob cannot tell what Alice has planned because the SHA-256 is not reversible; there's no way to get from the hash back to the action.
Later, when Alice reveals her plan, she gives the exact text she prepared earlier. If Bob doesn't trust her, he can simply repeat the SHA-256 encryption, and verify that the signatures match.
If Alice suspects that Bob may guess her action, then she can make things harder by adding an extra, irrelevant component to the action before computing the SHA-256. For instance, if Alice records, signs, and later reveals "I cast Fireball at Bob (pistachio)", then Bob would not be able to guess and verify the action without also guessing the extra "(pistachio)". This is known as using a "salt".
answered 12 hours ago
Chowlett
48149
48149
I've actually done this in some manner. Not in an rpg setting, but hashing a prepared statement.
– Draco18s
8 hours ago
@Draco18s the term here is SHA commitment.
– svavil
6 hours ago
I know, and that's what I mean: I hashed a prepared statement with the intent of proving a point about behavior (I was predicting what someone would say in response to something I said).
– Draco18s
4 hours ago
2
In ye olde days, scientists used anagrams to prove their priority without disclosing the discovery. See scienceblogs.com/principles/2014/12/10/… . In our time, anagrams would be cracked almost instantly by a program, so hashing (or outright encrypting) is the way to go.
– IMil
3 hours ago
Note that this becomes increasingly insecure the more you have a pretty good idea of what the text will be. If there is a set of 10 common actions, like ‘I cast fireball’ or ‘I cast heal’ it wouldn’t take a long time for someone to compile a list of these and try to hash them, possibly in combination with the other players’ names.
– Sebastiaan van den Broek
4 mins ago
add a comment |
I've actually done this in some manner. Not in an rpg setting, but hashing a prepared statement.
– Draco18s
8 hours ago
@Draco18s the term here is SHA commitment.
– svavil
6 hours ago
I know, and that's what I mean: I hashed a prepared statement with the intent of proving a point about behavior (I was predicting what someone would say in response to something I said).
– Draco18s
4 hours ago
2
In ye olde days, scientists used anagrams to prove their priority without disclosing the discovery. See scienceblogs.com/principles/2014/12/10/… . In our time, anagrams would be cracked almost instantly by a program, so hashing (or outright encrypting) is the way to go.
– IMil
3 hours ago
Note that this becomes increasingly insecure the more you have a pretty good idea of what the text will be. If there is a set of 10 common actions, like ‘I cast fireball’ or ‘I cast heal’ it wouldn’t take a long time for someone to compile a list of these and try to hash them, possibly in combination with the other players’ names.
– Sebastiaan van den Broek
4 mins ago
I've actually done this in some manner. Not in an rpg setting, but hashing a prepared statement.
– Draco18s
8 hours ago
I've actually done this in some manner. Not in an rpg setting, but hashing a prepared statement.
– Draco18s
8 hours ago
@Draco18s the term here is SHA commitment.
– svavil
6 hours ago
@Draco18s the term here is SHA commitment.
– svavil
6 hours ago
I know, and that's what I mean: I hashed a prepared statement with the intent of proving a point about behavior (I was predicting what someone would say in response to something I said).
– Draco18s
4 hours ago
I know, and that's what I mean: I hashed a prepared statement with the intent of proving a point about behavior (I was predicting what someone would say in response to something I said).
– Draco18s
4 hours ago
2
2
In ye olde days, scientists used anagrams to prove their priority without disclosing the discovery. See scienceblogs.com/principles/2014/12/10/… . In our time, anagrams would be cracked almost instantly by a program, so hashing (or outright encrypting) is the way to go.
– IMil
3 hours ago
In ye olde days, scientists used anagrams to prove their priority without disclosing the discovery. See scienceblogs.com/principles/2014/12/10/… . In our time, anagrams would be cracked almost instantly by a program, so hashing (or outright encrypting) is the way to go.
– IMil
3 hours ago
Note that this becomes increasingly insecure the more you have a pretty good idea of what the text will be. If there is a set of 10 common actions, like ‘I cast fireball’ or ‘I cast heal’ it wouldn’t take a long time for someone to compile a list of these and try to hash them, possibly in combination with the other players’ names.
– Sebastiaan van den Broek
4 mins ago
Note that this becomes increasingly insecure the more you have a pretty good idea of what the text will be. If there is a set of 10 common actions, like ‘I cast fireball’ or ‘I cast heal’ it wouldn’t take a long time for someone to compile a list of these and try to hash them, possibly in combination with the other players’ names.
– Sebastiaan van den Broek
4 mins ago
add a comment |
up vote
5
down vote
Send the decisions to a trusted third party.
When the time comes to reveal the action, the third party will then do so.
This has the advantage of being simple and doesn't require any technological know-how.
1
It's not simple at all, as it adds an extra communication channel for every player in the game, and replaces technological know-how with social know-how instead, something that is far less reliable. These are disadvantages!
– Nij
9 hours ago
2
This seems to count as "just relying on good faith."
– Bloodcinder
9 hours ago
add a comment |
up vote
5
down vote
Send the decisions to a trusted third party.
When the time comes to reveal the action, the third party will then do so.
This has the advantage of being simple and doesn't require any technological know-how.
1
It's not simple at all, as it adds an extra communication channel for every player in the game, and replaces technological know-how with social know-how instead, something that is far less reliable. These are disadvantages!
– Nij
9 hours ago
2
This seems to count as "just relying on good faith."
– Bloodcinder
9 hours ago
add a comment |
up vote
5
down vote
up vote
5
down vote
Send the decisions to a trusted third party.
When the time comes to reveal the action, the third party will then do so.
This has the advantage of being simple and doesn't require any technological know-how.
Send the decisions to a trusted third party.
When the time comes to reveal the action, the third party will then do so.
This has the advantage of being simple and doesn't require any technological know-how.
answered 11 hours ago
Destruktor
2,0361443
2,0361443
1
It's not simple at all, as it adds an extra communication channel for every player in the game, and replaces technological know-how with social know-how instead, something that is far less reliable. These are disadvantages!
– Nij
9 hours ago
2
This seems to count as "just relying on good faith."
– Bloodcinder
9 hours ago
add a comment |
1
It's not simple at all, as it adds an extra communication channel for every player in the game, and replaces technological know-how with social know-how instead, something that is far less reliable. These are disadvantages!
– Nij
9 hours ago
2
This seems to count as "just relying on good faith."
– Bloodcinder
9 hours ago
1
1
It's not simple at all, as it adds an extra communication channel for every player in the game, and replaces technological know-how with social know-how instead, something that is far less reliable. These are disadvantages!
– Nij
9 hours ago
It's not simple at all, as it adds an extra communication channel for every player in the game, and replaces technological know-how with social know-how instead, something that is far less reliable. These are disadvantages!
– Nij
9 hours ago
2
2
This seems to count as "just relying on good faith."
– Bloodcinder
9 hours ago
This seems to count as "just relying on good faith."
– Bloodcinder
9 hours ago
add a comment |
up vote
3
down vote
Use a communication system like facebook that allows you to set up visibility on each post.
Post a publicly visible post saying
Alice glances at her spell book then gestures, ready to begin casting a spell.
Post a private post saying
If X happens Alice will cast fireball at Y
If the trigger happens change the privacy of the post to public.
The timestamp and edit history should be able to show that the post has not been modified other than to change the visibility.
If you have a DM or similar in the game then you could also give them access to the private posts for their information.
5
The potential issue with this is that you could just make multiple private posts with different courses of action, and just make public the one that you decide on after the fact.
– V2Blast
7 hours ago
1
@V2Blast not if you provide a link to the (currently) private post in advance - if Facebook works correctly, it shouldn't reveal the post to others until it's made public, but the url won't change
– Zac Faragher
5 hours ago
@ZacFaragher: Ah, interesting idea.
– V2Blast
2 hours ago
add a comment |
up vote
3
down vote
Use a communication system like facebook that allows you to set up visibility on each post.
Post a publicly visible post saying
Alice glances at her spell book then gestures, ready to begin casting a spell.
Post a private post saying
If X happens Alice will cast fireball at Y
If the trigger happens change the privacy of the post to public.
The timestamp and edit history should be able to show that the post has not been modified other than to change the visibility.
If you have a DM or similar in the game then you could also give them access to the private posts for their information.
5
The potential issue with this is that you could just make multiple private posts with different courses of action, and just make public the one that you decide on after the fact.
– V2Blast
7 hours ago
1
@V2Blast not if you provide a link to the (currently) private post in advance - if Facebook works correctly, it shouldn't reveal the post to others until it's made public, but the url won't change
– Zac Faragher
5 hours ago
@ZacFaragher: Ah, interesting idea.
– V2Blast
2 hours ago
add a comment |
up vote
3
down vote
up vote
3
down vote
Use a communication system like facebook that allows you to set up visibility on each post.
Post a publicly visible post saying
Alice glances at her spell book then gestures, ready to begin casting a spell.
Post a private post saying
If X happens Alice will cast fireball at Y
If the trigger happens change the privacy of the post to public.
The timestamp and edit history should be able to show that the post has not been modified other than to change the visibility.
If you have a DM or similar in the game then you could also give them access to the private posts for their information.
Use a communication system like facebook that allows you to set up visibility on each post.
Post a publicly visible post saying
Alice glances at her spell book then gestures, ready to begin casting a spell.
Post a private post saying
If X happens Alice will cast fireball at Y
If the trigger happens change the privacy of the post to public.
The timestamp and edit history should be able to show that the post has not been modified other than to change the visibility.
If you have a DM or similar in the game then you could also give them access to the private posts for their information.
answered 8 hours ago
Tim B
5,1761246
5,1761246
5
The potential issue with this is that you could just make multiple private posts with different courses of action, and just make public the one that you decide on after the fact.
– V2Blast
7 hours ago
1
@V2Blast not if you provide a link to the (currently) private post in advance - if Facebook works correctly, it shouldn't reveal the post to others until it's made public, but the url won't change
– Zac Faragher
5 hours ago
@ZacFaragher: Ah, interesting idea.
– V2Blast
2 hours ago
add a comment |
5
The potential issue with this is that you could just make multiple private posts with different courses of action, and just make public the one that you decide on after the fact.
– V2Blast
7 hours ago
1
@V2Blast not if you provide a link to the (currently) private post in advance - if Facebook works correctly, it shouldn't reveal the post to others until it's made public, but the url won't change
– Zac Faragher
5 hours ago
@ZacFaragher: Ah, interesting idea.
– V2Blast
2 hours ago
5
5
The potential issue with this is that you could just make multiple private posts with different courses of action, and just make public the one that you decide on after the fact.
– V2Blast
7 hours ago
The potential issue with this is that you could just make multiple private posts with different courses of action, and just make public the one that you decide on after the fact.
– V2Blast
7 hours ago
1
1
@V2Blast not if you provide a link to the (currently) private post in advance - if Facebook works correctly, it shouldn't reveal the post to others until it's made public, but the url won't change
– Zac Faragher
5 hours ago
@V2Blast not if you provide a link to the (currently) private post in advance - if Facebook works correctly, it shouldn't reveal the post to others until it's made public, but the url won't change
– Zac Faragher
5 hours ago
@ZacFaragher: Ah, interesting idea.
– V2Blast
2 hours ago
@ZacFaragher: Ah, interesting idea.
– V2Blast
2 hours ago
add a comment |
up vote
2
down vote
An alternative to hash commitment that requires less technical knowhow: do what scientists used to do to establish priority for an idea until they were ready to publish. Instead of a SHA, publish a signature that is easily derived from the message by a human but can't be easily reversed.
One simple "signature" is just to show how many times each letter appears in the message, but not their order. Then when it's time to reveal, it's easy to verify. So Alice can sign the message
I betray Bob
as
ABBBEIORTY
One obvious problem is that for such a short, straightforward message, Bob can probably guess what is meant: there are a lot of Bs and one O, so it's probably about him. He can also rule out some possibilities he's worried about: the message clearly can't include fireball, because there's no F; but it could include betray.
Alice can prevent this by speaking somewhat more cryptically or using a few more words than necessary. If Alice publishes
AAABDDDDEEEEEFGGGHHHHHHIIIIIILLLLMMNOOOOOORRRRRSSTTTTTTTUUUWW
it's hard to guess that she means
Though allied with Robert, I grow tired of him and sell him out to the guards.
Just for fun, note that this message does leave open the possibility of a fireball, in case Alice thinks that's something Bob would want to rule out.
New contributor
1
I know what your last paragraph means ("Just for fun...") but it would help if you clarified it more, since it's a bit terse and obtuse.
– Bloodcinder
5 hours ago
@Bloodcinder Feel free to make/suggest an edit. I can't fix it because I don't know what it is you think is unclear.
– amalloy
3 hours ago
add a comment |
up vote
2
down vote
An alternative to hash commitment that requires less technical knowhow: do what scientists used to do to establish priority for an idea until they were ready to publish. Instead of a SHA, publish a signature that is easily derived from the message by a human but can't be easily reversed.
One simple "signature" is just to show how many times each letter appears in the message, but not their order. Then when it's time to reveal, it's easy to verify. So Alice can sign the message
I betray Bob
as
ABBBEIORTY
One obvious problem is that for such a short, straightforward message, Bob can probably guess what is meant: there are a lot of Bs and one O, so it's probably about him. He can also rule out some possibilities he's worried about: the message clearly can't include fireball, because there's no F; but it could include betray.
Alice can prevent this by speaking somewhat more cryptically or using a few more words than necessary. If Alice publishes
AAABDDDDEEEEEFGGGHHHHHHIIIIIILLLLMMNOOOOOORRRRRSSTTTTTTTUUUWW
it's hard to guess that she means
Though allied with Robert, I grow tired of him and sell him out to the guards.
Just for fun, note that this message does leave open the possibility of a fireball, in case Alice thinks that's something Bob would want to rule out.
New contributor
1
I know what your last paragraph means ("Just for fun...") but it would help if you clarified it more, since it's a bit terse and obtuse.
– Bloodcinder
5 hours ago
@Bloodcinder Feel free to make/suggest an edit. I can't fix it because I don't know what it is you think is unclear.
– amalloy
3 hours ago
add a comment |
up vote
2
down vote
up vote
2
down vote
An alternative to hash commitment that requires less technical knowhow: do what scientists used to do to establish priority for an idea until they were ready to publish. Instead of a SHA, publish a signature that is easily derived from the message by a human but can't be easily reversed.
One simple "signature" is just to show how many times each letter appears in the message, but not their order. Then when it's time to reveal, it's easy to verify. So Alice can sign the message
I betray Bob
as
ABBBEIORTY
One obvious problem is that for such a short, straightforward message, Bob can probably guess what is meant: there are a lot of Bs and one O, so it's probably about him. He can also rule out some possibilities he's worried about: the message clearly can't include fireball, because there's no F; but it could include betray.
Alice can prevent this by speaking somewhat more cryptically or using a few more words than necessary. If Alice publishes
AAABDDDDEEEEEFGGGHHHHHHIIIIIILLLLMMNOOOOOORRRRRSSTTTTTTTUUUWW
it's hard to guess that she means
Though allied with Robert, I grow tired of him and sell him out to the guards.
Just for fun, note that this message does leave open the possibility of a fireball, in case Alice thinks that's something Bob would want to rule out.
New contributor
An alternative to hash commitment that requires less technical knowhow: do what scientists used to do to establish priority for an idea until they were ready to publish. Instead of a SHA, publish a signature that is easily derived from the message by a human but can't be easily reversed.
One simple "signature" is just to show how many times each letter appears in the message, but not their order. Then when it's time to reveal, it's easy to verify. So Alice can sign the message
I betray Bob
as
ABBBEIORTY
One obvious problem is that for such a short, straightforward message, Bob can probably guess what is meant: there are a lot of Bs and one O, so it's probably about him. He can also rule out some possibilities he's worried about: the message clearly can't include fireball, because there's no F; but it could include betray.
Alice can prevent this by speaking somewhat more cryptically or using a few more words than necessary. If Alice publishes
AAABDDDDEEEEEFGGGHHHHHHIIIIIILLLLMMNOOOOOORRRRRSSTTTTTTTUUUWW
it's hard to guess that she means
Though allied with Robert, I grow tired of him and sell him out to the guards.
Just for fun, note that this message does leave open the possibility of a fireball, in case Alice thinks that's something Bob would want to rule out.
New contributor
edited 5 hours ago
New contributor
answered 6 hours ago
amalloy
1234
1234
New contributor
New contributor
1
I know what your last paragraph means ("Just for fun...") but it would help if you clarified it more, since it's a bit terse and obtuse.
– Bloodcinder
5 hours ago
@Bloodcinder Feel free to make/suggest an edit. I can't fix it because I don't know what it is you think is unclear.
– amalloy
3 hours ago
add a comment |
1
I know what your last paragraph means ("Just for fun...") but it would help if you clarified it more, since it's a bit terse and obtuse.
– Bloodcinder
5 hours ago
@Bloodcinder Feel free to make/suggest an edit. I can't fix it because I don't know what it is you think is unclear.
– amalloy
3 hours ago
1
1
I know what your last paragraph means ("Just for fun...") but it would help if you clarified it more, since it's a bit terse and obtuse.
– Bloodcinder
5 hours ago
I know what your last paragraph means ("Just for fun...") but it would help if you clarified it more, since it's a bit terse and obtuse.
– Bloodcinder
5 hours ago
@Bloodcinder Feel free to make/suggest an edit. I can't fix it because I don't know what it is you think is unclear.
– amalloy
3 hours ago
@Bloodcinder Feel free to make/suggest an edit. I can't fix it because I don't know what it is you think is unclear.
– amalloy
3 hours ago
add a comment |
up vote
1
down vote
Trust
This one isn't always appropriate - but if you play with a constant group of friends, then simply trusting that they are being honest is the way I usually play games. This works for me, because I don't generally play with randoms or at events outside of home.
Obviously this won't always work - not everyone has the required integrity to resist the urge to cheat. But if you're playing a longer campaign with a consistent group, you'll learn pretty quickly using this method whether it's actually viable.
If not, then the other methods mentioned above are steller. However, as far as simplicity and ease to implement is concerned, this is by far the easiest.
add a comment |
up vote
1
down vote
Trust
This one isn't always appropriate - but if you play with a constant group of friends, then simply trusting that they are being honest is the way I usually play games. This works for me, because I don't generally play with randoms or at events outside of home.
Obviously this won't always work - not everyone has the required integrity to resist the urge to cheat. But if you're playing a longer campaign with a consistent group, you'll learn pretty quickly using this method whether it's actually viable.
If not, then the other methods mentioned above are steller. However, as far as simplicity and ease to implement is concerned, this is by far the easiest.
add a comment |
up vote
1
down vote
up vote
1
down vote
Trust
This one isn't always appropriate - but if you play with a constant group of friends, then simply trusting that they are being honest is the way I usually play games. This works for me, because I don't generally play with randoms or at events outside of home.
Obviously this won't always work - not everyone has the required integrity to resist the urge to cheat. But if you're playing a longer campaign with a consistent group, you'll learn pretty quickly using this method whether it's actually viable.
If not, then the other methods mentioned above are steller. However, as far as simplicity and ease to implement is concerned, this is by far the easiest.
Trust
This one isn't always appropriate - but if you play with a constant group of friends, then simply trusting that they are being honest is the way I usually play games. This works for me, because I don't generally play with randoms or at events outside of home.
Obviously this won't always work - not everyone has the required integrity to resist the urge to cheat. But if you're playing a longer campaign with a consistent group, you'll learn pretty quickly using this method whether it's actually viable.
If not, then the other methods mentioned above are steller. However, as far as simplicity and ease to implement is concerned, this is by far the easiest.
answered 5 hours ago
Shadow
340112
340112
add a comment |
add a comment |
up vote
-1
down vote
Alice make decision message -> [D]
Encrypt [D] with random private key [PK], make cryptogram -> [C]
Lots of algorithms can be used here.
Send [C] to Bob.
When event have to occur, Bob request [PK] from Alice.
Alice Send [PK], Bob can translate [C]->[D]
it is hard to make [C] to desired other decision message[D2] with other [PK2]
Show programmer in your team this sequence. He will understand if he have learn.
New contributor
2
And if there's no programmer available, how does this help anybody? The answer seems to be a much worse version of the answer posted by Chowlett hours ago.
– Nij
2 hours ago
add a comment |
up vote
-1
down vote
Alice make decision message -> [D]
Encrypt [D] with random private key [PK], make cryptogram -> [C]
Lots of algorithms can be used here.
Send [C] to Bob.
When event have to occur, Bob request [PK] from Alice.
Alice Send [PK], Bob can translate [C]->[D]
it is hard to make [C] to desired other decision message[D2] with other [PK2]
Show programmer in your team this sequence. He will understand if he have learn.
New contributor
2
And if there's no programmer available, how does this help anybody? The answer seems to be a much worse version of the answer posted by Chowlett hours ago.
– Nij
2 hours ago
add a comment |
up vote
-1
down vote
up vote
-1
down vote
Alice make decision message -> [D]
Encrypt [D] with random private key [PK], make cryptogram -> [C]
Lots of algorithms can be used here.
Send [C] to Bob.
When event have to occur, Bob request [PK] from Alice.
Alice Send [PK], Bob can translate [C]->[D]
it is hard to make [C] to desired other decision message[D2] with other [PK2]
Show programmer in your team this sequence. He will understand if he have learn.
New contributor
Alice make decision message -> [D]
Encrypt [D] with random private key [PK], make cryptogram -> [C]
Lots of algorithms can be used here.
Send [C] to Bob.
When event have to occur, Bob request [PK] from Alice.
Alice Send [PK], Bob can translate [C]->[D]
it is hard to make [C] to desired other decision message[D2] with other [PK2]
Show programmer in your team this sequence. He will understand if he have learn.
New contributor
edited 2 hours ago
V2Blast
18.1k248114
18.1k248114
New contributor
answered 3 hours ago
siamenock
11
11
New contributor
New contributor
2
And if there's no programmer available, how does this help anybody? The answer seems to be a much worse version of the answer posted by Chowlett hours ago.
– Nij
2 hours ago
add a comment |
2
And if there's no programmer available, how does this help anybody? The answer seems to be a much worse version of the answer posted by Chowlett hours ago.
– Nij
2 hours ago
2
2
And if there's no programmer available, how does this help anybody? The answer seems to be a much worse version of the answer posted by Chowlett hours ago.
– Nij
2 hours ago
And if there's no programmer available, how does this help anybody? The answer seems to be a much worse version of the answer posted by Chowlett hours ago.
– Nij
2 hours ago
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2frpg.stackexchange.com%2fquestions%2f136072%2fhow-to-certify-a-secret-decision-revealed-on-a-delay-in-a-play-by-post-game%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Is this a) freeform, b) GMless?
– SevenSidedDie♦
5 hours ago
Edited to explain the nature of the GM. I can't answer whether it's "freeform" without a bit more clarity. What do you mean, and what detail is important about it?
– Bloodcinder
5 hours ago
Freeform is where there’s no rules, just commonly accepted best practices of behaviour. It’s common in forum PbP, especially the tradition that grew out of fandom rather than from existing RPG culture. (It can make a difference, and we have a tag for it, so I wondered.)
– SevenSidedDie♦
48 mins ago