Author

Topic: Pow Idea - tell me why it wouldn't work (Read 275 times)

legendary
Activity: 1806
Merit: 1828
March 21, 2018, 04:54:30 PM
#8
So I had a thought about proof of work and delegated proof of stake. So if I understand correctly, the main advantage of dpos is that you can "schedule" block producers, and thus have blocks produced quite quickly since the producers are known ahead of time. Steem has nearly instant transactions - actually more like 3 seconds I think? - and I think EOS is claiming to have even faster ones. Of course there seem to be serious issues with dpos as we've seen with Lisk and the monopoly that the delegates there have. I also like PoW for a number of other reasons.

So I was thinking about why PoW is slow, and I was thinking about how it could incorporate this dpos advantage, and I had a thought: couldn't PoW achieve essentially the same thing, simply by having miners compete not to produce the current block, but for the opportunity to produce several (smaller) blocks in the future?

So just as a simplistic example, let's say Joe is mining, and let's just say that we are using BTC's algorithm, and a miner will find a solution on average once in ten minutes. So Joe is hashing away, and after a while, he solves the current hashing problem. So then he essentially gets 200 slots where he can be scheduled to produce a block. These 200 slots would get added and mixed in to the queue of slots on the blockchain and he would be scheduled to produce those blocks, and upon producing them would them get the mining reward. Joe would have to be running a node with near 100% uptime even after he finds the hashing solution, much like a delegate in dpos has to do to produce blocks.

I assume there is something I am missing or not understanding, since much greater minds than mine have not used this, to the best of my knowledge, so I'm trying to learn - what would be the issue with this?


Actually, Steem used to have a similar system. Miners could mine their account into existence and would compete to get a spot in the queue as a delegate. It was something like the top 19 delegates in a round would produce a block. One guest delegate not in the top 20 in votes would get to produce a block and one miner in the queue would get to produce a block. However, the mining algorithm kept having several exploits, so Steem eventually got rid of it.
legendary
Activity: 1610
Merit: 1183
March 21, 2018, 12:31:20 PM
#7
Anything with "delegated" on it is a scam detector in crypto. Things should be automated and elegant. PoW is simple, brutal competition, keeps the chain safe. Of course, the problem of too much hashrate in the hand of few is there, which is why we need more competition. We need someone to kick Jihan Wu's ass. He is obviously the monopoly now, im sure all of these pools are his machines working under different names, which is a problem.

If you want to do something about that, the only idea i've seen that I like is the random algorithm switch, so at random times different algos would be used, shuffling around the advantage between different parties. It remains to be seen how that would work in practice.

Unfortunately, there are no better alternatives yet, only scams.
newbie
Activity: 28
Merit: 0
March 21, 2018, 08:09:02 AM
#6
The whole mining thing is covered in the simple statement in my footer but this does not mean that I am against
"proof of useful work" being used, far from it but counting numbers just for the sake of it is not only a waste of time
but is dyeing and is like playing Garry Glitter or Boy George music at a night club these days.

PoS is only slightly better but sending one transaction from a wallet and making 20,000 nodes argue/compete over the message is
plain stupid so I welcome anything that moves away from that path and like to see new suggestions here.

I use code that requests hash-codes for blocks of data from other servers and then get the receiving node to pick a block at random and request the data behind the check-sum hash but the point is the data is needed anyway, this is what I mean by "proof of useful work" but really it comes down to establishing a level of trust when you get down to it.

Sadly Useful work usually contains highly ordered results. I.e. it is usually statistically unpredictable if A will produce "answer" in T doing X operations on average.
jr. member
Activity: 266
Merit: 2
March 19, 2018, 10:43:58 AM
#5
So I was thinking about why PoW is slow, and I was thinking about how it could incorporate this dpos advantage, and I had a thought: couldn't PoW achieve essentially the same thing, simply by having miners compete not to produce the current block, but for the opportunity to produce several (smaller) blocks in the future?

You're not the first to think of that:

http://hackingdistributed.com/2015/10/14/bitcoin-ng/

Cool! Thanks, I'll read up on it.
legendary
Activity: 990
Merit: 1108
March 14, 2018, 05:02:17 AM
#4
So I was thinking about why PoW is slow, and I was thinking about how it could incorporate this dpos advantage, and I had a thought: couldn't PoW achieve essentially the same thing, simply by having miners compete not to produce the current block, but for the opportunity to produce several (smaller) blocks in the future?

You're not the first to think of that:

http://hackingdistributed.com/2015/10/14/bitcoin-ng/
full member
Activity: 351
Merit: 134
March 14, 2018, 04:43:58 AM
#3
This will work, but I don't think it improves the overall security of the chain in the same way as a pure PoW blockchain would.

Benefits:

*It's permissionless, anyone can participate in the election process, they don't have to coerce the rich into voting for them.

Hazards:

*Quite possible that less than the required majority of delegates will be elected at once due to the variance in PoW solution times, leading to no majority in consensus.
*You cannot issue coins as a reward for the PoW because after receipt of said coins, there is no way to be forked and have those coins forfeit due to a double spend attempt by the elected miner in question, because the consensus is horizontal, not vertical

Notes:

*This still requires the same increasing difficulty adjustment as regular PoW to prevent sybil attack
*Without a reward for spending all that time competing to be elected, this isn't going to be very attractive for miners to participate in, but as I've mentioned, you cannot reward because of the problem of it being consequence free post election.

Cheers, Paul.
member
Activity: 210
Merit: 26
High fees = low BTC price
March 13, 2018, 06:00:56 PM
#2
The whole mining thing is covered in the simple statement in my footer but this does not mean that I am against
"proof of useful work" being used, far from it but counting numbers just for the sake of it is not only a waste of time
but is dyeing and is like playing Garry Glitter or Boy George music at a night club these days.

PoS is only slightly better but sending one transaction from a wallet and making 20,000 nodes argue/compete over the message is
plain stupid so I welcome anything that moves away from that path and like to see new suggestions here.

I use code that requests hash-codes for blocks of data from other servers and then get the receiving node to pick a block at random and request the data behind the check-sum hash but the point is the data is needed anyway, this is what I mean by "proof of useful work" but really it comes down to establishing a level of trust when you get down to it.
jr. member
Activity: 266
Merit: 2
March 13, 2018, 05:13:37 PM
#1
So I had a thought about proof of work and delegated proof of stake. So if I understand correctly, the main advantage of dpos is that you can "schedule" block producers, and thus have blocks produced quite quickly since the producers are known ahead of time. Steem has nearly instant transactions - actually more like 3 seconds I think? - and I think EOS is claiming to have even faster ones. Of course there seem to be serious issues with dpos as we've seen with Lisk and the monopoly that the delegates there have. I also like PoW for a number of other reasons.

So I was thinking about why PoW is slow, and I was thinking about how it could incorporate this dpos advantage, and I had a thought: couldn't PoW achieve essentially the same thing, simply by having miners compete not to produce the current block, but for the opportunity to produce several (smaller) blocks in the future?

So just as a simplistic example, let's say Joe is mining, and let's just say that we are using BTC's algorithm, and a miner will find a solution on average once in ten minutes. So Joe is hashing away, and after a while, he solves the current hashing problem. So then he essentially gets 200 slots where he can be scheduled to produce a block. These 200 slots would get added and mixed in to the queue of slots on the blockchain and he would be scheduled to produce those blocks, and upon producing them would them get the mining reward. Joe would have to be running a node with near 100% uptime even after he finds the hashing solution, much like a delegate in dpos has to do to produce blocks.

I assume there is something I am missing or not understanding, since much greater minds than mine have not used this, to the best of my knowledge, so I'm trying to learn - what would be the issue with this?
Jump to: