Difference between revisions of "Bitcoin and Litecoin Comparison"

From Litecoin Wiki
Jump to: navigation, search
m (Total number of coins in existence: restoring more external links)
m (Bug fixes: restoring more external links)
Line 61: Line 61:
  
 
==Bug fixes==
 
==Bug fixes==
* Time warp bug {https://bitcointalk.org/index.php?topic=43692.msg521772#msg521772]: the Bitcoin difficulty calculation is off by one block, so an attacker can repeatedly try to generate the last block of each retarget window, and use a fabricated timestamp of 2 hours into the future in order to make the time difference from the first block in the retarget window high, thus lowering the difficulty by 0.5%. Because of the bug, the bogus timestamp isn't used as the first block in the next retarget window, and therefore the 2 extra hours aren't being compensated for in the next difficulty calculation. Once the difficulty is low, the attacker can mine many fast coins, or in the case of a small chain, an attacker with 51% hash power could reduce the difficulty to 1 and mine a new fork from the genesis block. This isn't a feasible attack on Bitcoin, because the probability of repeatedly generating the last block once every 2 weeks at such high difficulties is negligible. Although fixing this issue in Bitcoin is possible, it should be done carefully (by adding rules that encourage nodes to upgrade over time) so to avoid a chain fork, i.e. old clients who didn't upgrade might operate with another difficulty and therefore disagree regarding which blocks are valid. In Litecoin this bug is fixed. {https://github.com/coblee/litecoin/commit/b1be77210970a6ceb3680412cc3d2f0dd4ca8fb9]
+
* Time warp bug [https://bitcointalk.org/index.php?topic=43692.msg521772#msg521772]: the Bitcoin difficulty calculation is off by one block, so an attacker can repeatedly try to generate the last block of each retarget window, and use a fabricated timestamp of 2 hours into the future in order to make the time difference from the first block in the retarget window high, thus lowering the difficulty by 0.5%. Because of the bug, the bogus timestamp isn't used as the first block in the next retarget window, and therefore the 2 extra hours aren't being compensated for in the next difficulty calculation. Once the difficulty is low, the attacker can mine many fast coins, or in the case of a small chain, an attacker with 51% hash power could reduce the difficulty to 1 and mine a new fork from the genesis block. This isn't a feasible attack on Bitcoin, because the probability of repeatedly generating the last block once every 2 weeks at such high difficulties is negligible. Although fixing this issue in Bitcoin is possible, it should be done carefully (by adding rules that encourage nodes to upgrade over time) so to avoid a chain fork, i.e. old clients who didn't upgrade might operate with another difficulty and therefore disagree regarding which blocks are valid. In Litecoin this bug is fixed. [https://github.com/coblee/litecoin/commit/b1be77210970a6ceb3680412cc3d2f0dd4ca8fb9]
  
 
==Conclusion==
 
==Conclusion==

Revision as of 12:58, 3 May 2013

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox