First, just wanted to say this is a super interesting project. Cryptocurrencies that perform useful work, with the POW algorithm or otherwise, are of particular interest to me. The energy/carbon cost of POW coins is, IMO, inelegant and wasteful, and one of the biggest drawbacks of the technology. The problem is that it's very difficult to come up with a kind of practically useful computation that's difficult to solve but easy to verify, where difficulty can be predictably scaled, etc. Prediction markets may be an elegant solution to this problem, although I think engineering a robust implementation will be challenging.
From my reading of the various truthcoin docs, it appears there may be a potential attack vector for gaming the decision voting phase with untruthful votes. It's likely enough that I've misunderstood or missed some detail, but anyhow, this is the gist:
- The docs suggest there will be a limit to the number of voters for a given decision (I saw 100,000 mentioned)
- The cost of mounting a successful 51% attack is therefore: [the minimum wallet balance required to vote] * 50,001
- Effectively this means only a fraction of the current supply is required to mount a successful attack
This assumes that votes are not weighted proportionally to wallet balance, i.e. all votes are equal (ignoring reputation modifiers for now). Perhaps the intention is to weight votes in direct proportion to wallet balance, but I didn't see this mentioned in the docs.
In any case, I think the only solution is to weight votes proportionally with wallet balance. But this may have its own complications, e.g.:
- If the number of votes is limited to 100k for a given decision, there must be a system for selecting the set of contributing votes from the total pool of votes. Assuming the selection is random, an attacker could exclude the voting power of large wallets with some statistical certainty by creating a huge number of minimum-balance wallets (i.e. hundreds of millions+) and dominate the vote that way.
- If an attacker can dominate the voting pool by sheer # of wallets, the excluded wallets miss out on voting rewards
I suppose a solution could be to require a sizeable minimum wallet balance to be eligible to vote, AND weight votes proportionally to wallet balance. That amount should be calculated such that the 100k voter limit could never be reached, even if all wallets held the minimum. This would remove the incentive to try to dominate the vote through sheer # of voting wallets.
From my reading of the various truthcoin docs, it appears there may be a potential attack vector for gaming the decision voting phase with untruthful votes. It's likely enough that I've misunderstood or missed some detail, but anyhow, this is the gist:
- The docs suggest there will be a limit to the number of voters for a given decision (I saw 100,000 mentioned)
- The cost of mounting a successful 51% attack is therefore: [the minimum wallet balance required to vote] * 50,001
- Effectively this means only a fraction of the current supply is required to mount a successful attack
This assumes that votes are not weighted proportionally to wallet balance, i.e. all votes are equal (ignoring reputation modifiers for now). Perhaps the intention is to weight votes in direct proportion to wallet balance, but I didn't see this mentioned in the docs.
In any case, I think the only solution is to weight votes proportionally with wallet balance. But this may have its own complications, e.g.:
- If the number of votes is limited to 100k for a given decision, there must be a system for selecting the set of contributing votes from the total pool of votes. Assuming the selection is random, an attacker could exclude the voting power of large wallets with some statistical certainty by creating a huge number of minimum-balance wallets (i.e. hundreds of millions+) and dominate the vote that way.
- If an attacker can dominate the voting pool by sheer # of wallets, the excluded wallets miss out on voting rewards
I suppose a solution could be to require a sizeable minimum wallet balance to be eligible to vote, AND weight votes proportionally to wallet balance. That amount should be calculated such that the 100k voter limit could never be reached, even if all wallets held the minimum. This would remove the incentive to try to dominate the vote through sheer # of voting wallets.