Pages:
Author

Topic: oPoW (optimized Proof of Work) - page 2. (Read 498 times)

full member
Activity: 193
Merit: 124
Just digging around
July 08, 2021, 01:03:06 PM
#16
- The miner mining the 2016th block would create and broadcast the proof-block. This block would include the PublicKey of the miners for each 2016 future blocks in order of creation and expected time of creation.
- After this all mining would stop and order of miners who allowed to create a block would be sealed in the proof-block

You'll need to elaborate on this point.  What determines this "order"?  Are you just expecting everyone to form a neat and orderly queue or something?   

The miner would decide the order who mines the proof-block. But that's the only thing he can decide. Not who mines and how many as he can't withhold any mined results (without risking someone else will mine the correct proof-block) he has to broadcast ASAP to get the bonus (miner of the proof-block could get the right the first block of 2016 for example).
legendary
Activity: 3948
Merit: 3191
Leave no FUD unchallenged
July 08, 2021, 12:48:27 PM
#15
- The miner mining the 2016th block would create and broadcast the proof-block. This block would include the PublicKey of the miners for each 2016 future blocks in order of creation and expected time of creation.
- After this all mining would stop and order of miners who allowed to create a block would be sealed in the proof-block

You'll need to elaborate on this point.  What determines this "order"?  Are you just expecting everyone to form a neat and orderly queue or something?   
legendary
Activity: 2212
Merit: 7064
July 08, 2021, 08:13:50 AM
#14
There is nothing worse than someone inventing something (that is nothing new or special) and calling it brilliant himself  Roll Eyes

In reality this idea would have so much flaws in real life that it would probably be unusable or in best case heavily abused by someone, but we don't have to wait and see what happens, because I am sure that some altcoin will gladly test your ''invention''.
legendary
Activity: 2898
Merit: 1823
July 08, 2021, 07:00:47 AM
#13
this sounds like proof of work without the work  Shocked


I’m technically challenged, but that’s how I understood it as well. If it is that, then OP is removing the best part of Bitcoin and replacing it with something else that could weaken the Sybil Attack protection mechanism, and weaken the very thing that makes everything stick together in Bitcoin. Satoshi’s utilization of POW is pure genius.
full member
Activity: 193
Merit: 124
Just digging around
July 08, 2021, 02:10:55 AM
#12
Wouldn't that just mean that a single mining operation (ie. the one that finds the special block) would then control the blockchain for the next 2016 blocks? What incentive is there for including other miners if you're the one actually mining the 2016th block?
Also miners would just use their hardware and infrastructure to mine different coins inbetween those special blocks, so PoW would not get "saved", rather moved to different coins. Remember that Bitcoin does not exist in a vacuum.
No as they have to build a proof-block which has 2016 blocks with enough PoW. So basically everybody could build a proof-block and broadcast and the one with the most PoW wins. So as long as there is one honest miner proof-block is fine. Even if they can find 2016 blocks themselves someone else would create a proof-block with more PoW - assuming there are more miners around.


It should be fairly trivial to just force whatever hash is putting you at an advantage for the next special block though. Especially since you... you know... already got the hardware lying around.
I think not as the hash of block at N-7 blockheight (which you have to use to start calculating the proof-block) hash is not predictable in advance as it depends on the previous which depends on the previous, etc.
legendary
Activity: 3122
Merit: 2178
Playgram - The Telegram Casino
July 07, 2021, 09:54:48 AM
#11
- After each period (lets say 2016 blocks) there would be a special/different block of which would include all the miners wishing to mine and their best hash. Using low enough difficulty miners "boost mine" for let's say an hour and would include all the calculated hashes in this "proof-block".
- The miner mining the 2016th block would create and broadcast the proof-block. This block would include the PublicKey of the miners for each 2016 future blocks in order of creation and expected time of creation.

Wouldn't that just mean that a single mining operation (ie. the one that finds the special block) would then control the blockchain for the next 2016 blocks? What incentive is there for including other miners if you're the one actually mining the 2016th block?

Also miners would just use their hardware and infrastructure to mine different coins inbetween those special blocks, so PoW would not get "saved", rather moved to different coins. Remember that Bitcoin does not exist in a vacuum.


As for the proof of hashrate, there isn't any mechanism or any that I can think of that can ensure that the miners do not find those hashes that you've mentioned before that hour.

We would use the hash of the end-7 block of the previous epoch which was not know earlier. There is the proof that you did not/could not mine earlier in the given hour.

It should be fairly trivial to just force whatever hash is putting you at an advantage for the next special block though. Especially since you... you know... already got the hardware lying around.
full member
Activity: 193
Merit: 124
Just digging around
July 07, 2021, 07:48:42 AM
#10
As for the proof of hashrate, there isn't any mechanism or any that I can think of that can ensure that the miners do not find those hashes that you've mentioned before that hour.

We would use the hash of the end-7 block of the previous epoch which was not know earlier. There is the proof that you did not/could not mine earlier in the given hour.


Margin of error is within 2 hours. The entire network has to decide whether to agree or disagree on a block. A slight deviation of the time on each of the nodes could potentially result in some accepting the blocks and some rejecting it.
If it's 2 hours then it's too long, but the block order is still there. So you can't cheat, the best you can do is introduce your rightful block a few minutes earlier. You can't create more etc.

But yes, it's indeed a big endeavor and almost impossible to implement on Bitcoin.

Well, all ideas die eventually. This one a bit faster Wink
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
July 07, 2021, 02:07:15 AM
#9
BUT;
You do have to prove you have the hashrate periodically and once, so you can't just "vote twice".
Proof of some work. Assuming constant profit margin, miners will start purchasing even more ASICs to mine on other PoW chains and only shift the ASICs to your chain as and when it is required. The effective profits of the miners increases, without any actual decrease in the electrical consumption overall. In fact, the chain becomes less secure because the miners are only sacrificing a lower portion of opportunity costs by mining for only an hour on your chain. There is no way miners would ever just let their ASICs sit there.

You still need the hashrate, same as today. You can't just "create keys". You need exactly the same hashrate as you do today to get in the proof-block and to earn exactly the same amount of bitcoins as you do today. The PKs are only needed to prove that you are the miner who had the hashrate when creating the actual block.
Proving that you have the hashrate only at a period of time, ie start of the epoch isn't very helpful for PoW. Your security of the chain effectively comes from an hour of mining, and subjected to the interests of the miners as they don't stand anything to lose by supporting a rogue fork afterwards. As for the proof of hashrate, there isn't any mechanism or any that I can think of that can ensure that the miners do not find those hashes that you've mentioned before that hour. There has to be an included secret embedded in those hashes that is only revealed by the hour, which is quite difficult considering how nodes are independent and the lack of consensus on that would make this a difficult task.

Since your inclusion of your low difficulty hashes is in your proofblock, it'll be quite big and difficult to relay through the network. Ideally, the entire network should see each of the 'calculated hashes' to ensure that the proofblock miner isn't biased and specifically excluding certain data. The bandwidth requirement would be quite big in this case. Variance can also be a potential issue, where an hour isn't ideal to eliminate the possible variance from miners being able to find more hashes than others with less resources.


Timestamp is a problem indeed. But it's not true that bitcoin doesn't know the actual time. As far as I know the client does know the ~time "for sure" time by averaging the last X blocktime. In addition each client knows it's time, so if the rightful creator of the next block does it at the right time each client has to right to accept or reject if it's out of the time slot. You also know the previos block height, so any attacked can only play after and before the blocks of his own block and if it fails to create a correct block at the correct time others will take over.
Margin of error is within 2 hours. The entire network has to decide whether to agree or disagree on a block. A slight deviation of the time on each of the nodes could potentially result in some accepting the blocks and some rejecting it.
full member
Activity: 193
Merit: 124
Just digging around
July 07, 2021, 01:25:18 AM
#8
It would save ~99.8% percent of power cost (1 hour mining time vs 336 hours today)

But, the mining for the previous 2015 blocks happens normally. You aren't saving anything. You're describing that special block more than you should, or more than the explanation of other details.

No it doesn't. I mean yes, once at the switch over, but from that point the first "proof-block" would set the order of the next period. Than the next proof-block would do the same for the next and so on.



What you mean is that a special block will be generated every 2016 block. This block will pre-set which miner will account for the next block 2016. To achieve the purpose of saving electricity.

However, there is no proof of work here.One of the purposes of pow is to solve the Byzantine generals problem and make it more
difficult to do evil.

In POW, all computing power must not only compete for the right to bookkeeping, but also verify the results of each bookkeeping.

If other miners shut down after selecting which miners will account for the 2016 blocks, to save electricity. Is likely to suffer a 51% attack.

So I think OP your idea can neither save electricity, but also destroy the decentralization of the blockchain.


But your idea is a bit like SOLANA's POH.

Nope. You can't do 51% attack any easier than today as you still have to have the hashrate to get the right to create blocks.
You can still verify all the blocks as the digital signature proves that the miner who had enough hash power to be included in the proof block is the one signing the block (and doing so at the right time and order).
It won't just save electricity but also would improve predictability of the blocks. Also would make the two weeks two weeks long. Not almost three what happened recently.



Bitcoin doesn't have a standardized timestamp that is anywhere accurate. The network allows for a significant deviation from the median time. Any concepts like this requires a hard fork, current clients will validate to check it the block hash satisfies the current target.

Fundamental problem with these concepts which attempts to reduce the resource usage is highlighted in the first reply. As there is no way to restrict the number of unique miners, the concept fails as anyone can create as many keys as they want to lock in the rewards. The 2016th block's miner effectively holds total control over the network, and to decide who is able to mine the next 2015 blocks.



You still need the hashrate, same as today. You can't just "create keys". You need exactly the same hashrate as you do today to get in the proof-block and to earn exactly the same amount of bitcoins as you do today. The PKs are only needed to prove that you are the miner who had the hashrate when creating the actual block.

Timestamp is a problem indeed. But it's not true that bitcoin doesn't know the actual time. As far as I know the client does know the ~time "for sure" time by averaging the last X blocktime. In addition each client knows it's time, so if the rightful creator of the next block does it at the right time each client has to right to accept or reject if it's out of the time slot. You also know the previos block height, so any attacked can only play after and before the blocks of his own block and if it fails to create a correct block at the correct time others will take over.
full member
Activity: 193
Merit: 124
Just digging around
July 07, 2021, 01:23:44 AM
#7
this sounds like proof of work without the work  Shocked

Yes and no. Yes, because you don't have to do the work for while.

BUT;
You do have to prove you have the hashrate periodically and once, so you can't just "vote twice".
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
July 06, 2021, 10:01:18 PM
#6
Bitcoin doesn't have a standardized timestamp that is anywhere accurate. The network allows for a significant deviation from the median time. Any concepts like this requires a hard fork, current clients will validate to check it the block hash satisfies the current target.

Fundamental problem with these concepts which attempts to reduce the resource usage is highlighted in the first reply. As there is no way to restrict the number of unique miners, the concept fails as anyone can create as many keys as they want to lock in the rewards. The 2016th block's miner effectively holds total control over the network, and to decide who is able to mine the next 2015 blocks.

member
Activity: 98
Merit: 173
July 06, 2021, 08:39:51 PM
#5
What you mean is that a special block will be generated every 2016 block. This block will pre-set which miner will account for the next block 2016. To achieve the purpose of saving electricity.

However, there is no proof of work here.One of the purposes of pow is to solve the Byzantine generals problem and make it more
difficult to do evil.

In POW, all computing power must not only compete for the right to bookkeeping, but also verify the results of each bookkeeping.

If other miners shut down after selecting which miners will account for the 2016 blocks, to save electricity. Is likely to suffer a 51% attack.

So I think OP your idea can neither save electricity, but also destroy the decentralization of the blockchain.


But your idea is a bit like SOLANA's POH.
member
Activity: 75
Merit: 22
July 06, 2021, 03:44:38 PM
#4
Proof of concept
- After each period (lets say 2016 blocks) there would be a special/different block of which would include all the miners wishing to mine and their best hash. Using low enough difficulty miners "boost mine" for let's say an hour and would include all the calculated hashes in this "proof-block".
- The miner mining the 2016th block would create and broadcast the proof-block. This block would include the PublicKey of the miners for each 2016 future blocks in order of creation and expected time of creation.
- After this all mining would stop and order of miners who allowed to create a block would be sealed in the proof-block

--snip--
Following the chain with the longest history, there could be two conflicting chains with the same amount of blocks which would cause a consensus problem. The system you're describing resembles a lot to ethereum's PoS.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
July 06, 2021, 02:55:35 PM
#3
It would save ~99.8% percent of power cost (1 hour mining time vs 336 hours today)

But, the mining for the previous 2015 blocks happens normally. You aren't saving anything. You're describing that special block more than you should, or more than the explanation of other details.
full member
Activity: 154
Merit: 177
July 06, 2021, 01:51:05 PM
#2
this sounds like proof of work without the work  Shocked
full member
Activity: 193
Merit: 124
Just digging around
July 06, 2021, 01:33:28 PM
#1
Hi,

I came up with a great enhanced proof-of-work concept, I call it optimized Proof of Work and I think it's brilliant Wink
I am not removing any PoW. PoW will still be needed to create blocks, so you would earn the same amount as today with same hashrate. The only difference would be the 99.8% electricity saved.

The Goal
Save 9X% percent of power used for mining without lowering the security mining provides.

Proof of concept
- After each period (lets say 2016 blocks) there would be a special/different block of which would include all the miners wishing to mine and their best hash. Using low enough difficulty miners "boost mine" for let's say an hour and would include all the calculated hashes in this "proof-block".
- The miner mining the 2016th block would create and broadcast the proof-block. This block would include the PublicKey of the miners for each 2016 future blocks in order of creation and expected time of creation.
- After this all mining would stop and order of miners who allowed to create a block would be sealed in the proof-block
- The miner would have a +/- 1 minute range (relative to the expected time the given block should be created) to build, sign and broadcast the block. This signing would be without actual PoW, just using his PrivateKey corresponding to the PublicKeyHash in the proof-block. PoW would be referenced only in the proof-block.
- If the miner didn't broadcast the block in time then the next miner would have the right for 1 minute, after the next miner after the next, etc.. This way it would be guaranteed that a block will be created even if the miner is not available. for any reasons.


Advantages
It would save ~99.8% percent of power cost (1 hour mining time vs 336 hours today)
Block structure would be the same so as the coinbase transaction and creation speed, transactions, etc.
It would keep the chain safe, I believe the same or more as today (maybe more as the two weeks block production is "locked" so no slowing down/speeding up under the period)
It would keep blocks almost exactly 10 minutes apart
It would keep Bitcoin mining the same or more diversified than today

Disadvantages:
You need to have at least 1/2016 of the total hashrate to mine (who is mining with less today?)
Miner needs to be online at the time you are needed if not loosing the slot (so be online: redundancy, etc.). I belive 200K$ is incentive enough to invest into 2-3 distributed servers.
Those creating replacement blocks (if someone missed his slot) would get free(ish) blocks, but they provide a service so I think it's fair.

I know that changing the consensus and hard forking is though/almost impossible, but it may be doable with the voting like with taproot.
 
Please shoot and let me know why this wouldn't work Wink
Pages:
Jump to: