3 ms·
I see that several suggestions involve using the Bitcoin blockchain to provide a fixed time delay. (Since blocks are given a varying difficulty so that only 'x'
by joosters 12y ago
I see that several suggestions involve using the Bitcoin blockchain to provide a fixed time delay. (Since blocks are given a varying difficulty so that only 'x' coins are produced an hour.)
However, IMO a much more interesting idea is the reverse of this: use time-lock encryption in bitcoin itself. If we can decide upon a non cpu-bound mechanism (and non memory-bound) then suddenly bitcoin can be billions of times more efficient. We wouldn't need thousands of miners constantly hashing the blockchain to solve an arbitrarily complex problem. Instead, the time lock can be used to ensure only 'n' Bitcoin are mined per hour, just like now.
This would save all the wasted CPU time (and considerable power costs) that Bitcoin currently relies upon.
- vog 12y agoYou may want to reread how Bitcoin actually works, especially about transactions and the proof-of-work concept. The "wasted CPU time" is Bitcoin is not about mining, but about signing transactions. Sure, it makes it constantly harder for miners, but it also makes it constantly harder for attackers to insert fake transactions (that could make real transactions appear to have never happened, opening the possibility for all types of fraud). This is what this whole "wasted" CPU power is all about. Increasing the "efficiency" of Bitcoin would destroy this security mechanism, making it almost trivial for attackers to game the system.
- joosters 12y agoNot at all. There is an artificial difficulty added to the hashing and signing to ensure that only a certain amount of bitcoins are mined per hour. The security in the protocol comes from the distributed effort whereby everyone verifies other people's hashing. The difficulty level does not make it more or less secure.
- lmm 12y agoHaving all that hashing going on is what makes the "distributed verification" meaningful. An attacker can compromise the bitcoin network if they comprise 51% of the overall hashrate. So if you lower that hashrate, the network becomes more vulnerable. The ratio of hashrate:"mining reward" is arbitrary, a matter of monetary policy (one reason I believe Dogecoin is a much more viable long-term currency), and we could (if there were a network consensus) adjust it to give people more or fewer bitcoins for the same amount of hashing work. But there's no way to "save all the wasted CPU time (and considerable power costs)". Security relies on the network doing more hashing than any attacker could.
- joosters 12y agoIt still doesn't make it more vulnerable. If the hashing is made more efficient, that doesn't make it simpler for an attacker to grab a bigger % of the total hashing. After all, it's easier for everyone, so everyone can do more. (In fact, if you had a bitcoin system whereby mining didn't use 100% cpu, I'd guess that more people would mine, since you could use miners for other purposes and not be forced to buy a dedicated miner box.) I'm not talking about the mining reward either, that's irrelevant. If the reward for a mining block is 10 bitcoins, and the difficulty level is such that each block will take 5 minutes to mine (n.b. numbers made up, no idea what the current values are), you could drop the difficulty so that a block takes 5 seconds to mine, but are time-locked so that the next block can still only begin to be mined after 5 minutes. End result: Miners race to mine a block, then are sitting idle until the next block time-unlocks. We still have the same problem for the attacker; they still have to take over 51% of the hashrate but as they can't defeat the timelock they have no way to improve their position.
- lmm 12y ago> If the hashing is made more efficient, that doesn't make it simpler for an attacker to grab a bigger % of the total hashing. After all, it's easier for everyone, so everyone can do more. Sure, but "more efficient" doesn't mean anything when the whole point is to burn CPU cycles. If you figured out a clever algorithm to do hashing 2x as fast, that would just mean everyone did 2x as many hashes, burning just as much power as before. > End result: Miners race to mine a block, then are sitting idle until the next block time-unlocks. We still have the same problem for the attacker; they still have to take over 51% of the hashrate but as they can't defeat the timelock they have no way to improve their position. I guess that works, but you're assuming a magical timelock that can be synchronized to the millisecond across the distributed bitcoin network, and can't be sped up by applying more computing power. That kind of timelock seems very implausible; I can't imagine how one would even begin to go about implementing such a thing (given that the whole point of bitcoin is not to rely on any centralized authority).
- joosters 12y ago