Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

State channels (Timeout Fraud Problem) #3

Open
hswick opened this issue Mar 7, 2018 · 2 comments
Open

State channels (Timeout Fraud Problem) #3

hswick opened this issue Mar 7, 2018 · 2 comments

Comments

@hswick
Copy link
Contributor

hswick commented Mar 7, 2018

The query/response mechanism seems like a good place for the use of state channels. However, the current issue is the data availability problem around the timeout mechanism.

Ex: Using a state channel verifier makes a query, solver sends a response. Verifier claims solver never sent a response within the time frame (5 blocks). Solver has chance to prove they are indeed still playing. This fraud proof mechanism happens on-chain. Incentives dictate verifier pulls this trick every single query/response round because they want to see the solver lose. Then each round ends up being on-chain anyways.

Summary - In order to use state channels for query/response need to solve timeout fraud problem.

@PhABC
Copy link

PhABC commented Mar 7, 2018

Would there be any way to have a "provenly public" message exchange? If each response has a chance of being observed by a third party, who could act as a witness, then players couldn't blame each others about not receiving a message. If a player claims that the other player is pretending not to receive/see the message, he could call a random witness and the faulty player would have their deposit slashed and distributed.

@hswick
Copy link
Contributor Author

hswick commented Mar 7, 2018

@PhABC something like that would be nice. Sounds a lot like a consensus or a blockchain 😉 Possibly something that had the properties we needed but not a full blockchain.
Maybe Plasma, sidechains??? Idk, just throwing things out there.

I had some ideas around using the task giver as a third party. EX: Solver sends message to both task giver and verifier. But that is definitely subject to sybil attacks/collusion. And I'm afraid wouldn't make a verifier not try to claim fraud each round anyways.

The problem requires some kind of other protocol besides Truebit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants