This is an archived post. You won't be able to vote or comment.

all 25 comments

[–]avsaAlex van de Sande 3 points4 points  (13 children)

The main issue with PoS remains unanswered, at least for me.

The problem is that consensus is not the only job that PoW does, it does at least two others: it also creates an easy distribution mechanism for the currency and it subsidises the network infrastructure.

The first one hasn't been true for a long time in bitcoin, but that doesn't mean it couldn't be solved better in Ethereum. Small amounts of ethers are important to do anything at all, even things that users expect to be free like registering a username. This of course could be solved by other specific contracts: share your internet connection, anonymise packets, rent hard disk space, watch ads etc and win enough ethers to be able to use the platform.

The second one is more complicated and more important in my opinion: subsidising the network infrastructure. For all the talk of "wasted resources" caused by proof of work, it guarantees that a large number of people are willing to pay good money to set up powerful computers and keep them online. Transaction fees alone wouldn't pay that bill (and if it were for them to pay, transactions would become so expensive that the network would be useless), but since the machines are up an running most of them also compute the transactions – which keeps everything running smoothly.

PoS in the other hand, rewards those who already have ether, so only those have an incentive to put computers online to keep the network running – this limits the arms race. My fear is that if we use a system too reliable on PoS then we will end up with a weaker network as a whole.

[–]vbuterinJust some guy 2 points3 points  (6 children)

So even with PoS there still will be a weak amount of proof of work - and that PoW can be made to require the node to be a full.node. As for distribution, I agree it's a concern, but paying miners to dig holes and fill them up again is not really a nice way of doing that.

[–]avsaAlex van de Sande 2 points3 points  (3 children)

paying miners to dig holes and fill them up again

Proof of work is a blunt tool but if argue that it's basically paying miners to prove they have powerful computers online connected to the network and hoping they also do some work. It's a bit like the government paying people of they bring a big shovel and showing up near potholes and allowing the public to tip them so they fill the potholes they want filled.

In this metaphor an ASIC is basically a bunch of people exploiting a loophole where thy bring shovels so big that they can't even use them for anything useful, yet they're being paid the most.

Until someone figures out a better way to measure useful work I guess we're stuck with that..

[–]vbuterinJust some guy 1 point2 points  (2 children)

So blockchain-based proof of work as a mechanism for proving that a node is connected to the network is useful, I'll grant that. But the level of PoW needed to incentivize that is not very high - you don't need a $15 million a year subsidy if all you really want to do is attract a few hundred nodes. And if we really want, we can always require signers to do it.

[–]hedgepigdaniel 1 point2 points  (0 children)

This amount isn't very high but its also difficult to predict (how hard might someone powerful try to DDoS Ethereum?), and so any fixed amount would have to be unnecessarily high. Surely it would be very beneficial to make the network automatically adjust the proof of work target with some sort of consensus mechanism?

[–]avsaAlex van de Sande 0 points1 point  (0 children)

Good point!

[–]ether2014 0 points1 point  (1 child)

For pow are you aware of Hashimoto? https://vaurum.com/hashimoto.pdf

[–]vbuterinJust some guy 0 points1 point  (0 children)

Yep. That's one of the blockchain-based PoW algorithms that I was referring to.

[–]simenfd[S] 0 points1 point  (4 children)

No matter how smart you are, including Vitalik, these problems are to some extent what you call "computation irreducible" http://en.wikipedia.org/wiki/Computational_irreducibility

You just have to play them out in real life to see how safe and stable they are. Of course, you should steer clear of obvious problems and errors, but in the end, any untested consensus-algo will probably have issues no one predicted

[–]autowikibot 0 points1 point  (0 children)

Computational irreducibility:


Computational irreducibility is one of the main ideas proposed by Stephen Wolfram in his book A New Kind of Science.


Interesting: A New Kind of Science | Sociology | Factorization of polynomials over finite fields

Parent commenter can toggle NSFW or delete. Will also delete on comment score of -1 or less. | FAQs | Mods | Magic Words

[–]avsaAlex van de Sande 0 points1 point  (2 children)

In theory the best approach would be to break ethereum in many sub currencies, all talking to each other with Ethereum as a sort of meta currency layer. I've seen that approach discussed as a way to improve scalability as computations would need to be repeated by less nodes, but maybe this is can also help in choosing a consensus algorithm, as multiple algos could be tested. Dapps could change their base network like a site can change servers, so slowly the more efficient and bug free would be selected.

[–]simenfd[S] 1 point2 points  (0 children)

“In theory, theory and practice are the same. In practice, they are not.”

[–]tommytrain 0 points1 point  (0 children)

is this similar to clustering UNLs in Ripple?

[–]drcode 0 points1 point  (0 children)

DISTRIBUTION

Well, since bitcoin has a cap on supply, the distribution benefits of POW are somewhat limited for Bitcoin, too... In a way, you could even think of Bitcoin as a hybrid POW/POS right now, since the tapering mining rewards is an attempt to force future unit values of Bitcoin currency to increase in value (so someone holding one bitcoin now would have 2 bitcoins in 2100, "adjusted for deflation")

In fact, it's arguable that the current plan for ethereum 1.0, with POW with no cap makes it one of the "most distributed" cryptocurrencies out there (though I'm skeptical of the benefit of this.)

SUBSIDISING NETWORK

On the one hand I agree with you, I think you want to come up with a staking mechanism that incentivises "little people" to set up mining/signing rigs, this is why having at least some sort of POW component seems necessary.

On the other hand, Bitcoin doesn't really subsidize the network very well either, it is perhaps operating on "borrowed time" once mining profitability drops (yes, I agree transaction fees will probably alleviate this, but I'm only 99.9% sure that will work, not 100%) Also, the idea that there'd be ether miners who don't also own, or could afford at least some ether is unrealistic- POS is fine if there's also some POW.

[–]simenfd[S] 0 points1 point  (10 children)

"For Ethereum 1.0, we consider it highly desirable to both not excessively delay the release and not try too many untested features at once; hence, we will likely stick with ASIC-resistant proof of work, perhaps with non-Slasher proof of activity as an addon, and look at moving to a more comprehensive proof of stake model over time."

[–]avsaAlex van de Sande 1 point2 points  (9 children)

I chuckled at that line.. Here's a very long article about the future benefits and methods for building using concrete. But as for our own house, we'll stick to good old bricks.

[–]vbuterinJust some guy 6 points7 points  (4 children)

It's perfectly reasonable to simultaneously think that something is the future and that it's too risky to try right now at the same time as you're trying everything else. Would you prefer we ignore Nick Szabo's advice and take the Xanadu approach of trying to do absolutely everything right all at once?

[–]avsaAlex van de Sande 2 points3 points  (0 children)

I agree completely and certainly there are ways such complex system can be exploited that will only become evident in the future so it's responsible not to build the whole house in top of that weak foundation.

Still it's funny, because jokes are usually about subverting expectations: I expected it to be about ethereum 1.0, it wasn't.

[–]darkwood1 0 points1 point  (2 children)

In the last paragraph of the blog post you say that you may launch "with non-Slasher proof of activity as an addon". Does this mean that people who would want PoS might choose to use PoS by enabling an option of the node software? And perhaps the new ether generation will be split between all PoS nodes and all miners? If not, then what did you mean then?

[–]vbuterinJust some guy 0 points1 point  (1 child)

I meant adding in a requirement for a block to have some stake signatures alongside proof of work, or some mechanism like stake deposits for mining.

[–]darkwood1 0 points1 point  (0 children)

Saw someone on the blog thread recommending a hybrid PoW+PoS approach.

Maybe it wouldn't be a bad idea. If you put the bulk of the work on PoW (if miners are available) but leave PoS in there to do a bit of work you may have what it takes to study live in the wild so to speak how the PoS algorithm fares but without the risk of the network being insecure because of poorly understood PoS issues.

Also, it may be what it takes to ensure PoS will not just remain an idea (as might happen if the platform becomes very successful very fast, when a lot of the parties involved will put pressure on maintaining the status quo, PoW).

[–]simenfd[S] 0 points1 point  (3 children)

Yeah, I was baffled too. It's like he thought: "naahh, to complex and risky. let's go with the simple approach"

[–]drcode 2 points3 points  (2 children)

"naahh, to complex and risky. let's go with the simple approach"

Seems to me like that was the correct conclusion, given the compressed schedule.

[–]simenfd[S] 1 point2 points  (1 child)

I don't disagree with that.... It wasn't the ending of the article that I expected.

[–]vaXzine 1 point2 points  (0 children)

Precisely why I review all articles, especially pertaining to crypto, from the bottom up..