Author

Topic: Timejacking (Read 283 times)

sr. member
Activity: 467
Merit: 578
August 31, 2019, 08:36:48 AM
#2
Timejacking as you have suggested is a temporary issue which wouldn't have much of an impact on Bitcoin long term. As soon as the attack is finished the operators of the true chain would have already noticed and started rejecting these new blocks. A poison block would be noticeable very early in the network and would be all over the news. Anyone who is accepting Bitcoin including merchants should be keeping up to date with this.

This issue is another that I would put in the same bracket as quantum computing. Its not that big of a concern and would be reverted fairly shortly anyway. It requires a share of the percentage of computing power on the network and therefore if such an attack happened white hats could band together and up their computing power temporarily to counter the attack.
member
Activity: 110
Merit: 131
August 31, 2019, 05:53:53 AM
#1
I'm not going to patronize the members on this forum by going into the basics of how Bitcoin works but I'm sure that a lot of members here aren't quite sure of the possibilities of Bitcoin.  Bitcoin is not a perfect system and does have its faults anyone who is claiming that Bitcoin is a perfect system is in the honeymoon period of Bitcoin. Bitcoin is a revolutionary project which might not be the perfect solution to gaining control back in this world but it is certainly  the cryptocurrency that started the movement and therefore will always have a special place in the hearts of cryptocurrency fans.  

Timejacking in particular is a topic that was discussed ad nauseam in the early days of Bitcoin. The attack is only temporary and it would have to be a highly organized attack to do real damage other than disrupting the network. I'd like to revive the discussion about timejacking and see how the community's opinion on the subject has changed over the years.1 For anyone unfamiliar with the timejacking attack, I'll explain a little below:

Timejacking is a potential vulnerability in the Bitcoin system that was much discussed in the early days of Bitcoin. Timejacking is a vulnerability that exploits Bitcoin's handling of its timestamps. The idea behind timejacking is that an attacker can forge or broadcast a false timestamp of a transaction when connecting to a Bitcoin node allowing an attacker to change the node's network time and trick it into accepting an alternative Blockchain. This means that the attacker can effectively exploit this to do a double spend on the network.

I assume we all know what block rewards are but for those unfamiliar with the term  it's basically how Bitcoin regulates the production of Bitcoin so they don't get mined right away. When generating Bitcoins a timestamp is applied and these are fundamental to the distribution of Bitcoin. The difficulty of mining Bitcoin is directly related to these timestamps and the Bitcoin system automatically adjusts the difficulty of the network based on the timestamps of how long it took to process and mine the last block.

Bitcoin nodes have an internal clock that is responsible for these timestamps and synchronizes the network time to make sure it is the same as other nodes. Timestamps are the foundation of the Blockchain system. If you check your node you will see that it is currently using the system time that is on your machine. But if these timestamps differ from other nodes by about 60 minutes, then the node is not considered trustworthy and it will be removed from the Blockchain. Until the time is accurate and synchronizes it is considered running an alternate chain.

Timejacking is the result of this 60 minutes of play within the system. Timejackers can speed up or even slow down the time of the nodes by connecting as multiple peers and reporting inaccurate timestamps using an edited system time on their machines. Attacking the median time of the network could result in sending double spends. Another approach is to create a block called "Poison Pill" is when you are creating a new block with a timestamp that is 190 minutes ahead of the current time of the blockchains. To do this, they would need some of the network's computing power. Ideally a few percent to make this successful. The current Blockchain nodes would reject the newly created poison block because it is 260 minutes ahead of its own delayed network time, but miners mining to generate new Bitcoins will accept the new block as it is only 120 minutes ahead of their own accelerated network time. This means that the new poison block becomes isolated from the routine transaction processing on the network and as the network processing continues to process new blocks every new block created by the miners appears to be invalid due to the time difference between these new blocks. This means that the new blocks would immediately drop the invalid blocks without checking and verifying the history of the blocks. The attacker could continue to do this until there is an intervention from other Bitcoin node operators. This attack is more of a nuisance than a hack but with a system that relies on network trust it can quickly become a problem and cause panic within the network. AFAIK has not yet seen the poison block attack in the history of Bitcoin, possibly because there is no real benefit to be gained from it, but it is certainly possible and could disrupt the network enormously. As long as the attacker controls a significant portion of the network he can exploit the double-spending problem  which I'll explain later. By having a significant chunk of the network's power they could send transactions on these poison blocks and confirm them within an hour. Using the double spend on the poison blocks would be temporary until the network is stable and the poison blocks are rolled back. But this could be used to trick Bitcoin accepting merchants into accepting a payment that is basically a double spend on these poison blocks.







Jump to: