Author

Topic: How to drive the mining difficulty toward 0 rather than infinity! (Read 2332 times)

sr. member
Activity: 364
Merit: 250
So your advocating that we take the huge amount of investment into creating the blockchain that currently exists and do away with that in order to make the network more stable and secure?

Just making sure I understand.

legendary
Activity: 1022
Merit: 1033
The right way to think about it is to demonstrate how it copes with various attacks.

Like "Attacker does , and it doesn't work because network will react in such and such way".

You should really think like an attacker, not like a person who tries to design a system.

If you are unable to find holes yourself, you can show your idea to other people, so they'll try finding holes.

Trust me, people spent a lot of time thinking about ideas like this, and they were all dismissed because of obvious holes like "attacker needs to spawn many fake nodes, then all new clients will get pwned".
newbie
Activity: 12
Merit: 0
It's complicated, and people don't seem to be willing (or able) to think it through.  It's a shame though, because it's an interesting idea..

The worry I have under this scheme is the network.  Miners are going to want to "advertise" their blocks to as many clients as possible to up their changes of winning the election. They might also create other blocks and advertise them too hoping they'll take hold.. I could see a feedback loop ambitious enough to try to split the internet.. Then you might end up with two chains for a bit longer...

It's a very interesting idea though, and it's really possible (likely) that I'm not really understanding it correctly.. I think that's why you've got people reacting with their gut instinct instead of logic.  Their guts tell them that whenever you try to take the cost out of something valuable you've got a problem...

I think you should take a page from Satoshi's book and back it up with code.... If there's a way prevent *everyone* from trying to enter the lottery 8 trillion times, you might have something there..

sr. member
Activity: 399
Merit: 250

Nuclear war...... or anything else that takes miners off the network.....
hero member
Activity: 770
Merit: 566
fractally
i think this is just a lengthy rant that someone without an asic can't mine for profit. thus trying to get the hasrate down so they can mine on their CPU ... lol

maybe its time people start to divert their minds away from "mining is the only way to make money" as many people seem to think.. and use your minds at other area's of the economy.

such as buying T-shirts for £$1 and selling them for £$4 worth of bitcoins.

or the million and 1 other items people in the real world trade for FIAT.

mining in reality SHOULD be only 1% of the economy, with retail being in the 90 percentile of income generation..

As someone who has mined over 150 BTC via CPUs I didn't miss that boat.  I am interested in this topic for the purpose of next-generation crypto-currencies / systems that are more decentralized and not to profit from mining. 

The problem is that the security provided by mining is far more than is required / desired and thus there must be a middle ground that allows the market to price security vs cost.
legendary
Activity: 1022
Merit: 1033
Well, suppose there are two (or more) chains in existence. A new client joins. How does it know which one is legit and which one is double-spend?

In case with proof-of-work, chain with most work behind it 'wins'.

You say it is based on consensus, but new client doesn't know which nodes are legit. He sees group A has consensus on one chain, and group B has consensus on another chain. Both groups have consensus, so there is no way to solve this without some external knowledge on which group is legit.

There are several possible ways to solve it:

 * proof-of-stake
 * central authority
 * de-anonymization
 * use of some scarce resource to prevent Sybil attacks
legendary
Activity: 4424
Merit: 4794
i think this is just a lengthy rant that someone without an asic can't mine for profit. thus trying to get the hasrate down so they can mine on their CPU ... lol

maybe its time people start to divert their minds away from "mining is the only way to make money" as many people seem to think.. and use your minds at other area's of the economy.

such as buying T-shirts for £$1 and selling them for £$4 worth of bitcoins.

or the million and 1 other items people in the real world trade for FIAT.

mining in reality SHOULD be only 1% of the economy, with retail being in the 90 percentile of income generation..

hero member
Activity: 770
Merit: 566
fractally
bytemaster , you should look at PPCoin and proof-of-stake

I have looked at those systems and the proof-of-stake creates a whole new can of worms, but is on the right track of attempting to securely reach a consensus without any single actor being able to dictate terms.  

Part of the consensus process would be factoring in the weighted average coin-age spent in a block.  Any blocks that do not spend trx referencing old outputs that have been broadcast to the network would automatically be suspect.   This would prevent someone from moving a lot of coin between their own accounts to help drive consensus.

For someone to 'attack' this network they would have to:
1) Set the mining reward on the blocks they generate to 0... this means they would not be able to recycle / profit from fees on their own transactions.
2) Have enough hashing power to be the first one to find a hash after 10 minutes have passed.
3) Generate blocks that follow all of the rules of the network, including 90% of known valid broadcast transactions prioritized by dividends paid and weighted by coin-age.

To perform a 'double spend' the spender would have to isolate a single client from the global consensus, but this attack would not be sustainable because of the coin-age requirement as well as validation that you have the right consensus that occurs off-chain.   Imagine every major business published & signed the consensus hash.  An attacker would be unable to isolate someone and convince them they had received funds based upon a bogus consensus / double spend.  

Lets put things another way, assume the government *did* invest in ASIC hardware and started controlling 90% of the hashing power?   How would the community respond?  Change the hashing algorithm?   What if the government declared a war-on-crypto and intended to out mine any new chain ever created so that they could censor transactions or accumulate the entire money supply or implement a tax or registration scheme?

Moral of the story... CPU, GPU or ASIC power is centralized control.


 

hero member
Activity: 770
Merit: 566
fractally
What if we could rig the market forces in the network to provide all of the security benefits of Bitcoin while simultaneously minimizing the computing resources required to reach network consensus?

The point is to maximize the resources required to perform a double spend or other attack.

The resources required in this case is the CONSENSUS of everyone in the community.  Nodes do not blindly follow the lowest hash with valid transactions.  No double spends possible here.  In fact, no chain re-orgs after 2 blocks are even likely.  I would argue that the mining-intensive approach actually leads to higher potential for double spends.
sr. member
Activity: 476
Merit: 250
Bytecoin: 8VofSsbQvTd8YwAcxiCcxrqZ9MnGPjaAQm
What if we could rig the market forces in the network to provide all of the security benefits of Bitcoin while simultaneously minimizing the computing resources required to reach network consensus?

The point is to maximize the resources required to perform a double spend or other attack.
hero member
Activity: 482
Merit: 502
bytemaster , you should look at PPCoin and proof-of-stake
hero member
Activity: 770
Merit: 566
fractally
Dream on. Market forces dictate mining. Always have. Always will. Its simple and it works.

I don't pretend to understand your proposal but I doubt you do either.

Let see here... I arranged for MARKET FORCES to ditate mining in a way that is relatively simple and would probably work, but clearly you haven't even tried to understand.   

Couldn't we all agree that it would be ideal to find a crypto-currency that didn't result in rooms filled with energy sucking ASICs producing nothing but low hash collisions as a means of reaching consensus on which block goes next?
hero member
Activity: 518
Merit: 500
Dream on. Market forces dictate mining. Always have. Always will. Its simple and it works.

I don't pretend to understand your proposal but I doubt you do either.

What if we could rig the market forces in the network to provide all of the security benefits of Bitcoin while simultaneously minimizing the computing resources required to reach network consensus?   This would be the ultimate green/energy efficient solution and far more secure than Bitcoin as it would also eliminate the 51% mining power attack.   

Mining is required for the following reasons:

1) distribute supply of the currency
2) perform a lottery on who gets to create a block
3) control the rate of block generation

Ultimately mining is not what secures the network (contrary to popular belief) because it is consensus of all clients on the network as to which chain is the "true chain" that matters.    Mining is just one way of voting on that consensus and ultimately that voting is meaningless.    Suppose there was a 51% attack the attacker would still have to generate blocks that are ACCEPTED by the rest of the network.   The chain split in March 2013 was an example of what could happen with a 51% attack and half of the network would simply ignore it.  All that a merchant / client would have to do is 'double check' that they are both on the same chain *and* that their chain was the 'best' chain by some profit-based metric.  And of course everyone in the market would have huge profit incentive to observe the group consensus for a few blocks as the primary means of confirming a block.   

So all you really care about is that everyone who you want to do business with is using the same chain and following the same rules as you.  As long as the nodes in the network have a profit incentive to propagate transactions and build on blocks that include the most profitable transactions all nodes will work together to reach that consensus.   

Given that security is provided by the market demand for consensus and not by hashing power, all we really need is a way to distribute the supply and restrict the rate of block generation.   So here is my proposal:

1) Create a dividend paying alt-coin that pays at least 50% of all mining rewards and transaction fees as dividends.
2) All clients only accept blocks that contain a high percentage of the transactions that they would have included and reject any blocks that disagree to a large degree.   Their profit motive is in maximizing dividends and ensuring an honest network that boosts the value of their holdings.
3) You introduce a MINIMAL time window after which receiving one block that your client will accept another block.  Call this minimal period 10 minutes.  This means that 50% of the time there would be a race with multiple miners finding a block within that 10 minute window.   Who ever was mining for the lowest fee (highest dividend) and had the highest hash value that met the difficulty level would win the auction and those who demanded too-high of a fee will have wasted their CPU power.   
4) Under this system the difficulty level would move toward less and less difficulty and lower and lower fees paid but never quite reach 0.    The block generation rate would still remain constant, new coins would be issued through dividends.  Of course, 50% of the time you would still be the first one to find a block and thus could collect your mining rewards. 

There are now two mining strategies:  mine with the hope of being the first one after 10 minutes, or mine with the hope of being the lowest fee less than 10 minutes.   The difficulty would of course adjust such that 'on average' a block is found every 10 minutes. 

There would be no way to 51% attack the network because an attacker would have to generate blocks that everyone on the network 'agreed with' or they wouldn't get consensus.   This means that an attacker would have to convince 51% of merchants and customers to change their wallet software in order to change the consensus.

A benefit of the 'consensus approach' is that you effectively eliminate any chain reorgs and double spend attacks become EVEN HARDER because there is no longer any means to *force* the rest of the network to recognize your double spend simply due to a higher hashing power. 


hero member
Activity: 770
Merit: 566
fractally
What if we could rig the market forces in the network to provide all of the security benefits of Bitcoin while simultaneously minimizing the computing resources required to reach network consensus?   This would be the ultimate green/energy efficient solution and far more secure than Bitcoin as it would also eliminate the 51% mining power attack.   

Mining is required for the following reasons:

1) distribute supply of the currency
2) perform a lottery on who gets to create a block
3) control the rate of block generation

Ultimately mining is not what secures the network (contrary to popular belief) because it is consensus of all clients on the network as to which chain is the "true chain" that matters.    Mining is just one way of voting on that consensus and ultimately that voting is meaningless.    Suppose there was a 51% attack the attacker would still have to generate blocks that are ACCEPTED by the rest of the network.   The chain split in March 2013 was an example of what could happen with a 51% attack and half of the network would simply ignore it.  All that a merchant / client would have to do is 'double check' that they are both on the same chain *and* that their chain was the 'best' chain by some profit-based metric.  And of course everyone in the market would have huge profit incentive to observe the group consensus for a few blocks as the primary means of confirming a block.   

So all you really care about is that everyone who you want to do business with is using the same chain and following the same rules as you.  As long as the nodes in the network have a profit incentive to propagate transactions and build on blocks that include the most profitable transactions all nodes will work together to reach that consensus.   

Given that security is provided by the market demand for consensus and not by hashing power, all we really need is a way to distribute the supply and restrict the rate of block generation.   So here is my proposal:

1) Create a dividend paying alt-coin that pays at least 50% of all mining rewards and transaction fees as dividends.
2) All clients only accept blocks that contain a high percentage of the transactions that they would have included and reject any blocks that disagree to a large degree.   Their profit motive is in maximizing dividends and ensuring an honest network that boosts the value of their holdings.
3) You introduce a MINIMAL time window after which receiving one block that your client will accept another block.  Call this minimal period 10 minutes.  This means that 50% of the time there would be a race with multiple miners finding a block within that 10 minute window.   Who ever was mining for the lowest fee (highest dividend) and had the highest hash value that met the difficulty level would win the auction and those who demanded too-high of a fee will have wasted their CPU power.   
4) Under this system the difficulty level would move toward less and less difficulty and lower and lower fees paid but never quite reach 0.    The block generation rate would still remain constant, new coins would be issued through dividends.  Of course, 50% of the time you would still be the first one to find a block and thus could collect your mining rewards. 

There are now two mining strategies:  mine with the hope of being the first one after 10 minutes, or mine with the hope of being the lowest fee less than 10 minutes.   The difficulty would of course adjust such that 'on average' a block is found every 10 minutes. 

There would be no way to 51% attack the network because an attacker would have to generate blocks that everyone on the network 'agreed with' or they wouldn't get consensus.   This means that an attacker would have to convince 51% of merchants and customers to change their wallet software in order to change the consensus.

A benefit of the 'consensus approach' is that you effectively eliminate any chain reorgs and double spend attacks become EVEN HARDER because there is no longer any means to *force* the rest of the network to recognize your double spend simply due to a higher hashing power. 

Jump to: