Hacker News new | ask | show | jobs
by asdgkknio 3118 days ago
>Coming up with a way to have a decentralised currency where everyone involved gets a fair say without consuming too many resources is a super interesting problem.

I think the obvious solution is to do useful work rather than throwing away work on crypto. Have miners solve real problems and give them credit for getting the right answer.

This is what Ethereum is supposed to do. I don't think it's a great solution. It's still extremely wasteful since every node runs every computation. Even something like TrueBit, which is designed to be scalable and efficient, is still far less efficient than normal cloud architectures. It still throws away the vast majority of the work in the interest of safety and incentives. These systems are good if you want trustworthy computation, but not if you want high-performance and power-efficient computation.

I'm trying to design a system where something like 95% of the work goes to useful computation, but I have nothing anywhere near shippable. It's a hard problem.

2 comments

>obvious solution is to do useful work rather than throwing away work on crypto

Keep in mind that the parent stated multiple conditions in the problem and your "obvious solution" only addresses the "too many resources" component.

Doing "useful work" is obviously better but still doesn't address the "fair say in decentralization".

>I'm trying to design a system where something like 95% of the work goes to useful computation, [...] It's a hard problem.

And to make it an even harder problem, also try to design a cryptocurrency system where Bill Gates' billions to buy supercomputer hardware has no advantage over a typical homeowner with a cheap computer. Maintaining _economic_ decentralization is very hard. I'm not aware of any decentralized protocol that has solved it. Heck, most whitepapers about decentralized protocols don't even explicitly discuss it.

I disagree. Making proof of work involve real applications rather than just cryptography means that machines will need to be general. It isn't possible to build an ASIC capable of running ordinary applications.

Bitcoin is entirely owned by people with ASICs. The barriers to entry are enormous. It's totally pointless for me to mine Bitcoin on my laptop, or even on my Beowulf cluster. But if mining involves normal computations like you'd want to run on a normal cloud, then a laptop is capable of doing useful work and the barrier to entry is low.

Making normal computers useful is a huge improvement over Bitcoin and is the motivvation behind currencies like Monero.

> a laptop is capable of doing useful work and the barrier to entry is low.

No, the "low barrier to entry" because of laptop use instead of ASIC is orthogonal to volume of computation/diskspace/specialization. That does not solve the "spend more money on computing resources" that inevitably leads to centralization. Making useful computations that's resistant to ASICs is an improvement but does not prevent economic centralization. Therefore, Monero doesn't solve it either.

You can see real-world evidence of this where SMTP email protocol and Git protocol do not run on specialized ASICs and yet, they still got economic consolidation.

A system where anyone can rent out their CPU time will result in less centralization than we see with current cloud providers. A system where anyone can mine productively will result in less centralization than we see with current cryptocurrencies. Will it result in zero centralization? No, and I wouldn't expect it to. That's most likely impossible.
>A system where anyone can rent out their CPU time will result in less centralization than we see with current cloud providers.

This is an aspirational wish but not reality at the moment. Nobody including BOINC or any other decentralized grid computing endeavor has proven that economically. For your cause & effect of "less centralization" to happen, homeowners cpu would have be cost competitive with cloud services. Selling "idle" time on home cpus isn't cost effective. Most realistic computation workloads also require large datasets (diskspace) in addition to cpu cycles. People don't pay only for the Amazon cpu clock cycles; it's also S3 data storage and network bandwidth.

Likewise, Filecoin's whitepaper for decentralized disk storage is also aspirational and economically unproven at this time.

>A system where anyone can mine productively will result in less centralization than we see with current cryptocurrencies.

Probably not. The "mine productively" in your solution has 2 components: (1) the useful computation and (2) the cryptocurrency computation.

For a thought experiment, let's assume you invent the 95% useful computation algorithm that you targeted. The 5% computation will still be have to be done on hardware where different entities can spend vastly different amounts of money. (Pay more for more powerful computers or pay less for watts of energy because China computer is near hydroelectric dam, etc.)

The 95% of useful computation (say brute force protein folding or DNA cancer analysis) can be an absolute gain for society. However, the 5% computation's "productive value" is _relative_ to all other participants mining that cryptocurrency. Since others can work through that 5% computation much more efficiently (both in pure hardware cycles and/or energy efficiency), the 5% crypto work on the homeowner's laptop loses value in relation to everybody else. Whatever crypto coins the laptop successfully mines, others have mined even more coins rendering the laptop coins to be worth less because of the relative time & energy it took on that modest laptop cpu.

The 95%/5% ratio that's resistant to ASICs does not stop the inevitable trends towards centralization into major entities holding disproportionate power and/or coins in the system. The 5% "non-useful" computation can still be optimized by people spending more money than others. Since spending is not decentralized, the resulting rewards from the 5% computation will also not be decentralized.

>This is an aspirational wish but not reality at the moment.

No shit. If it existed, it would be pointless to work on it.

Proof of work must be impossible to cheat, and easy to verify. Can't make issuing money as easy as printing paper.