Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Posted Nov 11, 2010 14:41 UTC (Thu) by n8willis (subscriber, #43041)Parent article: Bitcoin: Virtual money created by CPU cycles
Also, if the mining mechanism is perceived as unfair by too many people, it isn't a problem that will go away when the new BTC are all minted, because the same hash-calculation-for-reward system persists after the "inflationary" period, just with transaction fees replacing new coinage as the reward.
Since it relies on voluntary mass participation by humans, getting the "fairness" balanced just right is a lot harder than getting the crypto right, you might say.
Nate
Posted Nov 11, 2010 15:32 UTC (Thu)
by ballombe (subscriber, #9523)
[Link] (9 responses)
Posted Nov 11, 2010 16:04 UTC (Thu)
by nybble41 (subscriber, #55106)
[Link] (8 responses)
Worse, those who generate the most blocks within a single private network, with their peer connections most likely routed through a single server, will tend to get updated most quickly when new blocks are found. This lets them start work on the new chain sooner, and thus use their CPU time more effectively. Speeding up block generation would tend to give them even more of an edge in that regard.
Posted Nov 19, 2010 22:18 UTC (Fri)
by creighto (guest, #71377)
[Link] (7 responses)
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.
Posted Nov 22, 2010 22:16 UTC (Mon)
by nybble41 (subscriber, #55106)
[Link] (6 responses)
It is the size of the network which protects against "brute force" attacks, not the difficultly of each individual block.
Posted Nov 23, 2010 0:33 UTC (Tue)
by creighto (guest, #71377)
[Link] (5 responses)
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.
Posted Nov 23, 2010 8:21 UTC (Tue)
by nybble41 (subscriber, #55106)
[Link] (4 responses)
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 original 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.
Posted Nov 23, 2010 23:01 UTC (Tue)
by creighto (guest, #71377)
[Link] (3 responses)
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.
Posted Nov 23, 2010 23:22 UTC (Tue)
by creighto (guest, #71377)
[Link]
Posted Nov 24, 2010 3:21 UTC (Wed)
by nybble41 (subscriber, #55106)
[Link] (1 responses)
Posted Nov 24, 2010 20:00 UTC (Wed)
by creighto (guest, #71377)
[Link]
Posted Nov 19, 2010 22:08 UTC (Fri)
by creighto (guest, #71377)
[Link]
The vast majority of users will likely only run a 'lightweight' client, which can verify transactions made sent to itself by downloading only the relevant transactions via the network in real time, keeping only the block headers (80 bytes each) on local storage. The lightweight client neither needs the entire blockchain, nor all of the transactions, in order to function well. Another way to look at is that the blockchain is a massive, distributed ledger of the entire history of the system; and generation is the automatic equivalent of a notary public (or a bank) that substitutes for the trusted third party normally required in everyday credit based transactions. You don't need either a notary or a bank to by a hamburger at McD's with cash, the cashier only needs to look at the paper and judge that it's *very likely* that said paper is actually cash. The same is true with Bitcoin, if someone sends you bitcoins by creating a transaction and sending that to your client, the client can verify that the sender legitimately owned those coins at one time; and usually that is enough (depending on how well you trust the counterparty) but if it isn't then the blockchain will let you know with ever increasing confidence every ten minutes. With each new block, it becomes increasing unlikely that a 'double spend' or other fraud was committed against you as a seller, until that likelyhood crosses the "astronomicly unlikely" point and "matures" in the client. Bitcoins that are not yet mature can still be sent, but the receiver has a lower mathmatical certainty that they will mature for him, and so the client usually sends the most mature coins first. The maturity level of transactions/coins also positively affects the priority system for block inclusion (with regard to free transactions, a volutary fee can be added to a transaction to bump up the priority) , so there is an incentive for users to favor using the most mature coins that they possess.
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles
Bitcoin: Virtual money created by CPU cycles