Pages:
Author

Topic: A Two-Round Proof of Work instead of PoW - page 2. (Read 718 times)

newbie
Activity: 28
Merit: 5
November 19, 2021, 04:51:29 AM
#75
What would be the costs of a “two-round” Proof of Work algorithm compared to regular POW? More or less, for the same level of security? More or less, for the same incentives? What feature would make it more attractive for the mining cartel?

TRPoW does not affect the competition edge of a miner. So If everything stays the same, a miner will have a lower electricity bill with more or less the same earning potential.  So, it will reduce the miners business cost and increase their profit.

The mining cartel will make more money with less running cost.  


Have you received some feeback from a Core Developer, or from someone who is not a pleb? No offense to the members of this forum. Plus no offense to you, but how can we know that your proposal isn’t like the Space Ghost meme that says, “I am new to Bitcoin, and I am here to fix it”?
Be cool baby. Things will come in their due time. Stay tuned.
legendary
Activity: 2898
Merit: 1823
November 19, 2021, 04:02:45 AM
#74
What would be the costs of a “two-round” Proof of Work algorithm compared to regular POW? More or less, for the same level of security? More or less, for the same incentives? What feature would make it more attractive for the mining cartel?

TRPoW does not affect the competition edge of a miner. So If everything stays the same, a miner will have a lower electricity bill with more or less the same earning potential.  So, it will reduce the miners business cost and increase their profit.

The mining cartel will make more money with less running cost.  


Have you received some feeback from a Core Developer, or from someone who is not a pleb? No offense to the members of this forum. Plus no offense to you, but how can we know that your proposal isn’t like the Space Ghost meme that says, “I am new to Bitcoin, and I am here to fix it”?
newbie
Activity: 28
Merit: 5
November 19, 2021, 02:51:09 AM
#73
What would be the costs of a “two-round” Proof of Work algorithm compared to regular POW? More or less, for the same level of security? More or less, for the same incentives? What feature would make it more attractive for the mining cartel?
TRPoW does not affect the competition edge of a miner. So If everything stays the same, a miner will have a lower electricity bill
with more or less the same earning potential.  So, it will reduce the miners business cost and increase their profit.
The mining cartel will make more money with less running cost.  
legendary
Activity: 2898
Merit: 1823
November 19, 2021, 01:21:14 AM
#72
What would be the costs of a “two-round” Proof of Work algorithm compared to regular POW? More or less, for the same level of security? More or less, for the same incentives? What feature would make it more attractive for the mining cartel?
sr. member
Activity: 1148
Merit: 453
November 18, 2021, 09:19:24 PM
#71

I think it's great just how it is regarding Proof of work. But I'm always interested to learn of other blockchains using alternatives to pure proof of work. Like chiacoin.  Grin

Proof of Space is driving the hard disk drive market crazy I read in the news. 

Yeah I know! thats kind of why I'm not a big fan of it because it raises the price of things for everyone else too. Kind of like ethereum did for video cards.
newbie
Activity: 28
Merit: 5
November 18, 2021, 06:13:07 AM
#70

I think it's great just how it is regarding Proof of work. But I'm always interested to learn of other blockchains using alternatives to pure proof of work. Like chiacoin.  Grin

Proof of Space is driving the hard disk drive market crazy I read in the news. 
newbie
Activity: 28
Merit: 5
November 18, 2021, 06:07:55 AM
#69
Which will help the environment by reducing the machines production

On the contrary. Even if your scheme worked, and you could force miners to sit idle 80% of the time,
that means they'll reinvest the saved electricity costs into buying MUCH MORE hardware to stay competitive.

As long as Bitcoin issues $50M dollar's worth every day, we can expect miners to collectively spend nearly that much money in competing for it.

All you achieve is a shift from electricity costs to hardware costs.


Good point.  High prices will drive competition crazy and we can expect miners to do whatever needed to make more money.
TRPoW does not affect the competition edge of a miner. So If everything stays the same, a miner will have a lower electricity bill
with more or less the same earning potential.  So, it will reduce the miners business cost and increase their profit.
sr. member
Activity: 1148
Merit: 453
November 18, 2021, 03:44:15 AM
#68


Hi Larry,

I do see your point very well.
But I think the question is a bit more philosophical: Just because we have a machine does this means that we need to use it at all cost and all the time?
We don't use our Laptop / Car all the time just because we bought them. We only use them when we need them.

That's because at least in the way you are describing it, a laptop or car is something for personal use. Just like a toothbrush.


Quote
Although the mining hardware is there, we still need Electricity to make it work. So the question now what is the tradeoff between electricity consumption and the hardware usage over a long run ?
It is known that the intensive usage of a hardware make it wear quickly.
So We can see TRPoW as way of reducing usage of mining machines which will make them last longer.

I think bitcoin miners are more than capable managing their hardware and determining the optimal settings to run it at.

Quote
For the sake of argument, let's say Round 1 lasts 2min each 10min of Block Time. This means that the mining machines will be used 20% of the time. We can hope this will extend their lifetime by a factor of 5!

I looked up a stat that said the mining difficulty increased by 45% in the last 90 days. it probably doesn't always increase at such a large rate but i think it's safe to say it is always getting bigger. harder. now. given that, one would expect bitcoin miners to want to get the most out of their hardware for the limited amount of time it has until it becomes unprofitable to run any longer. no one is going to extend their hardware's lifetime by a factor of 5 since it will become unprofitable long before that time ever comes.

Quote
I know the equation is not linear. Which will help the environment by reducing the machines production and the electricity consumption. The other benefit is against the Selfish mining attack.
TRPoW will make Bitcoin great again!!!

What do you thing?         

I think it's great just how it is regarding Proof of work. But I'm always interested to learn of other blockchains using alternatives to pure proof of work. Like chiacoin.  Grin
legendary
Activity: 989
Merit: 1108
November 18, 2021, 03:30:37 AM
#67
Which will help the environment by reducing the machines production

On the contrary. Even if your scheme worked, and you could force miners to sit idle 80% of the time,
that means they'll reinvest the saved electricity costs into buying MUCH MORE hardware to stay competitive.

As long as Bitcoin issues $50M dollar's worth every day, we can expect miners to collectively spend nearly that much money in competing for it.

All you achieve is a shift from electricity costs to hardware costs.

Quote
What do you thing?          

Sorry; thinging is not my thing:-(
newbie
Activity: 28
Merit: 5
November 18, 2021, 12:19:49 AM
#66


I don't think TRPoW is a recipe for disaster. Far from it. Keep in mind that Bitcoin worked with small group of miners for many years.


that was before bitcoin exploded onto the world scene. the whole world depends on it now and i dont know if there's any justification for trying to reduce energy consumption. for example, do you think bitcoin miners are just going to let their hardware sit idle for 8 minutes? or however long the 2nd round lasts? they'll divert their hashing power to something else for that amount of time and then bring it back when the next round 1 starts. so all you're really accomplishing is weakening your own network by letting go of some of its hashing power which will get used somewhere else. it's not a net gain for the environment. it's neutral.

the hardware is there. it's going to be running and hashing something. you might as well take advantage of it fully, which is what bitcoin currently does. thats how i see it anyway. Grin we don't care about cardona or ethereum here. so we dont want bitcoin hardware being diverted to strengthen those networks.

Hi Larry,

I do see your point very well.
But I think the question is a bit more philosophical: Just because we have a machine does this means that we need to use it at all cost and all the time?
We don't use our Laptop / Car all the time just because we bought them. We only use them when we need them.
Although the mining hardware is there, we still need Electricity to make it work. So the question now what is the tradeoff between electricity consumption and the hardware usage over a long run ?
It is known that the intensive usage of a hardware make it wear quickly.
So We can see TRPoW as way of reducing usage of mining machines which will make them last longer.

For the sake of argument, let's say Round 1 lasts 2min each 10min of Block Time. This means that the mining machines will be used 20% of the time. We can hope this will extend their lifetime by a factor of 5! I know the equation is not linear. Which will help the environment by reducing the machines production and the electricity consumption. The other benefit is against the Selfish mining attack.
TRPoW will make Bitcoin great again!!!

What do you thing?          
sr. member
Activity: 1148
Merit: 453
November 17, 2021, 11:35:53 PM
#65


I don't think TRPoW is a recipe for disaster. Far from it. Keep in mind that Bitcoin worked with small group of miners for many years.


that was before bitcoin exploded onto the world scene. the whole world depends on it now and i dont know if there's any justification for trying to reduce energy consumption. for example, do you think bitcoin miners are just going to let their hardware sit idle for 8 minutes? or however long the 2nd round lasts? they'll divert their hashing power to something else for that amount of time and then bring it back when the next round 1 starts. so all you're really accomplishing is weakening your own network by letting go of some of its hashing power which will get used somewhere else. it's not a net gain for the environment. it's neutral.

the hardware is there. it's going to be running and hashing something. you might as well take advantage of it fully, which is what bitcoin currently does. thats how i see it anyway. Grin we don't care about cardona or ethereum here. so we dont want bitcoin hardware being diverted to strengthen those networks.
newbie
Activity: 28
Merit: 5
November 17, 2021, 03:08:38 AM
#64
Quote
I don't think TRPoW is a recipe for disaster.
Then go for it, release just another altcoin and see how it will turn out. You can release some kind of test network first, just to check if your theory works in practice.

Totally agreed with you. I think the idea needs to be tested. At least for the sake of the experiment. 

Quote
You can also see Bitcoin with PoW as Bitcoin with TRPoW where N2 = N1.
You can make it backward-compatible, just by producing first-phase blocks as today and adding some rules to enforce second-phase for these blocks. The simplest way to do that could be using difficulty to decide, how long the second nonce should be. Then you have previous block hash with some zeros, you can place your second-phase nonce there, then taking a single 80-byte block header is enough.

For example:
Code:
FirstRoundHeader {
  version=01000000
  previousBlockHash=6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000
  merkleRoot=982051fd1e4ba744bbbe680e1fee14677ba1a3c3540bf7b1cdb606e857233e0e
  time=61bc6649
  difficulty=ffff001d
  nonce=01e36299
}

SecondRoundHeader {
  version=01000000
  previousBlockPartialHash=6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000
  secondNonce=000000
  merkleRoot=982051fd1e4ba744bbbe680e1fee14677ba1a3c3540bf7b1cdb606e857233e0e
  time=61bc6649
  difficulty=ffff001d
  nonce=01e36299
}
Because you can see 0x1d value in the difficulty, you know that you can take three bytes from the previous block hash and there must be zeroes to be valid. Also, there is no need for adding any public key to the block header, because it is already calculated in the merkle root. Also, you can add more fields to each header in the coinbase transaction if you really need them, there is no need to add them directly to your headers.

Thank you Garlonicon for these great and precious ideas/suggestions. Much appreciated. Let's me think of it. I will update you here in all cases.
legendary
Activity: 821
Merit: 1992
Pawns are the soul of chess
November 17, 2021, 02:13:17 AM
#63
Quote
I don't think TRPoW is a recipe for disaster.
Then go for it, release just another altcoin and see how it will turn out. You can release some kind of test network first, just to check if your theory works in practice.

Quote
You can also see Bitcoin with PoW as Bitcoin with TRPoW where N2 = N1.
You can make it backward-compatible, just by producing first-phase blocks as today and adding some rules to enforce second-phase for these blocks. The simplest way to do that could be using difficulty to decide, how long the second nonce should be. Then you have previous block hash with some zeros, you can place your second-phase nonce there, then taking a single 80-byte block header is enough.

For example:
Code:
FirstRoundHeader {
  version=01000000
  previousBlockHash=6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000
  merkleRoot=982051fd1e4ba744bbbe680e1fee14677ba1a3c3540bf7b1cdb606e857233e0e
  time=61bc6649
  difficulty=ffff001d
  nonce=01e36299
}

SecondRoundHeader {
  version=01000000
  previousBlockPartialHash=6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000
  secondNonce=000000
  merkleRoot=982051fd1e4ba744bbbe680e1fee14677ba1a3c3540bf7b1cdb606e857233e0e
  time=61bc6649
  difficulty=ffff001d
  nonce=01e36299
}
Because you can see 0x1d value in the difficulty, you know that you can take three bytes from the previous block hash and there must be zeroes to be valid. Also, there is no need for adding any public key to the block header, because it is already calculated in the merkle root. Also, you can add more fields to each header in the coinbase transaction if you really need them, there is no need to add them directly to your headers.
newbie
Activity: 28
Merit: 5
November 17, 2021, 12:30:07 AM
#62

It's not even necessarily economical. People will just ramp up their hashing power for round 1 to try and get into round 2 so the energy expenditure over those 2 minutes would rise way above normal.

And then for the other 8 minutes, they got the bitcoin network by the balls so to speak. Relying on a small subset of miner hashing power. Sounds like a recipe for disaster. But I do admire the OP for defending his proposal and taking the time and effort to discuss it here.


I don't think TRPoW is a recipe for disaster. Far from it. Keep in mind that Bitcoin worked with small group of miners for many years.

As I wrote to you previously. We can find an optimal value of N2 that does not undermine the security of Bitcoin with TRPoW. Intuitively an upper bound of such value is O(SquareRoot N1). Assuming that the winner of Second Round is among N2 List of N2 miners instead of only N2 first miners. I think an optimal value of N2 could be in O(Log(N1)) based on a similar calculation done by EPFL Distributed Algo team: https://arxiv.org/abs/1908.01738

You can also see Bitcoin with PoW as Bitcoin with TRPoW where N2 = N1.

If we assume for the sake of argument that N1 = 1000000 and N2 = Square Root of N1 = 1000.
The reduction of energy can go drastically because we will have 1000 000  - 1000 = 999 000 miners (99.9% of the network) not doing the Second Round. We will save huge amount of electricity without undermining the security of the blockchain.
sr. member
Activity: 1148
Merit: 453
November 16, 2021, 10:54:12 PM
#61


Doesn't this scheme compromise the security of the bitcoin network. I mean, the security aspect of it is based on the total hashrate at every moment in time. if at any moment it decreases...then there's a potential weakness.
Quote
Yes it does. It makes half PoW and half of luck. If this is good, then make it 100% luck. does it work? No. Its not secure.
This propose just lower security for name of "economical".

It's not even necessarily economical. People will just ramp up their hashing power for round 1 to try and get into round 2 so the energy expenditure over those 2 minutes would rise way above normal.

And then for the other 8 minutes, they got the bitcoin network by the balls so to speak. Relying on a small subset of miner hashing power. Sounds like a recipe for disaster. But I do admire the OP for defending his proposal and taking the time and effort to discuss it here.
member
Activity: 162
Merit: 19
November 16, 2021, 12:38:17 PM
#60
The energy saving comes from the fact that most of miners will spend a big part of their time on Round 1 that is not heavy-energy / CPU consuming. At least this is the target, the bet and the hope.  

I'm afraid exactly that you might be right, and you might succeed  Smiley

The newly mined coins plus the transaction fees for the transactions included in the block have a certain value.
So it is obvious that the market will seek equilibrium and to channel the resources needed to mine with a similar market value (I assume that mining is still to be permissionless, and we will not create a miners clique or cabal where market law does not apply).

The precedents are not really optimistic...
Memory intensive mining algorithm like Scrypt can effectively reduce the energy intensity of computation. But then the mining equipment itself becomes the main investment of the miner, and the benefit to the environment is disputable due to increased e-waste production.
newbie
Activity: 28
Merit: 5
November 16, 2021, 11:22:36 AM
#59
Quote
You would need a way to prevent the knowledge of the winner for 8 minutes so that nobody can start on the next block before the 10 minutes have past.
Even if you can successfully prevent that knowledge for 8 minutes, someone can still start working on some randomly chosen block and have hope it will give some boost on average, where other miners will be idle. Also, you need at least two candidates, in other case any obfuscation of the winner is pointless. Does it mean that nobody can start the chain alone by using the official miner?

Another thing is getting the right to mine: one miner can pretend to be N miners or can just own many mining machines and assign different keys to each of them. Then, if the list of participants is known, any miner can try to extend any block, just by checking each of them sequentially, or even assigning different threads to different blocks. Extending one of N blocks has the same probability as extending some chosen block. Because having a chance to mine the right block is better than having no chances by being idle, people will run their machines all the time.

Great point indeed.
newbie
Activity: 28
Merit: 5
November 16, 2021, 10:45:09 AM
#58


tl;dr - total electric consumption will not be reduced by implementing the OP's proposal.

I'm sure the miners wouldn't be supporting such a thing because it just makes it even harder for them to get a reward.

Quote
Also, if there are millions of miners and you randomly select 100 of them, you encourage the rest of the miners to form mining pools. Then, you will end up in a situation where 100 miners are selected as before, but there are only 100 huge mining pools, they always get everything and distribute that to smaller miners. Almost no solo miner will follow your system if that miner will be rewarded once per month, because the risk of price drop after entering exchange is higher than the potential reward from solo mining.

I wonder if the people that wrote that paper realized that. that's thinking ahead! Grin the bitcoin mining system is really hard to make changes to without causing things to get "out of whack" Grin

This is similar to say that miners will organize themselves in big pools to organize a 51% attack on Bitcoin network. It did not happen so far.
No. The miners have incentives to not 51% attack the network. If they try this, the value of their equipment to drop >99% overnight.

Miners engaging in activity similar to what I described is similar to miners attempting to keeping their equipment that has a limited shelf life working as much as possible.

The N2 number of miners of the second Round is also adjustable like the complexity algorithm in PoW that is adjusted every 2016 Block.
Plus In Round 1 we are hashing Hash(Block Head + PublicKey + Nonce). So I don't know how this is going to force miners to organize in big pools. The Public Key of a miner has the benefit of limiting the formation of pools. In BTC PoW there is no public key in the hash. In TRPoW, the hash result is public key dependent.    

 
The public key associated with the address 1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY belongs to the mining pool f2pool. There are thousands (if not more) of miners who mine on f2pool, but all of f2pool's found blocks payout to the above address.

If f2pool makes it to the second round, any miner who is not participating in the second round will switch to mining on f2pool, or another pool that is participating in the second round. If a miner sits idle (or is not otherwise producing work that has the potential to find a block) during the second round, their equipment is losing out on potential value.

I agree with you on this. It is a good solution for the pool miners to use public key in the hash but it increases the complexity of the problem they are trying to solving.

The PoW job is also to maintain the Block Time at 10min. We can achieve that by just making everyone wait for that 10min minus delay/network broadcasting time etc.
Say round 1 only takes 2 minutes to get 100 miners. Then you just wait 8 minutes to select the "winner".  That's a 10 minute block time. So it saves 8 minutes of hashing. Less global warming.

You would need a way to prevent the knowledge of the winner for 8 minutes so that nobody can start on the next block before the 10 minutes have past.
The difficulty of the first round could be "x", and the difficulty of the second round would be "10000x". Each of the miners who are "selected" during the first round could need to have their "block" include the hash of the previous block, and the first "block" in the first round would need to include the hash of block found in the second round. The found block in the second round would need to sign the hash of the last block of the first round. This is very similar to how bitcoin mining occurs today.

Let's me think of the last part slowly. 
newbie
Activity: 28
Merit: 5
November 16, 2021, 10:33:11 AM
#57
Quote
N1-N2 miners are IDLE during 6min of Round 2.
Some of them are idle, some of them are not. You can release a software where the miner stops, but if it is open-source, then miners can decide they want to compute hashes all the time, because then they have a chance to produce another valid Proof of Work. Even if some old nodes will not accept that, still, there will be new nodes and new miners that will know nothing about the past events in that network and will have no way to check, which Proof of Work is the right one.

I see what you are saying. But if CPU power is controlled by honest nodes, I don't think, this type of attack will undermine the network ?
newbie
Activity: 28
Merit: 5
November 16, 2021, 10:23:26 AM
#56


Please explain how a lower complexity reduces the amount of energy used when miners are encouraged to increase energy usage in order to be one of the first N2 miners. Whether it takes 1000000 tries on average or 1018 tries on average, miners are going to use as much energy as they can in order to be first.

Quote

Yes but Round one is only let's say 2min for the sake of argument. Once this 2min is over Only N2 miners will advance to Round 2 to work on the second puzzle. Let's assume Round 2 calculation time is 6min. We have N1 miners working for 2min and N2 miners working for (2+6)=8min. In Bitcoin we have all N1 working all 8min. We save energy on Round 2. N1-N2 miners are IDLE during 6min of Round 2. This is where we save energy. Now I do understand that miners can try to game the system and rent their machines to the winners of Round 2. But I don't know how practical it can be to do so.  

Doesn't this scheme compromise the security of the bitcoin network. I mean, the security aspect of it is based on the total hashrate at every moment in time. if at any moment it decreases...then there's a potential weakness.

I don't think so. We can find an optimal value of N2 that does not undermine the security of Bitcoin with TRPoW. Intuitively an upper bound of such value is O(SquareRoot N1). Assuming that the winner of Second Round is among N2 List of N2 miners instead of only N2 first miners. An optimal value of N2 is could be in O(Log(N1)) based on a similar calculation done by EPFL Distributed Algo team: https://arxiv.org/abs/1908.01738
You can also see that Bitcoin with PoW is equivalent to Bitcoin with TRPoW where N2 = N1.
If we assume for the sake of argument that N1 = 1000000 and N2 = Square Root of N1 = 1000.
The reduction of energy can go drastically because we will have 1000 000  - 1000 = 999 000 miners (99.9% of the network) not doing the Second Round. We will save huge amount of electricity without undermining the security of the blockchain.
Pages:
Jump to: