Author

Topic: Why 6 blocks per hour? (Read 1390 times)

staff
Activity: 4284
Merit: 8808
July 12, 2011, 03:38:46 PM
#4
One of the major complaints about bitcoin is transactions are not confirmed instantly, and if I'm correct, this is due to only roughly 6 blocks are generated per hour, so roughly 10 minutes per block. I was wondering why 6 blocks? why not 600 blocks per hour? so transactions are confirmed almost instantly. Just reduce the reward per block accordingly.

The rate of block creation has nothing to do with the reward.   This is the sort of thinking you end up with when you're thinking of mining as primarily a method of distributing the initial wealth— thats a wrongheaded way of looking at it.

The nakamoto hash chain is an attack resistant solution to a version of the byzantine generals problem. In our case nodes communicate over a lossy channel with unknown and sometimes high delay in the face of aggressive agents who may try to disrupt or impersonate the communications, and they want to come to some consensus about the past history which is backed by a resource which is difficult to obtain.

The hash chain allows any observer to figure out which transactions have been approved by the largest clique of communicating hash power.  If the blocks were to be generated faster than the communication between the miners,  then most of the hashing effort would go to waste as blocks are randomly orphaned. Rather than a long straight chain with knots here and there, you'd have a bush as hashing power is spent on lots of parallel dead ends. Basically, for the purpose of the algorithm nodes which can't communicate within the time between blocks aren't communicating, so they can't be part of the same largest clique, so the hash power of the network is divided.

An attacker who used a modified strategy of "always extend the near longest chain which contains most of my blocks"  would have an advantage over the rest of the network following the normal rules, and would be able to control the longest chain without having as much power.  Also, transactions near the boundary would be continually flickering in and out of blocks differently depending on where in the network you were located.

Faster blocks would also increase storage requirements for lite clients drastically, basically a 100x increase for your proposed 600 blocks an hour. Satoshi was already concerned that bitcoin's storage requirements would endanger its success. I think he considered 5 vs 10 minutes and eventually decided on 10, but I doubt he would have even considered much faster.
member
Activity: 73
Merit: 10
July 12, 2011, 02:58:14 PM
#3
iirc, the rationale is block propagation through the network. if blocks are generated faster, the probability of blockchain reorgs rises.
newbie
Activity: 42
Merit: 0
July 12, 2011, 02:46:57 PM
#2
One of the major complaints about bitcoin is transactions are not confirmed instantly, and if I'm correct, this is due to only roughly 6 blocks are generated per hour, so roughly 10 minutes per block. I was wondering why 6 blocks? why not 600 blocks per hour? so transactions are confirmed almost instantly. Just reduce the reward per block accordingly.

The fact is that 10 minute delays for a complete verification is lightning fast in today's world. Ever wonder why when you go to your grocery store on a saturday, that your claims the transaction was processed on a monday? That's because it was.
legendary
Activity: 1806
Merit: 1003
July 12, 2011, 02:38:26 PM
#1
One of the major complaints about bitcoin is transactions are not confirmed instantly, and if I'm correct, this is due to only roughly 6 blocks are generated per hour, so roughly 10 minutes per block. I was wondering why 6 blocks? why not 600 blocks per hour? so transactions are confirmed almost instantly. Just reduce the reward per block accordingly.
Jump to: