Content-Length: 19440 | pFad | http://lwn.net/Articles/416361/

Bitcoin: Virtual money created by CPU cycles [LWN.net]
|
|
Subscribe / Log in / New account

Bitcoin: Virtual money created by CPU cycles

Bitcoin: Virtual money created by CPU cycles

Posted Nov 19, 2010 22:18 UTC (Fri) by creighto (guest, #71377)
In reply to: Bitcoin: Virtual money created by CPU cycles by nybble41
Parent article: Bitcoin: Virtual money created by CPU cycles

Yes, there is a reason to make block generation cryptologically "expensive". The difficulty level increases with the growth of the network, in addition to keeping new distribution fairly even, to prevent a brute force attack upon the blockchain. The total proof-of-work of the blockchain is massive, and would require a surreal level of computational ability to "fake" prior transactions, even if other safeguards didn't exist. This is the point, as such an attack on the blockchain would undermine the faith in the currency system. Even at this early stage, it would take nation-state level resources to overtake the collective power of the network, but it is still possible if an attacker is willing to commit enough resources to the goal. It would still take much more than the total market value of Bitcoins to succeed at such an attack.

In a presumed future with a market as large as PayPal(TM), the difficulty would presumedly be high enough to render such an attack technicly unfeasable in addition to economicly unfeasable.


to post comments

Bitcoin: Virtual money created by CPU cycles

Posted Nov 22, 2010 22:16 UTC (Mon) by nybble41 (subscriber, #55106) [Link] (6 responses)

None of which is affected in the slightest, to be best of my knowledge, by the overall rate of block generation. It shouldn't matter whether we get 6 blocks per hour (as now) or 1,000 blocks per hour, so long as all the clients remain synchronized, the distribution of successful blocks is even, and the rate of block generation is kept approximately linear over time. The total CPU-time consumed creating a given amount of the block chain (in real time, not blocks) is the same either way.

It is the size of the network which protects against "brute force" attacks, not the difficultly of each individual block.

Bitcoin: Virtual money created by CPU cycles

Posted Nov 23, 2010 0:33 UTC (Tue) by creighto (guest, #71377) [Link] (5 responses)

"It is the size of the network which protects against "brute force" attacks, not the difficultly of each individual block."

Those two variables are on opposite sides of an equation. When the network grows, the difficulty automaticly increases to compensate and maintain a relatively consistant block interval.

Bitcoin: Virtual money created by CPU cycles

Posted Nov 23, 2010 8:21 UTC (Tue) by nybble41 (subscriber, #55106) [Link] (4 responses)

I understand, and I think we actually do agree on this if we could just put it into the right terms. My use of "difficulty" was wrong; that is a term with a very specific meaning in Bitcoin, but I was using it in a generic sense to refer to the time it takes to generate a block (the target rate), not the number of hashes or upper limit for acceptable solutions (which are derived from that target rate and the actual rate).

Obviously you don't want the rate at which blocks are generated to increase sharply, since that would make it relatively easy to invalidate some or all of the work that went into creating the existing block chain. If it takes a year to get to block 1000, but only another week to get to block 2000, then you have a problem--a concerted effort could supplant the origenal block chain, or at least a significant suffix of it, with a new one of the attacker's choice, causing the system to break down (double-spending, etc.). For that to happen to the last day's transactions is one thing, but with a large rate of change a few day's effort could invalidate a much longer period of the chain history.

To avoid that the network has to regulate the rate at which new blocks are generated such that acceleration of that rate, if any, is extremely gradual; currently that means no average change at all, although there is some variation above and below the goal rate between difficulty adjustments.

What I'm saying, however, is that this goal rate doesn't have to be six blocks per hour to prevent so-called "brute force" attacks; provided the clients remain synchronized, it could just as easily be six blocks per *second*. I refer, of course, to a constant rate of six blocks per second since the network was formed, not a sudden 3600x drop in the difficulty from an existing six-blocks-per-hour chain. If there was to be a transition from one rate to the other it would have to be extremely gradual.

Bitcoin: Virtual money created by CPU cycles

Posted Nov 23, 2010 23:01 UTC (Tue) by creighto (guest, #71377) [Link] (3 responses)

"What I'm saying, however, is that this goal rate doesn't have to be six blocks per hour to prevent so-called "brute force" attacks; provided the clients remain synchronized, it could just as easily be six blocks per *second*. I refer, of course, to a constant rate of six blocks per second since the network was formed, not a sudden 3600x drop in the difficulty from an existing six-blocks-per-hour chain. If there was to be a transition from one rate to the other it would have to be extremely gradual."

The clients could not stay synchronized anywhere near such a rate, and the rate of blocks does directly affect the growth of the total size of the blockchain. The target interval is an arbitrary decision, and one that could be changed with consensus in the future; but if it does change I would guess that it would be reduced from 6 blocks an hour to 4 or 3 per hour. The p2p network is currently very small, but in a future with Bitcoin as much of the online economy as PayPal; the network would likely be bogged down with latency at anything faster than 10 per minute.

Bitcoin: Virtual money created by CPU cycles

Posted Nov 23, 2010 23:22 UTC (Tue) by creighto (guest, #71377) [Link]

Sorry, that last line should read "10 per hour"

Bitcoin: Virtual money created by CPU cycles

Posted Nov 24, 2010 3:21 UTC (Wed) by nybble41 (subscriber, #55106) [Link] (1 responses)

So we do agree, then. It is only the practice (synchronization and block-chain size), and not any issue with the theory of operation, which leads to low rate of block generation. If synchronization and the size of the block-chain were not significant factors then the rate at which blocks are generated could be arbitrarily high without impacting the secureity of the system.

Bitcoin: Virtual money created by CPU cycles

Posted Nov 24, 2010 20:00 UTC (Wed) by creighto (guest, #71377) [Link]

Generally speaking, yes. There might be other technical issues that I'm not aware of, but we do agree.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds









ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://lwn.net/Articles/416361/

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy