Bitcoin parallel mining scaling and throughput solution (on the back of a cigarette packet)

in bitcoin •  7 years ago  (edited)

Scaling is such a contentious topic in the blockchain space right now and there are a lot of very fancy new proof of stake and other solutions to allow almost instantaneous confirmations.

bitcoin snake.jpg

I decided to come up with my own possible scaling and throughput solution which in theory would allow transactions to be on chain and as secure as original bitcoin and confirmed in much shorter times then the block target time. In this solution the block size is expandable up to any size but the time allowed to fill a block is fixed to arbitrary 5 second intervals so a block can be 10 kb or 10 mb depending on how many transactions are taken on in the 5 second window. This would accommodate the visa like speeds of being able to swipe a card, wait 10 seconds and get the first confirmation.

The algorithm would go as follows:

  1. Block 1 of transactions is fed to miners and block 2 is filled as transactions pour in, miners all mine block 1.

  2. Once block 2 is filled miners have the option of switching to block 2 but this will mean losing their progress on block 1.

  3. Similarly if block 2 fills they can choose to start mining on block 3 etc.

  4. All blocks above block 1 have “progressive puzzles” so instead of having a very hard puzzle that takes 10 minutes to solve they have 10 puzzles, a 1 minute puzzle, a 2 minute puzzle, a 3 minute puzzle all the way up to 10 minutes and each hash that they create could solve any of these puzzles.

  5. As soon as puzzle is solved on block 1 the hash pointer gets added to block 2 and each miner who was previously mining block 2 gets a difficulty reduction based on the work they have already done.

  6. Proof of work is determined on the highest “progressive puzzle” they already solved on the block, i.e if miner x only solved puzzle 1 on block 2 then they have to now solve a 9 minute puzzle. If miner y solved a 3 minute puzzle on block 2 they they get a 7 minute puzzle to solve.

  7. If block 2 is solved before block 1 then block 2 miners must wait until block 1 is solved and get a difficulty of almost zero on block 2.

  8. Overall coin reward per block is adjusted over time stamps of ten minutes to accommodate for more blocks getting solved quicker to maintain the correct cadence. This prevents wasteful mining for coin rewards versus transaction fees and at the same time allows all transactions to be processed almost instantaneously.

  9. Because miners can pick and choose which level block to mine a very small miner could mine a block further in the future and have a better chance of solving the puzzle, evening out the playing field and encouraging smaller miners.

I think if anyone did explore this the time stamping and network latency would be the key possible points of failure as in the current world with a crypto distributed around the world this could be a challenge but think about massive real-time online games like Clash Royale where 4 users from different ends of the earth can play a game together seamlessly in real time, this kind of achievement makes me think we are not far off something like this.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Congratulations @shankspranks! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

You published your First Post
You made your First Vote
You got a First Vote
Award for the number of upvotes

Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

By upvoting this notification, you can help all Steemit users. Learn how here!

Congratulations @shankspranks! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!